- 1 名前:デフォルトの名無しさん [2019/07/24(水) 21:02:48.30 ID:d1IM+Tl+.net]
- 当スレに★Python以外のプログラミング言語での回答類を書くべからず★
☆「Ruby では」「Rubyでは」をNGワード登録推奨 このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 ★Pythonのソースコードはそのまま5ちゃんにコピペするとインデントが崩れるので ↓等のてきとうなソースコード用うpろだに貼ってきてください。 ttp://ideone.com/ デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ttps://jupyter.org/try (旧try.jupyter.org)ちょっとめんどうそう ◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と 実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。 ◇Python公式サイト◇ www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/ 〇前スレ〇 くだすれPython(超初心者用) その43【Ruby禁止】 mevius.5ch.net/test/read.cgi/tech/1555397061/
- 962 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 21:49:00.46 ID:mUvVkZQa.net]
- 普通に関数にして呼び出したらよくね?
てか例だとサブプロセスにする意味が分からないんだけど その順に処理したいなら関数呼ぶべきだろjk
- 963 名前: mailto:sage [2019/10/13(Sun) 21:54:47 ID:kaSZg9r2.net]
- >>944
同じこと思ったw 関数にするまでもなく a.py を print("a") import b print("c") と書けばいいんじゃなかろうか
- 964 名前: mailto:sage [2019/10/13(Sun) 22:01:03 ID:2cfG7zlA.net]
- なんか計り知れない思惑でもあるんちゃうか
- 965 名前: mailto:sage [2019/10/13(Sun) 22:13:04 ID:D2+OyZ4Y.net]
- 特に深い意味はなく最近知ったsubprocessを試してみたかっただけだろ
- 966 名前:う []
- [ここ壊れてます]
- 967 名前: mailto:sage [2019/10/13(Sun) 22:29:53 ID:T+KUU83v.net]
- 皆様ありがとうございます
>>945様の通りにしたら普通にいけました 用途的にもどう考えてもsubprocessでやるべきではなかったです ありがとうございました
- 968 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 22:52:27.29 ID:QvtX88Gt.net]
- >>943
print('a', flush=True) にしたらリダイレクトしても期待通りの順番になった
- 969 名前:デフォルトの名無しさん [2019/10/14(Mon) 07:57:39 ID:mfuSBJ/S.net]
- 兄さん、catもバッファリングあるで。
- 970 名前: mailto:sage [2019/10/14(Mon) 12:19:48 ID:MWArLfdG.net]
- 最近のGNUのcatはバファリングしないみたいだよ
-uオプション(バファリングを無効にする)は残ってるけど無視される macとかは知らん
- 971 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 00:14:25.01 ID:Bai05OKm.net]
- VSCodeでpython書いてます
フォーマッタにautopep8を入れてます 関数宣言などの上に2行空白行を入れてくるのをやめさせたいのですが 何を設定すれば良いでしょうか 例として、 # say hello def say_hello(): print("hello.") これをフォーマットすると # say hello def say_hello(): print("hello.") となってしまいます 宣言と、その上のコメント行との間には改行を挟みたくありません
- 972 名前:デフォルトの名無しさん [2019/10/15(Tue) 00:26:09 ID:Uk3+p6qz.net]
- def say_hello():
'''say hello''' print("hello.")
- 973 名前: mailto:sage [2019/10/15(Tue) 00:28:00 ID:6JoAHvL2.net]
- >>952
関数に対するコメントはdefの下にdocstringで書く まずはPEP8を一読して
- 974 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 01:00:53.51 ID:Bai05OKm.net]
- >>953-954
ありがとうございます ドキュメントストリング(トリプルクォート)の件はちらっと調べたりはしてました 後出してすみませんが、blender用のpyファイルをVSCodeで書いており 既存の公式アドオンファイルなどの中身を見ると だいたいが951の通り、宣言文の上に行コメントが入っている感じなので それに合わせたいのです(ならautopep8使うなよってツッコミはご遠慮ください) 例えばimport文の記述位置の修正(ファイルの先頭に持っていかれる)を無視する為に --ignore=E402 を指定しています このように特定コードを指定することで改行の件も無視できないかなと思ったのですが autopep8 宣言前 改行 などでググっても思うように情報が出てきません
- 975 名前:デフォルトの名無しさん [2019/10/15(Tue) 01:07:21 ID:Uk3+p6qz.net]
- blenderのサンプルのことは忘れろω
あれは糞だωωω (blenderが糞とは言ってない)
- 976 名前: mailto:sage [2019/10/15(Tue) 01:17:19 ID:6JoAHvL2.net]
- >>955
俺ならautopepをやめるw uncrustifyでpep8用持ってきて自分好みの設定をした方が早そう
- 977 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 01:23:54.81 ID:NeqDSxDF.net]
- flake8でチェックして、必要に応じて自分で修正してるわ
勝手に変更されるのが嫌なので
- 978 名前: mailto:sage [2019/10/15(Tue) 01:38:14 ID:72mqelru.net]
- 保存時フォーマット+手動フォーマット派だな
理由はこういう時こまるから 道具に遊ばれてるのほどばかばかしいこともない
- 979 名前: mailto:sage [2019/10/15(Tue) 11:35:47 ID:ntxaWRsX.net]
- PEP8に従えないならpythonを辞めた方がいい
君には宗教は向いてない もっと別の言語を探すべきだ
- 980 名前: mailto:sage [2019/10/15(Tue) 12:06:17 ID:YTs2ZIZB.net]
- PEP8順守しないと
同じことするコードは 誰でも同じようなコードになり読みやすい(はず) といううりにしているメリットが壊れる
- 981 名前:デフォルトの名無しさん [2019/10/15(Tue) 12:28:19 ID:/7eSP3bX.net]
- 「Pythonで書くと同じことするコードは誰でも同じようなコードになり読みやすい」
このカンバンは嘘だった! 特定のコーディングルールを守れば、という条件を付けるのであればどんな言語でも同じじゃんwww
- 982 名前: mailto:sage [2019/10/15(Tue) 12:33:26 ID:PCFM8zGG.net]
- キ
- 983 名前:bズは自殺してろ []
- [ここ壊れてます]
- 984 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 12:45:38.61 ID:iZY+JTOL.net]
- dストの位置でコードの読みやすさなんてノミのクソほどしか変わらんだろ甘えるな
- 985 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 12:57:41.28 ID:LXkkA+L3.net]
- >>962 python のコーディング規約がPEP なんだからか守るべきだよ。
- 986 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 13:04:44.56 ID:LXkkA+L3.net]
- 3.8 がリリースされたな。
:=というオペレータが導入され、<変数> := <式>の形で変数への代入を式に埋め込むことができます。この表記をnamed expression(名前付き式)と呼ぶようです。 例 length = len(s) if length > 3: print(length) else: print('too short') これは これはこのように書けます。 if (length := len(s)) > 3: print(length) else: print('too short') 余談 := はセイウチ演算子 walrus operator と言うらしいな。両目と牙の形に似てるからだと
- 987 名前:デフォルトの名無しさん [2019/10/15(火) 14:24:13.16 ID:nuB7xRPW.net]
- じゃあせめて :3= くらいやってくれないと。
- 988 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 14:43:12.22 ID:iJLx9DXs.net]
- それじゃあエルビスにひげがついたようなもんだろ
- 989 名前: mailto:sage [2019/10/15(Tue) 15:08:50 ID:ntxaWRsX.net]
- パスカル代入子でいいんじゃねえの
- 990 名前: mailto:sage [2019/10/15(Tue) 15:42:32 ID:4VeqxDxA.net]
- >>967
バカボンのパパ演算子
- 991 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 15:45:01.35 ID:PY4hsy3Z.net]
- :)
- 992 名前: mailto:sage [2019/10/15(Tue) 15:50:21 ID:7esu9lml.net]
- execとevalの違いが良くわからないんですが、どっちが優秀なんですか?
- 993 名前: mailto:sage [2019/10/15(Tue) 15:58:02 ID:ntxaWRsX.net]
- ttps://sicp.comp.nus.edu.sg/chapters/img_javascript/sicp.png
このオサンが持ってる通り
- 994 名前:デフォルトの名無しさん [2019/10/15(火) 16:02:48.63 ID:cAxXsgrc.net]
- そんなにevalなよ
弱くなるぞ
- 995 名前:デフォルトの名無しさん [2019/10/15(Tue) 19:40:19 ID:UuW7b2Cm.net]
- blender の python バージョン上がらんかな
ソースからビルドすれば好きなバージョンに出来るらしいが まんどくせ
- 996 名前: mailto:sage [2019/10/15(Tue) 21:27:29 ID:Bai05OKm.net]
- >>956-959
とりあえずignore設定で対処してしまいました 今後他にも煩わしい点が出てきて面倒になったらautopepは辞めて他の手段を探します uncrustifyはメモっておきます ありがとうございました
- 997 名前: mailto:sage [2019/10/15(Tue) 23:13:36 ID:h8wIShZn.net]
- そこまでして間違ってる方のテンプレに合わせないと気が済まないとか病気だろ
なんとか障害ってやつ
- 998 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 23:57:18.52 ID:LXkkA+L3.net]
- >>976 そこまでしてblender のコメント方式に合わせる必要性があるの?
Python の関数のコメントなら docstring を使うべきだろ。 help(関数名) でdocstring が出るし、Vscode でもサポートしてるし(autoDocstring)。 https://qiita.com/firedfly/items/00c34018581c6cec9b84
- 999 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 03:15:06.56 ID:Ia5ZcaaY.net]
- 他の言語ではスクリプトの上の部分にforなど使って処理を書いていました。
そして、下の方にサブルーチンを大量に作ってそこから適宜読み出していました。 このようにすると、上部を修正するだけでスクリプトが簡単に編集できるためです Pythonだとサブルーチンを上部に書くとエラーが出ますが毎回ホイールで下に移動して書き直すのは不便ではないでしょうか? 慣れれば普通ですか? また、Pythonではインデントに空白を使う人が多いようですが、 エディタの設定で改善されるかもしれませんが、うっかりDelやBackSpaceで消すとイ ンデントがずれたりして嫌なのですが慣れますか?
- 1000 名前: mailto:sage [2019/10/16(Wed) 06:59:57 ID:r4KKfSye.net]
- 別にpythonに限らずネストの深さでインデント揃える癖ついてたから気にならなかったわ
可読性的にも癖つけた方がいんでない?むしろ今までどうしてたのか気になる
- 1001 名前:デフォルトの名無しさん [2019/10/16(水) 07:17:18.25 ID:n7nWPnDS.net]
- python 3.8.0 で import win32clipboard を実行しても、以下のようなエラーが出る。
ImportError: DLL load failed while importing win32clipboard: 指定されたモジュールが見つかりません。 python 3.8系はしばらくインストールしないほうがいいカモ。
- 1002 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 08:59:50.72 ID:Mi1dGaVf.net]
- >>979 > Pythonだとサブルーチンを上部に書くとエラーが出ますが
def で宣言する関数の事を言ってるんだよね? エラーなんて出ないけど。 関数呼び出しを先に書くとと言う話? インデントについてはIDE で面倒みてくれるだろ。何を使ってる? 下の方に関数呼び出しがあっても何ら不都合はないよ。
- 1003 名前: mailto:sage [2019/10/16(Wed) 10:15:15 ID:dCHq3Ix4.net]
- >>979
WindowsならCtrl+F MacならCommand+Fで 検索ウインドウが出るから いちいちホイールコロコロしなくても 行きたいサブルーチン名さえわかってれば 一気に移動できる >インデントに空白 どーしても宗教的理由とかでお嫌なら タブで統一してもいい。 ただし、 どーしても長い行を分割して書かざるを得ない場合の 後半行のインデントにも 空白ではなく、タブを使うことになる。
- 1004 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:17:42.14 ID:dCHq3Ix4.net]
- くだすれPython(超初心者用) その45【Ruby禁止】
mevius.5ch.net/test/read.cgi/tech/1571188632/
- 1005 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 10:27:55.66 ID:kX3OMluf.net]
- いちいちスクロールして使ってるな〜
今ちゃんと動いてるから触りたくないけど関数だけ別ファイルに分けれるんだよね?
- 1006 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:28:50.95 ID:dCHq3Ix4.net]
- >>985
>関数だけ別ファイルに分けれるんだよね? Yes
- 1007 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 10:39:45.65 ID:pCAY8ipP.net]
- 関数へのジャンプだってIDEが面倒見てくれるだろ
ジャンプどころかその場に表示だってできる
- 1008 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:43:28.41 ID:dCHq3Ix4.net]
- IDEが嫌いだったり、宗教上の理由で使えないだったり
PCのスペックが糞でうごかなかったり するひとだって いるんですよー!
- 1009 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 10:53:52.75 ID:pCAY8ipP.net]
- IDEの導入ってそんなにハードル高いんか
そいつは知らなんだわ
- 1010 名前: mailto:sage [2019/10/16(Wed) 11:29:28 ID:1/rjcmpT.net]
- IDEを使わないってどっちかと言うと宗教だろ。 プログラミングの効率がかなり違って来る。
どうしても複雑なIDEを使いたくなければ Sublime などのエディターでもかなりやってくれるけど。 そもそも今までプログラミングはどうしてたんだよ。 テキストエディタのみ? IDEを使わないと、コード補完とかやってくれないから入力効率がかなり悪くなる。 ミスも多くなる。
- 1011 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 11:38:20.65 ID:RHZrzUKd.net]
- え?ノミみたいな視野の見識してるね
IDEじゃないと補完できないだって 傑作すぎてジョークと区別がつかないわ 1990年くらいから書き込んでるんだろうかね
- 1012 名前:デフォルトの名無しさん [2019/10/16(水) 12:48:15.93 ID:dmmazo8P.net]
- E.S.P.だが
上の方でサブルーチンがーとか言ってるVBerは ソースの上からグローバルな場所にコード書き始めてるんだろ hoge.py -------- コード コード 関数 関数 -------- どうみても馬鹿だが どうしてもこんな書き方を望むなら main関数とか作って hoge.py -------- def main(): コード コード 関数 関数 main() -------- って書いとけばいい
- 1013 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 12:54:49.05 ID:1/rjcmpT.net]
- >>991 IDE以外のなにができるって? 例えば?
IDE例えば Jupytor Notebook の例 1) import numpy as np np.su で subtruct とsum が選択できる? np.sum() でこんなの出る? できなくても構わないが Signature: np.sum( ['a', 'axis=None', 'dtype=None', 'out=None', 'keepdims=<no value>', 'initial=<no value>'], 2) pr でprint選択できる? print() でこんなの出る? できなくても構わないが Docstring: print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments:
- 1014 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 14:36:40.14 ID:bcBxjAM2.net]
- エディタでもIDEでも関数を別ファイルに書いて
二つのウインドウで表示しながらプログラミングすれば いいんじゃないの? 太古の昔からみんなそうやっているけど。 もちろん三つ以上のウインドウを開けてもかまわない。
- 1015 名前:980 [2019/10/16(水) 15:22:00.21 ID:6vD3SXWz.net]
- C:\Windows\System32にdllをコピーして暫定対応できるようです。
以下issueの既知の不具合かも。 https://github.com/mhammond/pywin32/issues/1406
- 1016 名前:デフォルトの名無しさん [2019/10/16(水) 15:36:59.61 ID:3Ceb6FWi.net]
- >>993
IDEじゃないJupyter Notebookでもそのぐらい出来るぞ、と思ってスクリーンショットを撮ってたところだったんだが、 Jupyter NotebookはIDEでこういうことが出来るという主張かな。 でも、Jupyter NotebookはあんまりIDEって言わなくないか?
- 1017 名前: mailto:age [2019/10/16(Wed) 16:54:17 ID:dCHq3Ix4.net]
- >>989
HDDの空き容量の時点でね もうね >>990 >今までプログラミングはどうしてたんだよ。 テキストエディタのみ? Yes!(゚Д゚)
- 1018 名前: mailto:sage [2019/10/16(Wed) 17:06:12 ID:kX3OMluf.net]
- 関数探すの面倒でメモ帳に保存してそっちで編集してコピペでVSCodeに貼ってたけどちゃんとした使い方調べた方がいいな
- 1019 名前: mailto:sage [2019/10/16(Wed) 17:13:58 ID:lWzU93N+.net]
- vim, emacs だとhotelのwindowsでも走るようにUSBメモリーに開発環境入っちゃう
なんてこともできたりはする
- 1020 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 17:25:14.05 ID:bKQy1ZjZ.net]
- >>996 Notebook は、完全なIDE では無いがIDEの最低限は持ってる。(コード補完)
Notebook とnbextentions が使えれば、iPhone でも同じことができるし。 長々としたものは閉じたり、開いたりできるし。 Jupytor からはVS Code も起動できるし、まあ手頃でいいんじゃない? 大規模なプログラム開発には無理だが、練習用としては使いやすいのでは? そもそもの話の発端は、インデントが面倒とか、スクロールが面倒とかと言う話だったから、この程度で十分では。 >>997 テキストエディタだけでどんな言語をやってたの?
- 1021 名前: mailto:sage [2019/10/16(Wed) 17:27:32 ID:9ut2IWOv.net]
- >>997
HDDの容量は? VScode本体で230Mぐらいだよ。(mac用) Pycharmだと610Mほどあるけど。
- 1022 名前:1001 [Over 1000 Thread .net]
- このスレッドは1000を超えました。
新しいスレッドを立ててください。 life time: 83日 20時間 24分 44秒
- 1023 名前:過去ログ ★ [[過去ログ]]
- ■ このスレッドは過去ログ倉庫に格納されています
|

|