くだすれPython(超初心者用) その35 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。 騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。 次スレは >>985 辺りで 前スレ くだすれPython(超初心者用) その34 http://echo.2ch.net/test/read.cgi/tech/1495971255/ VIPQ2_EXTDAT: default:vvvvvv:1000:512:----: EXT was configured 命を賭けてる奴にしたら 5chに変えられたらたまらんよな >>524 すいません ポートを替える方法を教えてください 命が掛かっています よろしくお願いいたします いや匿名の奴に命を預けるなよw 相談できる奴を作っておかなかった自己責任 前から死ぬ死ぬ言ってる奴だろ 会社まだ首になってないんか? 性懲りもなくまた来てんのか 嘘つき野郎に答えてやる義理はない 命をNG登録しよう >>528 >>530 情報ありがとうございます。 単なる参照型ではなくて、、、 なんらか工夫がいるわけですね。 ctypesを設定するとか??? ここをちゃんと解決すると、なんとなく自分のものになる気がする。 自分の理解では、 ・returnを複数使えるからreturnにする ・列挙にする ・オブジェクトのメンバ変数にする といったところです。 手間を考えると、言語的にはreturn推奨なんですね。 ctypesの方は今一つ分かってないのですが、 ctypesによって、参照渡しか値渡しか変わるということでしょうか。 文書読んでると、全然参照渡しじゃないような気もしてきました。 ついでですが、ここに書かれていることは、間違ってるんでしょうか。 それとも、bytearrayのctypeとかによって、挙動が変わるのでしょうか。 >変更可能(Mutable)な型 >list, dict, set, bytearray 等 ttp://amacbee.hatenablog.com/entry/2016/12/07/004510 おかげさまでポート変えなくてもDjangoデーモン複数立ち上がりました 偉そうに抜かす癖にまったく役に立たないアホウ達ですね pythonの基礎文法終えたんだが次何やればいい? ちなみにゲーム作りたい >>538 冒頭は間違ってるよ、>>528 に張ったのが公式ドキュメント和訳のFAQだけど 参照渡し(変数自体への参照を渡す事)それ自体は無いってあるでしょ? すべて参照渡しではなく、全て参照型かつ(インスタンスへの参照を)値渡し 参照渡しと参照型は別問題で、同じ物を指せばインプレースに変更すると影響するのが基本だけど イミュータブルな型の場合は変更を受け付けないか、結果となるインスタンスを別に生成する よく変数は入れ物っていうけど参照型の場合、変数に入るのは実体ではなく(インスタンスへの)参照 実引数は値渡しだし、“仮引数自体への代入”は仮引数の中身(インスタンス参照先)が変わるだけ それらを踏まえるとFAQのような答えになる、1.結果のタプルを返すか、3〜5は実質的に同じ手法だね そうなんですか、了解です。 間違いを書いてるサイト困りますよね。 pythonの基礎を一通り勉強したので自分で少しアレンジしてコード書いてみたんですがさっぱり動きませんどこが悪いんでしょうか 文字列と数字が混じったyomikomiテキストからデータを読み込んで倍数ごとに分けるプログラムがつくりたんですが、、、 https://ideone.com/5c8QUt 頭なら良いじゃん。俺は顔だよ? 頭よくても何の意味も無いっつうの。 >>546 思いつくままに ・continueの字下げは直前のprintと同じ段で良いはず ・forの内側に関数定義のあるコードって初めて見たんだが、何のテクニックだろ >>526-528 ポインタの無い言語は、Java, C# と、 軽量言語の、Python, Ruby, JavaScript なども、すべて参照渡し 値渡し、つまりコピーするのは、C/C++ だけ そして、ポインタの無い言語は、コピーすると、 Shallow Copy になり、参照だけがコピーされて、 実体はコピーされず、共有される 参照先の実体までコピーしたいのなら、Deep Copy linux機でインストールできたけど? 環境とエラーログ無いとpyOpenSSLの件について答えれれ無い。 sudo pip3 install pyOpenSSL [sudo] のパスワード: Collecting pyOpenSSL pyOpenSSL Found existing installation: idna 2.0 Uninstalling idna-2.0: Successfully uninstalled idna-2.0 Running setup.py install for pycparser ... done Found existing installation: cryptography 1.2.3 Uninstalling cryptography-1.2.3: Successfully uninstalled cryptography-1.2.3 Successfully installed asn1crypto-0.23.0 cffi-1.11.1 cryptography-2.0.3 idna-2.6 pyOpenSSL-17.3.0 pycparser-2.18 CentOS 7 とかは、 gcc python-devel openssl-devel libffi-devel が必要 >>554 お前アフォか? レンタルサーバーではsudoすら使えないんだけど? ウンコ野郎 >>553 参照の値渡しを参照渡しとは呼ばない、参照渡しの“参照”は“変数に対する参照”で“実体に対する参照”ではない 隠蔽されている実装の話をするのは憚られるが、CPythonならPyObject*で変数ポインタではなくオブジェクトポインタ Javaのプリミティブ型とC#の構造体は値型だし、C#はポインタが基本隠蔽されていても参照渡しは参照渡しで別にある >>554 自分の環境では問題ないけど? ってのたまう空気読めない先輩みたいなウンコ外道だな >>551 関数定義いらないですね、、、 とりあえず関数の定義は削除してcontinueもいらなさそうなので消してみました txtファイルから読み込んだ場合数値も文字列も全て文字列として読み込まれるらしくisdigit関数が使えなくて 数値と文字列の分離ができなくなって詰んでます https://ideone.com/eahZjr >>555 centos7では俺も試してるんだよ、ボンクラ お前の環境でインストール出来たのがそんなに嬉しいんかい、ウンコ >>559 エラーメッセージ読もうよ ファイルが見つからないって書いてあるよ 俺のはlinux mint18.2 Windows 10 x86_64 2chに5年も居る。真性の基地外に相手に余裕が無いんか(笑) 鳥取県の人間はケチが多いって言われてるけど、 実際にその通りだな。 命が掛かってるのに数千円の有料プランにグレードアップしないんだから(失笑) Docker Hub で、pyOpenSSL で検索すれば? 誰かが、アップしているかも >>563 >2chに5年も居る。真性の基地外に相手に余裕が無いんか(笑) 日本語不自由そうだな、可哀想に >>559 自分で、オリジナルのテキストファイルの形式を作るか、または、 JSON, XML, CSV/TSV などの汎用的な形式を使う >>559 ファイル名は変えて有る。 必要ならファイルを閉じる前に別のファイルに出力したり編集して。 https://ideone.com/eEPGp6 >>568 ありがとうございます! 勉強させてもらいます! Django + wsgi 複数プロジェクト扱いたい場合 Unix 系なら ":"、Windows なら ";" で複数設定できます 例) WSGIPythonPath /path/to/foo;/path/to/bar (Windows の場合) ファイルの読み込みで入力レコードセパレーターを変更したい場合はどのようにすれば良いですか? perlで言うところの$/を変更したいです やりたい事は改行2つ連続してるところを1行として読み込みたいです。 'a\nb\n\nc\nd'だとしたら'a\nb\nc\nd'にしたいということ? こう感じの? 配列 0 ['0123456789', '\n'] 1 ['\n'] 2 ['0123456789', '\n'] 3 ['\n'] 4 ['\n'] 5 ['0123456789', '\n'] 6 ['\n'] 7 ['\n'] 8 ['0123456789', '\n'] 単体の\nだけ削除? >>577 割と、こう言うの欲しかった。 ありがとう。 ニートだし過去すれ行って宝探しでもしてくるか(笑) やっぱり、 テキストデータの形式が分からないと答えれらないと思う。 勘違いしてたかも?。 「レコード」 ”テーブル”と”カラム”が、データが保管される場所のことを表していた語に対して、”レコード”はデータそのもののことを指す言葉 セパレータ (separator)とは データを項目ごとに区切る際の「区切り文字」のこと。 MySqlとか? オリジナルのテキストファイルを作っちゃた上で、 後で編集するのに困ったとか言う落ちだと思ってた。 暇してるんで、問題が有ったら下さいな! 解決はできないと、思いまーすww Windows版Python3.3以降の標準venvによる仮想環境について activate、deactivateによる環境切り替え方法は理解したのだけど 仮想環境での作業が終わり、そのウインドウをもう使わないのであれば deactivateの実行を省略してコマンドウィンドウを閉じてよいという理解でOK? 今はdeactivateを実行してから閉じているのだけど、地味に面倒なので >>587 ありがとうスッキリした 環境変数をいじると聞いていたので怖くてね おすすめの開発環境教えてください Jupyterもいいけどforループ中に変数の値確認とかしにくくて。。 jupyterを使ってるからにはjupyterでできるようなこともしたいんだと察するが そんなことができる開発環境は他にないぞ それでもいいのか? MySQLdbでちょっと重めのクエリ投げると たまに接続が切れて読み込み状態のままフリーズしてる… 原因ってなんですか? >>589 PyCharmがjupyterも扱えるようになったと聞いた。自分で試してみたことはないけど Pro版じゃないとだめだったかも >>592 「ちょっと重め」ではなくとんでもなく重くて、まだクエリが帰って来てないのでは? コードから実行するSQLをMySQLのコマンドラインで実行してみて、実用的な時間内で返ってくるか試してみたら? 2次方程式の解を求めるプログラムを作りたいんですが何が違うのでしょう? def kai (A,B,C): kai1 = (-B + (B**2 - 4*A*C) ** 0.5 ) / (2*A) kai2 = (-B - (B**2 - 4*A*C) ** 0.5 ) / (2*A) str(kai1) str(kai2) return kai1 , kai2 print("ax^2+bx+c") a = input("aの値を入力してください") b = input("bの値を入力してください") c = input("cの値を入力してください") float(a) float(b) float(c) kai(a,b,c) print("答えは" + kai1 + "と" + kai2 + "です" ) return str(kai1), str(kai2) 何が違うんですかね? def kai1(A,B,C): kai1 = (-B + (B**2 - 4*A*C) ** 0.5 ) / (2*A) return str(kai1) def kai2(A,B,C): kai2 = (-B + (B**2 - 4*A*C) ** 0.5 ) / (2*A) return str(kai2) print("ax^2+bx+c") a = input("aの値を入力してください") b = input("bの値を入力してください") c = input("cの値を入力してください") float(a) float(b) float(c) x1 = kai1(a,b,c) x2 = kai2(a,b,c) print("答えは" + x1 + "と" + x2 + "です" ) 小学生じゃないんならもう少し頭使え kai1, kai2 = kai(float(a), float(b), float(c)) >>601 根本的なところがちょいちょいおかしい。 float(a) float(b) float(c) の後に、 print (type(a)) print (type(float(a))) っていれてみな。 解決しました def kai1(A,B,C): kai1 = (-B + (B**2 - 4*A*C) ** 0.5 ) / (2*A) return str(kai1) def kai2(A,B,C): kai2 = (-B + (B**2 - 4*A*C) ** 0.5 ) / (2*A) return str(kai2) print("ax^2+bx+c") a = float(input("aの値を入力してください")) b = float(input("bの値を入力してください")) c = float(input("cの値を入力してください")) x1 = kai1(a,b,c) x2 = kai2(a,b,c) print("答えは" + str(x1) + "と" + str(x2) + "です" ) すみません、環境の話になりますが、お教えいただけないでしょうか。 Windows 10 64bitのPCにAnaconda3を用いてpythonを インストールしました。 参考にしている本が、Cドライブ直下にインストールを勧めていたので、 それに従いました。 idleを立ち上げて、pythonを実行しています(これも本の勧めです。)。 pythonシェルから .pyのファイルを実行しようとすると、 コマンドプロンプトの画面全体に Fail to open folder shield registry for query !! のメッセージ?(アラート?)がたくさん出ます。 これは何が悪いのでしょうか。 pyファイルは一応開くことができて、実行及び結果も大丈夫です。 PCがぶっ壊れるのかもしれないと思うと不安です。 どうぞご教示いただけますようお願いいたします。 venvとcondaの仮想環境はどう使い分ければいいんでしょうか? >>607 venvはディレクトリ指定して環境作れるから プロジェクトのあるディレクトリに作って 移動して activateすれば使えるし作っているプロジェクト専用の環境としてべんり condaはどこのディレクトリからでも環境の切り替えが楽使いまわせる環境 >>606 「Fail to open folder shield registry for query」で検索! このエラーメッセージは、正しいのか? 検索で、全くヒットしないのだが 何のアプリのエラーメッセージだ? >>609 そうなんです。 検索しても全く出て来ないんです。 メッセージは、きちんとよく確かめた上で転記しましたので、間違いないです。 >>609 何のアプリかは、自分がPCに詳しくないので、正確にはわかりません。 繰り返しになりますが、idleからpyファイルを指定実行しようとすると、コマンドプロンプトの画面が、このメッセージで埋まるほどいっぱいになります。 >>610 https://support.microsoft.com/ja-jp マイクロソフトのサポートページで検索するといくつかヒットするぜ ただし英語で出てくるから俺はお手上げ わからんけど、 「windows10 folder shield registry」で検索すると、 「Device Guard」「デバイスガード」がサジェストされるから、これで検索してみれば? >>606 必要ないなら取り合えずAnacondaじゃなくて素のPython入れてみるのはどうですかね。NumpyとかScipyあたりは後からでも入れられるし。 どうしてもAnacondaだけにしかないこの機能が必要とかなら知らんけど。 あと、ググるなら本の名前といっしょにググってみた方が精度は高くなる それででないなら、何かを間違っているか、おま環の可能性高い >>610 転記ってコピペじゃなくて? 開こうとしてるpyファイルの中身も気になる https://ideone.com/ とかに貼るといい なんかこの本をここで紹介しろと言われてる声が聴こえた気がした http://www.amazon.co.jp/dp/4774192236 ステマではありませぬ >>606 「デバイスガード 署名 アプリ 実行」 あたりでぐぐるんだ マックのルートレスみたいなもんだな Python2.7、Pyinstaller3.3にて pyinstaller --onefile 8tousin.py -i 8.ico --noconsole とやって 8tousin.exeを作ると subprocess.PopenのところでWindowsErrorしてしまいます。 (同じフォルダにがっつりおいてある1san.exeが見つからないとな) さいごの--noconsoleを消してexeを作るとちゃんと動くのですが、 Dos窓がでたまんまになりキモイのでなんとかしたいです。 どなたか良い知恵をお貸し下さい。。。 ----8tousin.py---- startupinfo = subprocess.STARTUPINFO() startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW startupinfo.wShowWindow = subprocess.SW_HIDE dpath = os.path.dirname(sys.argv[0]) epath = os.path.join(dpath,'1san.exe') command_line =(epath + ' aishiteru yo') self.qu = Queue() self.pb = subprocess.Popen( command_line, startupinfo=startupinfo, cwd='./', stdout=subprocess.PIPE, stderr=None, shell=True) self.t = Thread( target=enqueue_output, args=(self.pb.stdout, self.qu)) self.t.daemon = True self.t.start() ----EOF---- >>620 つかってないです うごくexeができる pyinstaller --onefile 8tousin.py -i 8.ico 1さんがみつからない pyinstaller --onefile 8tousin.py -i 8.ico -w ってことです ちなみに1さんは kimoiyo- uwaaan を1秒毎に交互に出力し続けるようなプログラムです。 >>622 貴重なヒントありがとうございます! なるほど Dos窓なし仕様でpyinstallerするなら みえないウインドウをどこかになんとかしてつくらないと 1さんが親なしさんになっちゃうわけですね shell=True これ False だったら? 環境が詳しく書いて無くてごめんなさいでした Python2.7.13/2.7.14(どっちでも), Pyinstaller3.3, Windows7/10(どっちでも)32bit >>624 Falseにしてみても8頭身は1さんをみつけられませんでした。 cwdをdpathにしてみても、だめでした >>622 stdout=win32console.GetStdHandle(win32console.STD_OUTPUT_HANDLE) とかすればいいんでしょうか... Linux なら、端末から起動したプロセスは、端末の子プロセスになるから、 端末を終了すると、その子プロセスもすべて強制終了させられる ジョブグループ・プロセスグループとか、プロセスには親子関係がある pstree とかで見てみ >>626 Windowsなのでございます すみません 試しにtasklistでみてみましたが、 タスクマネージャーみたいなもんですねとしかわかりませんでした>< 詰まってるのはself.pb = subprocess.Popen(ほげほげほげ)の行で間違いないので stdout=subprocess.PIPE ってなってるのを なんか適切なところへつなげばよさそうであります。 みなさんありがとうございます。 もうしばらくおつきあいください。。。 >>622 stdout=win32console.GetStdHandle(win32console.STD_OUTPUT_HANDLE) とやっても詰まって動きませんでした。。。 stdout=sys.stdout とか open('./temp','w') とか cStringIO.StringIO()とか os.pipe()でも動かず、 stdout=None とか subprocess.DEVNULLとか stdout にしたら動いたものの、 1さんの声(キモイヨーとウワーン)をとってこれませんです。 (stdoutの内容がブラックホールに吸い込まれてる感… なんかウマーイ出力先をご存じの方、 あるいは迂回する方法をご存じの方、 いらっしゃいましたら宜しくご教示お願い致します。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる