X



くだすれPython(超初心者用) その44【Ruby禁止】
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
垢版 |
2019/07/24(水) 21:02:48.30ID:d1IM+Tl+
当スレに★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公式サイト◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/

〇前スレ〇
くだすれPython(超初心者用) その43【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1555397061/
0952デフォルトの名無しさん
垢版 |
2019/10/15(火) 00:26:09.89ID:Uk3+p6qz
def say_hello():
 '''say hello'''
 print("hello.")
0954デフォルトの名無しさん
垢版 |
2019/10/15(火) 01:00:53.51ID:Bai05OKm
>>952-953
ありがとうございます
ドキュメントストリング(トリプルクォート)の件はちらっと調べたりはしてました

後出してすみませんが、blender用のpyファイルをVSCodeで書いており
既存の公式アドオンファイルなどの中身を見ると
だいたいが951の通り、宣言文の上に行コメントが入っている感じなので
それに合わせたいのです(ならautopep8使うなよってツッコミはご遠慮ください)

例えばimport文の記述位置の修正(ファイルの先頭に持っていかれる)を無視する為に
--ignore=E402 を指定しています
このように特定コードを指定することで改行の件も無視できないかなと思ったのですが
autopep8 宣言前 改行 などでググっても思うように情報が出てきません
0955デフォルトの名無しさん
垢版 |
2019/10/15(火) 01:07:21.98ID:Uk3+p6qz
blenderのサンプルのことは忘れろω
あれは糞だωωω

(blenderが糞とは言ってない)
0957デフォルトの名無しさん
垢版 |
2019/10/15(火) 01:23:54.81ID:NeqDSxDF
flake8でチェックして、必要に応じて自分で修正してるわ
勝手に変更されるのが嫌なので
0958デフォルトの名無しさん
垢版 |
2019/10/15(火) 01:38:14.63ID:72mqelru
保存時フォーマット+手動フォーマット派だな
理由はこういう時こまるから
道具に遊ばれてるのほどばかばかしいこともない
0959デフォルトの名無しさん
垢版 |
2019/10/15(火) 11:35:47.48ID:ntxaWRsX
PEP8に従えないならpythonを辞めた方がいい
君には宗教は向いてない
もっと別の言語を探すべきだ
0960デフォルトの名無しさん
垢版 |
2019/10/15(火) 12:06:17.46ID:YTs2ZIZB
PEP8順守しないと
同じことするコードは
誰でも同じようなコードになり読みやすい(はず)
といううりにしているメリットが壊れる
0961デフォルトの名無しさん
垢版 |
2019/10/15(火) 12:28:19.23ID:/7eSP3bX
「Pythonで書くと同じことするコードは誰でも同じようなコードになり読みやすい」
このカンバンは嘘だった!
特定のコーディングルールを守れば、という条件を付けるのであればどんな言語でも同じじゃんwww
0963デフォルトの名無しさん
垢版 |
2019/10/15(火) 12:45:38.61ID:iZY+JTOL
dストの位置でコードの読みやすさなんてノミのクソほどしか変わらんだろ甘えるな
0965デフォルトの名無しさん
垢版 |
2019/10/15(火) 13:04:44.56ID:LXkkA+L3
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
と言うらしいな。両目と牙の形に似てるからだと
0966デフォルトの名無しさん
垢版 |
2019/10/15(火) 14:24:13.16ID:nuB7xRPW
じゃあせめて :3= くらいやってくれないと。
0973デフォルトの名無しさん
垢版 |
2019/10/15(火) 16:02:48.63ID:cAxXsgrc
そんなにevalなよ
弱くなるぞ
0974デフォルトの名無しさん
垢版 |
2019/10/15(火) 19:40:19.04ID:UuW7b2Cm
blender の python バージョン上がらんかな
ソースからビルドすれば好きなバージョンに出来るらしいが
まんどくせ
0975デフォルトの名無しさん
垢版 |
2019/10/15(火) 21:27:29.85ID:Bai05OKm
>>955-958
とりあえずignore設定で対処してしまいました

今後他にも煩わしい点が出てきて面倒になったらautopepは辞めて他の手段を探します
uncrustifyはメモっておきます
ありがとうございました
0976デフォルトの名無しさん
垢版 |
2019/10/15(火) 23:13:36.56ID:h8wIShZn
そこまでして間違ってる方のテンプレに合わせないと気が済まないとか病気だろ
なんとか障害ってやつ
0978デフォルトの名無しさん
垢版 |
2019/10/16(水) 03:15:06.56ID:Ia5ZcaaY
他の言語ではスクリプトの上の部分にforなど使って処理を書いていました。
そして、下の方にサブルーチンを大量に作ってそこから適宜読み出していました。
このようにすると、上部を修正するだけでスクリプトが簡単に編集できるためです
Pythonだとサブルーチンを上部に書くとエラーが出ますが毎回ホイールで下に移動して書き直すのは不便ではないでしょうか?
慣れれば普通ですか?

また、Pythonではインデントに空白を使う人が多いようですが、
エディタの設定で改善されるかもしれませんが、うっかりDelやBackSpaceで消すとイ
ンデントがずれたりして嫌なのですが慣れますか?
0979デフォルトの名無しさん
垢版 |
2019/10/16(水) 06:59:57.67ID:r4KKfSye
別にpythonに限らずネストの深さでインデント揃える癖ついてたから気にならなかったわ
可読性的にも癖つけた方がいんでない?むしろ今までどうしてたのか気になる
0980デフォルトの名無しさん
垢版 |
2019/10/16(水) 07:17:18.25ID:n7nWPnDS
python 3.8.0 で import win32clipboard を実行しても、以下のようなエラーが出る。
ImportError: DLL load failed while importing win32clipboard: 指定されたモジュールが見つかりません。

python 3.8系はしばらくインストールしないほうがいいカモ。
0981デフォルトの名無しさん
垢版 |
2019/10/16(水) 08:59:50.72ID:Mi1dGaVf
>>978 > Pythonだとサブルーチンを上部に書くとエラーが出ますが

def で宣言する関数の事を言ってるんだよね? エラーなんて出ないけど。 関数呼び出しを先に書くとと言う話?

インデントについてはIDE で面倒みてくれるだろ。何を使ってる? 
下の方に関数呼び出しがあっても何ら不都合はないよ。
0982デフォルトの名無しさん
垢版 |
2019/10/16(水) 10:15:15.19ID:dCHq3Ix4
>>978
WindowsならCtrl+F
MacならCommand+Fで
検索ウインドウが出るから
いちいちホイールコロコロしなくても
行きたいサブルーチン名さえわかってれば
一気に移動できる

>インデントに空白
どーしても宗教的理由とかでお嫌なら
タブで統一してもいい。
ただし、
どーしても長い行を分割して書かざるを得ない場合の
後半行のインデントにも
空白ではなく、タブを使うことになる。
0984デフォルトの名無しさん
垢版 |
2019/10/16(水) 10:27:55.66ID:kX3OMluf
いちいちスクロールして使ってるな〜
今ちゃんと動いてるから触りたくないけど関数だけ別ファイルに分けれるんだよね?
0986デフォルトの名無しさん
垢版 |
2019/10/16(水) 10:39:45.65ID:pCAY8ipP
関数へのジャンプだってIDEが面倒見てくれるだろ
ジャンプどころかその場に表示だってできる
0987デフォルトの名無しさん
垢版 |
2019/10/16(水) 10:43:28.41ID:dCHq3Ix4
IDEが嫌いだったり、宗教上の理由で使えないだったり
PCのスペックが糞でうごかなかったり
するひとだって
いるんですよー!
0989デフォルトの名無しさん
垢版 |
2019/10/16(水) 11:29:28.12ID:1/rjcmpT
IDEを使わないってどっちかと言うと宗教だろ。 プログラミングの効率がかなり違って来る。
どうしても複雑なIDEを使いたくなければ Sublime などのエディターでもかなりやってくれるけど。

そもそも今までプログラミングはどうしてたんだよ。 テキストエディタのみ?

IDEを使わないと、コード補完とかやってくれないから入力効率がかなり悪くなる。 ミスも多くなる。
0990デフォルトの名無しさん
垢版 |
2019/10/16(水) 11:38:20.65ID:RHZrzUKd
え?ノミみたいな視野の見識してるね
IDEじゃないと補完できないだって
傑作すぎてジョークと区別がつかないわ
1990年くらいから書き込んでるんだろうかね
0991デフォルトの名無しさん
垢版 |
2019/10/16(水) 12:48:15.93ID:dmmazo8P
E.S.P.だが
上の方でサブルーチンがーとか言ってるVBerは
ソースの上からグローバルな場所にコード書き始めてるんだろ

hoge.py
--------
コード
コード
関数
関数
--------
どうみても馬鹿だが
どうしてもこんな書き方を望むなら

main関数とか作って
hoge.py
--------
def main():
 コード
 コード

関数
関数
main()
--------
って書いとけばいい
0992デフォルトの名無しさん
垢版 |
2019/10/16(水) 12:54:49.05ID:1/rjcmpT
>>990 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:
0993デフォルトの名無しさん
垢版 |
2019/10/16(水) 14:36:40.14ID:bcBxjAM2
エディタでもIDEでも関数を別ファイルに書いて
二つのウインドウで表示しながらプログラミングすれば
いいんじゃないの? 太古の昔からみんなそうやっているけど。
もちろん三つ以上のウインドウを開けてもかまわない。
0995デフォルトの名無しさん
垢版 |
2019/10/16(水) 15:36:59.61ID:3Ceb6FWi
>>992
IDEじゃないJupyter Notebookでもそのぐらい出来るぞ、と思ってスクリーンショットを撮ってたところだったんだが、
Jupyter NotebookはIDEでこういうことが出来るという主張かな。
でも、Jupyter NotebookはあんまりIDEって言わなくないか?
0996デフォルトの名無しさん
垢版 |
2019/10/16(水) 16:54:17.24ID:dCHq3Ix4
>>988
HDDの空き容量の時点でね もうね

>>989
>今までプログラミングはどうしてたんだよ。 テキストエディタのみ?
Yes!(゚Д゚)
0997デフォルトの名無しさん
垢版 |
2019/10/16(水) 17:06:12.80ID:kX3OMluf
関数探すの面倒でメモ帳に保存してそっちで編集してコピペでVSCodeに貼ってたけどちゃんとした使い方調べた方がいいな
0998デフォルトの名無しさん
垢版 |
2019/10/16(水) 17:13:58.41ID:lWzU93N+
vim, emacs だとhotelのwindowsでも走るようにUSBメモリーに開発環境入っちゃう
なんてこともできたりはする
0999デフォルトの名無しさん
垢版 |
2019/10/16(水) 17:25:14.05ID:bKQy1ZjZ
>>995 Notebook は、完全なIDE では無いがIDEの最低限は持ってる。(コード補完)

Notebook とnbextentions が使えれば、iPhone でも同じことができるし。
長々としたものは閉じたり、開いたりできるし。

Jupytor からはVS Code も起動できるし、まあ手頃でいいんじゃない?
大規模なプログラム開発には無理だが、練習用としては使いやすいのでは?

そもそもの話の発端は、インデントが面倒とか、スクロールが面倒とかと言う話だったから、この程度で十分では。

>>996 テキストエディタだけでどんな言語をやってたの?
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 83日 20時間 24分 44秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況