くだすれPython(超初心者用) その34 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/05/28(日) 20:34:15.87ID:7AoJbiyO
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで

前スレ
くだすれPython(超初心者用) その33
http://echo.2ch.net/test/read.cgi/tech/1490424742/
2017/07/03(月) 15:19:48.73ID:k1yeiZFU
>>712
超初心者じゃねぇのかよ.........
714デフォルトの名無しさん
垢版 |
2017/07/03(月) 15:38:45.20ID:6+cSiRQ4
>>713
超初心者はあんなのにレスつけないだろ……
2017/07/03(月) 15:40:33.34ID:eO40pfhm
ああ、副作用スゴイ、副作用に感謝!
ボクのパイソンがドクンドクンと痙攣を始めた!
2017/07/03(月) 16:05:19.26ID:k1yeiZFU
>>714
見栄はったんだろ
2017/07/03(月) 16:25:13.10ID:d1Gme1zq
>>702
画面出力はもっとも有名な副作用だぞ
2017/07/03(月) 17:03:51.82ID:v5BZipuQ
>>717
名前規則じゃなかったのかw
2017/07/03(月) 18:20:12.28ID:oiFj/hKr
まあ画面出力が副作用って言うのは正しいけどこの文脈で出してくるのはちょっとどうかと思うしそもそもreturnなしの関数値(none)を演算に使うとかどう見てもバグっぽいコードで何を説明した気になってるのか意味不明
2017/07/03(月) 18:34:25.44ID:v5BZipuQ
画面出力ってよくあるスレッドの同期バグを副作用とか言ってんの?

ますます意味不明。
721デフォルトの名無しさん
垢版 |
2017/07/03(月) 18:40:41.84ID:6+cSiRQ4
副作用もよく分からんくらいの超初心者はもっと謙虚にしろ
722デフォルトの名無しさん
垢版 |
2017/07/03(月) 18:42:27.31ID:c364q6zP
副作用もよく分かってる超初心者さん達ももう少し謙虚にしてもらえないか
2017/07/03(月) 18:43:46.40ID:NPfMIXsg
matlabにおけるfreadを以下のように使っている時
pythonで同じように書く場合はどのようにすれば良いでしょうか?
fileID = open(file_name,'r')からreadの引数をどう取るかで悩んでいます

matlabの原文
fileID=fopen(strcat(file_name),'r');
size=fread(fileID,1,'*ubit32','b');
%file_nameにはバイナリデータが入っています
2017/07/03(月) 20:20:38.33ID:eO40pfhm
ボクの大蛇が生臭い白濁液を吐き出した!
あたり一面が白ういろうの海と化し身動きが取れない!
これも副作用のせいだっ!
2017/07/03(月) 20:35:25.11ID:r5yHurmA
超初心者スレだろ
726デフォルトの名無しさん
垢版 |
2017/07/03(月) 21:15:30.91ID:UwBLUxpl
>>689>>690
手続き型言語でも副作用って用語が使われ始めたのって関数型言語が注目され始めてからだけど、それ以前からMVCやMVVMでVとの依存性を切り離すって課題として語られていた。
2017/07/03(月) 21:19:48.12ID:4ktGWqSn
副作用もわからんガイジはPHPでもやってろクソガイジ
728デフォルトの名無しさん
垢版 |
2017/07/03(月) 21:26:15.18ID:c364q6zP
副作用の話してる人が性格悪そうって事はわかった
2017/07/03(月) 21:30:42.43ID:4ktGWqSn
ペチプァ出身のガイジは脳みそ副作用でできてるんやね
カアイソウ
2017/07/03(月) 21:50:21.78ID:rvaVDuHz
>手続き型言語でも副作用って用語が使われ始めたのって関数型言語が注目され始めてからだけど、

1960年代から使われてたってことだな。
2017/07/03(月) 21:51:55.10ID:jWiKtjj5
>726
副作用という言葉は、手続き型言語でも、関数型言語が注目されるようになった、はるか以前から使われていたと思うけどな。
パスカル勉強していた四半世紀ほど前だけど、
functionとprocedureとあって、前者は値を返すが、後者は値を返さない。
値を返さないのに、何の役に立つかというと、副作用を起こさせるのを目的として使う。
というような説明を本で読んだ記憶がある。
2017/07/03(月) 21:53:46.51ID:jWiKtjj5
>739
昨今のScalaとかでなく、LISPが注目された頃でしたか。
失礼しました。
733デフォルトの名無しさん
垢版 |
2017/07/03(月) 21:58:36.51ID:PMhP6mgs
>>731
Delphiきっかけに普通のPascalの入門書も読んでたが、ついぞそんな入門書に出会った記憶が無い。。。
ここまで副作用副作用と手続き型言語のスレでも見かける様になったのは2006年前後からと思ったが。。。
大学向けならLispやOCamlやってた先生や生徒も居るだろうが。
2017/07/03(月) 22:01:01.62ID:vaRXntzv
>>726
アホ過ぎる
FORTRANの時代から副作用って言われてる
http://fortran66.hatenablog.com/entry/2013/11/16/182831
2017/07/03(月) 22:10:10.80ID:4ktGWqSn
もう一度言っておく
副作用もわからんガイジは屁臭えペチプ〜でもやってろゴミが!
俺様の目の前に二度と現れるな
失せろクズ
2017/07/03(月) 22:17:41.55ID:jWiKtjj5
>733
サイエンス社のPascal入門(1989年)か、Pascalプログラミング(1990年?)か、どちらかで読んだはず。
Amazonで出てきた表紙に見覚えがあるんだけど、どっちの書籍だったかまでは覚えていない。
2017/07/03(月) 22:30:46.74ID:v5BZipuQ
>>734
参照渡しのことを副作用と言ってるのかよw わかるわけねーよwww
2017/07/03(月) 22:33:14.47ID:v5BZipuQ
さっさとプログラミングにおける「副作用」定義を言え、超初心者ども。

今までの例だと、ただのバグのことじゃねーか。
2017/07/03(月) 22:35:30.24ID:W8qxhA0k
副作用完了点でググれ
740デフォルトの名無しさん
垢版 |
2017/07/03(月) 22:37:21.92ID:c364q6zP
これからの副作用について考えようじゃないか
741デフォルトの名無しさん
垢版 |
2017/07/03(月) 22:55:11.78ID:QgJfKFJA
英語圏で曖昧な表現で説明してるやつらのことは無視してよい。
742デフォルトの名無しさん
垢版 |
2017/07/03(月) 23:19:36.68ID:hTTgnp+k
>>736
サイエンス社の方は読んだ記憶があるが、副作用と書かれてた記憶はない。
多分1990年?の方だな。
2017/07/03(月) 23:20:46.70ID:FLC0Isu1
副作用ガイジのペチプァを殺せ
2017/07/03(月) 23:22:13.31ID:FLC0Isu1
ペチプァを根絶やしにしろ
一族郎党市中轢き回しの上晒し首にせよ
745デフォルトの名無しさん
垢版 |
2017/07/03(月) 23:27:21.56ID:hTTgnp+k
>>738
バグの事じゃない。
数学の関数と同じ、同じ引数渡せば同じ回答が返ってくる。
それ以外の事象全てが副作用。
副作用があっても意図通り動くのもあるし、むしろその方が効率は良い。
ただプログラムの見通しが悪いだけ。
マルチスレッドプログラミングとかで副作用の無い関数型言語が注目されたのもマルチスレッドプログラミングの見通しを良くしてバグを作らない様にしたいから。
(あと状態を持たない事でマルチスレッドプログラミングで分割し易いってのもある)

シングルスレッドではコード短く出来るとか再利用し易いとかで、(シングルスレッドでの)性能追求したら副作用バリバリの方が効率は良い。
2017/07/03(月) 23:34:32.64ID:cvXQzAkL
SQLiteのdbってsqliteでしか見れないの?
2017/07/03(月) 23:49:02.53ID:eO40pfhm
ボクの大蛇はすべてを吐き出してしまった。
大蛇は見る見るうちに縮んでいった。
元のドジョウどころか萎びたオタマジャクシになってしまった。
これが副作用というものなのか?
2017/07/03(月) 23:50:55.18ID:v5BZipuQ
>>745
ランダム値返すrandom()は副作用なわけですね。
749デフォルトの名無しさん
垢版 |
2017/07/04(火) 00:28:00.42ID:huKUW2nT
Yes
2017/07/04(火) 00:40:42.36ID:ZELIClaU
クソパーは副作用に焼かれて死ね
2017/07/04(火) 00:52:55.58ID:2jXzbs3v
オブジェクト指向はほぼ全部副作用がある
2017/07/04(火) 00:56:33.99ID:2jXzbs3v
このスレも馬鹿ばかり
副作用という言葉自体はあったかもしれないけど
ここ数年副作用は悪という風潮になってるのがおかしい
昔はそんなことはなかった
気持ち悪い
2017/07/04(火) 01:44:22.80ID:7rFRQEoU
>>751
参照系にどんな副作用が?

副作用を分離してあるとテストしやすい
2017/07/04(火) 02:03:17.22ID:3m7VK2G7
そういやこのスレはアホ認定されてた奴いたなw
2017/07/04(火) 06:42:19.27ID:Tv7aUxog
>>737
> 参照渡しのことを副作用と言ってるのかよw わかるわけねーよwww
こんなアホ久々に見たわ w
そもそもFORTRAN は全部参照渡しだし参照渡しかどうかじゃなくて引数を変更するかどうかの話なのに全く理解してない
2017/07/04(火) 06:50:13.69ID:rXlR7d7X
Fortranってもはや死語でしょ。
2017/07/04(火) 06:54:22.62ID:rXlR7d7X
> FORTRAN は全部参照渡し

これは欠陥言語と言わざるを得ない。消えていく言語なのは間違いないな。いやもう消えてるか。
2017/07/04(火) 06:55:12.54ID:Tv7aUxog
>>745
> 数学の関数と同じ、同じ引数渡せば同じ回答が返ってくる。
> それ以外の事象全てが副作用。
違う、それは参照透過性の話。
副作用は何らかの状態を変更してしまうことを言う。
なので例えば変数への代入も副作用のひとつ。

>>748
疑似乱数なら内部状態の変更を伴うので副作用を持つ。
ハードウェア乱数発生機からの読み出しなら副作用は持たない。

>>751
意味不明 w
2017/07/04(火) 06:56:20.39ID:Tv7aUxog
>>747
> ボクの大蛇
お薬の副作用による妄想
2017/07/04(火) 07:02:20.96ID:rXlR7d7X
> 変数への代入も副作用

それでは主作用と副作用の違いがないではないか。
2017/07/04(火) 08:20:18.01ID:Tv7aUxog
>>760
プログラム言語では主作用って言葉はほとんど使われない
2017/07/04(火) 08:21:01.77ID:rXlR7d7X
なら「作用」でいいだろ。
763デフォルトの名無しさん
垢版 |
2017/07/04(火) 08:53:00.26ID:LX4AtBOp
そんな慣用語にここで反抗されてもねえ
2017/07/04(火) 08:54:23.42ID:1lmeyR8N
Fortranは、参照渡しがデフォルトだけど、値渡しできるよ。
あと、数値計算の分野だと、まだFortranは現役。
2017/07/04(火) 08:57:42.95ID:rXlR7d7X
一般的に副作用は意図しない作用を言うんであって、
意図してる作用まで副作用だなんて言うから話がおかしくなるんだよ。
2017/07/04(火) 09:34:14.97ID:7rFRQEoU
意図したものであってもファイルへ出力等は副作用
意図してないのはバグ
2017/07/04(火) 09:42:45.55ID:l241jVyP
お薬の副作用とごっちゃになってるのか
お薬飲んだ方がいい
2017/07/04(火) 10:28:29.47ID:rXlR7d7X
>>767
真性の馬鹿か。だから最初から定義を聞いている。
言葉の定義ができない奴はFラン低学歴。馬鹿は薬飲んでも治らない。
2017/07/04(火) 11:14:46.95ID:JR8nRlmR
朝から真っ赤なやつが真性がどうとか説教だってよ
草ボーボーだわ
誰か除草剤撒いとけ
2017/07/04(火) 11:25:37.95ID:rXlR7d7X
>>769
真っ赤ってどこの2ch素人だよ。2chはじめてか?

赤いってのは偉いってことだ。
戦隊モノだってリーダーは赤だし、モモクロだってリーダーは赤だし、3倍速いシャアだって赤だろ。

ここはPythonの初心者スレであって、2chの素人スレじゃねーぞ、ヘタレが。
2017/07/04(火) 11:28:45.53ID:rPs24TN8
人類初心者のスレでもねーぞ
妖怪人間ちゃんよ
あれ?ゴキブリだったっけ?
まあどっちでもいいわな
2017/07/04(火) 11:29:55.91ID:6SYzApDs
>>770
素人は専ブラなんか使わんからIDの色は分からない
連投すればなるから偉くもなんともないし95割くらいはまともじゃないやつの証だ
自分のレスを見直してから発言することだな
2017/07/04(火) 11:48:02.88ID:8vZma2KT
鏡を認識できるほど知能あるの〜w
774デフォルトの名無しさん
垢版 |
2017/07/04(火) 12:11:33.68ID:k7lSpSHL
PHPが辿った道をPythonも辿るのか
そして荒野となり人が離れていく
775デフォルトの名無しさん
垢版 |
2017/07/04(火) 12:21:04.91ID:AMOtdiLy
結局お前ら副作用について何を話したかったんだ?さっぱりわからんw
2017/07/04(火) 12:49:19.64ID:Tv7aUxog
最近関数型言語覚えて副作用について知ったかした>>690がフルボッコされてるだけ
777デフォルトの名無しさん
垢版 |
2017/07/04(火) 12:54:22.08ID:AMOtdiLy
>>776
お前もやろw
2017/07/04(火) 17:00:41.15ID:Tv7aUxog
>>777
ダサ w
2017/07/04(火) 18:21:15.79ID:tbb9NRH5
秀丸で書いてるんだけど
Pythonタブが反核スペースのコードを良くみかけるんだけど
スペース4回や8回、16回入力って面倒じゃない?
更に、削除など7回とかだとずれるし
みんなどうしてる?
2017/07/04(火) 18:22:14.96ID:6SYzApDs
半角スペースの塊をタブと扱ってくれるエディタ使ってる(俺はVim)
2017/07/04(火) 19:30:47.78ID:uVbqp3bl
秀丸ってそんなこともてきねーの
嘘だろ何か設定あるだろ
2017/07/04(火) 20:37:17.02ID:Yq9kveU/
タブをスペースで扱って設定くらいあるだろうに
2017/07/04(火) 21:44:10.13ID:/lfF2KWl
ガイジ副作用で脳みそスペースだらけのスッカラカンなんやろな
ウンコモリモリペチプァでも詰めておけ、ガイジ
2017/07/04(火) 21:52:38.91ID:C0QCHaIb
マジレスするとそんな腐ったレスしかできない奴が一番ダメ人間だと思う
2017/07/04(火) 21:55:38.92ID:C0QCHaIb
生まれつき目の見えない子供が知り合いにいるけど
頑張って生きてるよ
家族も頑張っている
低レベルなレスを連発するのは構わないけどそういう人たちを馬鹿にする奴が一番許せない
2017/07/04(火) 22:01:55.37ID:tbb9NRH5
>>780>>782
タブを半角まではできるんだけど、
バックスペースで削除すると
1文字削除でタブと比べて使いにくいなぁーと思って
787デフォルトの名無しさん
垢版 |
2017/07/04(火) 22:39:24.55ID:KFTmH+Xw
もう副作用でも何でも無いな。。。
手続き型言語の場合、初期化以外の代入も許さないのは稀で、関数として副作用が無ければおkってのが主流。
(副作用禁止だけどこれはおk的な)

個人的には関数型言語は関数型言語らしく、手続き型言語は手続き型言語らしくで良いと思う。
デフォルト引数とか良い例だよ。
代入前提だけど、時々しか違う値入れないからいつもの値入れとけ、みたいな。
ああ言うのは手続き型言語特有。
2017/07/04(火) 23:51:09.28ID:lTp+AY06
>>786
エディタにもよるだろうけど、
そういう時はShift+Tabが使えると思うよ。
2017/07/04(火) 23:58:49.01ID:cQQJFeYO
副作用でうんこ漏らしちゃいました><
2017/07/05(水) 00:02:22.11ID:Mi2Oefnn
>>788
ありがとう
選択してShift+Tabで行けた、ショートカットキーを使うのか、秀丸でもできた
微妙に手が必要になるけど、Pythonだとスペース使う人が多い気がするけど
メリットみたいな物があるの?
2017/07/05(水) 00:23:41.83ID:CFCu53LC
>>790
PEP 8という公式が書いたスタイルガイドがあるんだけど
派生スタイルやツールの基準になっていて大きく反するものがないくらい普及している

PEP 8だとインデントはスペース4文字、ハードタブは使うなとされている
これはガイドに根拠の説明が特に書かれていないほど周知の事実扱いなんだ
https://www.python.org/dev/peps/pep-0008/#tabs-or-spaces
2017/07/05(水) 01:16:45.73ID:Mi2Oefnn
>>791
へーそうなんだ
タブの方が入力や削除がし易いと思うけど何でだろ?
2017/07/05(水) 01:17:53.25ID:uTn2RlgN
>>792
タブだとエディタの設定次第で崩れて見えるのがPythonの流儀に反してるからってどっかで聞いたことがある、違ったらスマソ
2017/07/05(水) 01:20:02.67ID:uTn2RlgN
崩れるというのは何か違うな、環境によってインデントの見た目が変わるのが云々
2017/07/05(水) 01:44:44.17ID:uOGWwv8x
>>793
合ってる。エディタの設定で1タブのインデント幅が自在に変わってしまうからスペースで統一した。
2017/07/05(水) 02:04:45.63ID:CFCu53LC
>>792
https://stackoverflow.com/questions/1125653/python-using-4-spaces-for-indention-why
stackoverflowの何でスペース4つなの?って質問についている回答を雑に訳すと

みんながスペース4つで書いてるから俺も受け入れた
guido(pythonを作った人)がスペース4つを好むから
別に独自スタイルを貫いてもいいよ(俺はやらないけどね)
2017/07/05(水) 02:14:09.93ID:n6J1aua5
python3スクリプトを常駐ソフトみたいに使えますか?
フォルダにアクセスが有ったか知りたいです。どうしたら良いのでしょうか?
2017/07/05(水) 02:15:51.63ID:uTn2RlgN
>>797
Linux環境ならpyinotifyというライブラリがpipにある、他はしらね
2017/07/05(水) 02:32:32.59ID:jRheFMIB
>>790
最初はタブでインデントして、あとで4スペースに変換という方法だと、
書いてる時はスペースと区別しやすいということもあって、実際にそれを使ってきた。

ただ、長いセンテンスに改行を入れた時のインデント調整で、
PEP 8 流に揃えるにはスペースなしでは無理ということもあって、
今は最初から4スペースで書いちゃってるな。

エディタの設定で、タブキーの扱いを変えたり、
インデントの深さが表示されるようにすれば
タブの時とほぼ同じように扱えるというのも大きい。
2017/07/05(水) 08:17:50.67ID:o2lS8KPj
今でこそautopep8があるから俺も受け入れたけど、素のテキストエディタ使って
きっちりpep8に従ってた奴ってすげーわ。
801797
垢版 |
2017/07/05(水) 09:05:21.25ID:n6J1aua5
>>798
ありがとう、ございます。

(でも、windows何です。)
2017/07/05(水) 09:48:37.32ID:YU7DsXGL
そう…(残念)
803デフォルトの名無しさん
垢版 |
2017/07/05(水) 11:05:10.43ID:BRC1acOi
>>779
秀丸にはインデントをスペースにする設定があるのに何でしないの?
2017/07/05(水) 11:59:26.25ID:W7p06HKZ
タブで書いた方がいい。
git か実行時に、タブを空白に変換すればいい

そういう処理を、シェルスクリプト・PowerShellスクリプト・バッチファイル、
またはタスクランナー、gitの前処理に書いておいて、自動実行すればいい
2017/07/05(水) 12:28:17.60ID:z5aRqQvk
pep8も、1行の文字数制限は気になる。
いくらなんでも16:9ではもっと書ける。
あのルールだけエディタではオフにしてる。
2017/07/05(水) 12:32:16.73ID:Qpg00Afa
space2で書いてる
2017/07/05(水) 12:50:48.75ID:eFHntyyq
ボッチ開発だしハードタブ4で書いてる
808デフォルトの名無しさん
垢版 |
2017/07/05(水) 13:15:44.80ID:P2VGXh8m
pep8とか言語関係なしに、ある程度で抑えた方が読みやすい
巻物の使い方が横書きと縦書きで違うのはそういうところから来てるのではと思ってる
それに、Pythonで長くなる時って大抵がネストが深くなってるか、一行に詰め込みすぎてることが多いでしょ
関数定義とかでも、引数が多いときは適度に改行してる

あと、モニタが16:9になったのって、文字を書くんじゃなくて映像を見る方に特化した結果だと思うんだよね
だから、文字数制限を設けることは可読性を保つ上で有効だと思う

でも、pep8の一行の文字数制限は自分もオフにしてる
2017/07/05(水) 14:54:41.44ID:cUuA0iqJ
コードを改行する必要がある時、Python3を書くようになってからは、
バックスラッシュじゃなくカッコで括るようになった。
ただ、カッコ(関数含む)で頭を揃えようとすると、うまく収められない(かえって可読性が落ちる場合など)時は、
仕方なく行先頭から1インデントのところで妥協することも多いな。
2017/07/05(水) 15:47:23.00ID:XUcgmELe
別に妥協はしてもいいんだよ
PEP8PEP8言ってる奴ほど
PEP8の序文読んだことがあるのか?と思う
2017/07/05(水) 17:14:25.98ID:igf3nAKM
ピップエレキバン
2017/07/05(水) 18:28:15.86ID:Cs6uf46S
>>763
脳みそを使えよ、お前。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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