Pythonのお勉強 Part53 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/05/13(土) 22:48:04.14ID:O7RODXwf
Pythonオフィシャルサイト
http://www.python.org/

まとめWiki
http://python.rdy.jp/
関連スレ
http://find.2ch.net/?BBS=ALL&;TYPE=TITLE&STR=python
日本Pythonユーザ会 (※英語わかる人は上記のオフィシャルの方を見ることをお薦めします)
http://www.python.jp/

日本語の扱いで戸惑ったらこちらをどうぞ(バッドノウハウ集で笑える)
ttp://speirs.blog17.fc2.com/blog-entry-4.html
ttp://atomic.jpn.ph/prog/etc/encode.html
ttp://d.hatena.ne.jp/kakurasan/20100330/p1

PythonのUnicodeEncodeErrorを知る
ttp://lab.hde.co.jp/2008/08/pythonunicodeencodeerror.html
よくまとまってた。あとで読む

■前スレ
Pythonのお勉強 Part52
http://echo.2ch.net/test/read.cgi/tech/1483756857/
2017/07/03(月) 20:33:48.18ID:r5yHurmA
入門レベルに手間取って機械学習までいけないんだが
もう基礎無視するかな
453デフォルトの名無しさん
垢版 |
2017/07/03(月) 21:19:56.57ID:UwBLUxpl
みんpyは入門から機械学習まで網羅してるが。
まあプログラミングは手段でしか無いから、入門すっ飛ばしてやりたい事探しながら必要になったら入門記事やその他の記事を参考にすればいい。
文法覚えたのに何も書けないってのはそう言う事。
プログラミングは手段であって目的じゃ無い。
目的あってこそのプログラミング。
2017/07/03(月) 21:33:57.97ID:JEf5r7L9
それこそ、アヤメの分類くらいなら10行くらいなのにそこまでいけないとか。
2017/07/03(月) 21:40:23.73ID:Gy0GpC7K
453の言うとおり。プログラミングはあくまで道具だし、機械学習だって統計の一味。プログラミング言語から派生したものじゃないしね。
2017/07/04(火) 12:45:17.62ID:j32wqUR5
プログラミングは道具じゃなくてオモチャだよ?
2017/07/04(火) 13:37:26.76ID:7rFRQEoU
オモチャは遊びという目的のために使用する道具。玩具。
2017/07/04(火) 13:56:53.26ID:rXlR7d7X
道具だのおもちゃだの人を馬鹿にしてるよな。
2017/07/04(火) 19:22:53.64ID:Yq9kveU/
>>458
道具は馬鹿にしてないぞ。工具と似たような位置づけだが。。
2017/07/04(火) 20:03:54.22ID:6SYzApDs
道具でもおもちゃでも馬鹿にしてるって感じる奴は普段それらを馬鹿にしてるってこった
2017/07/04(火) 20:59:50.97ID:rXlR7d7X
逆だね。
道具やおもちゃを日頃から大切にする人が、これは道具だとか、これはおもちゃだとか言わないよ。
この道具はおれの宝物とか、このオモチャは大切な思い出って言うんだよ。

キミがいかに日頃から人を馬鹿にしてるか分るね。
2017/07/04(火) 21:32:05.52ID:jArM30Vz
そりゃPythonは好きだが宝物とか大切な思い出とかいうように思ってる奴はなかなかいないと思うがね
使う人全てにそこまで愛を求められても困る
2017/07/04(火) 21:44:55.32ID:/lfF2KWl
大人の玩具やぞ
最近は小学生にも人気
464デフォルトの名無しさん
垢版 |
2017/07/04(火) 22:11:07.21ID:KFTmH+Xw
>>461
おいらはその道具(Haskell)に惚れてるけど、昔の会社の大先輩は言語を選ぶようじゃまだまだって言ってた。
(プログラミング関係の会社に入ったけど才能の無さに絶望して辞めた)
再挑戦と挫折の繰り返しの果てにやっと掴んだのは、作りたいものがなければ言語覚えても何も身に付かないって事。
(あとデータ構造。昔ファイルフォーマット制すれば〜とか言われてたのが分かった)

テキストファイルなら誰でも分かるフォーマットだし、差し当たってはプログラミングの為のツール作りとか。
自分が使う為の道具を作る道具として書いてみると良い。

JavaやC#みたいな、元からライブラリ充実してるようなのは簡単なペイントソフトも入門書レベル。

あとはどう言う機能が欲しいのか、学習者のアイデアや情熱次第。
文法覚えたのに〜って言ってた当時の自分をぶん殴りたい。
文法なんぞ、入門書レベルで充分だった。
2017/07/04(火) 22:46:21.46ID:Jpu/bRL1
俺は何度いってもコテハンを付けないお前をブン殴りたい
2017/07/04(火) 22:55:21.72ID:8PCrJd5r
道具を道具と言って何が悪いのか
2017/07/05(水) 00:01:32.22ID:jRheFMIB
久々にjavascript書く機会があったが、
"True/False"とやって怒られてしまった。
Python始めた頃は"true/false"で怒られてたのに…
2017/07/05(水) 00:40:09.07ID:Jvqd5+AK
愛だよ
2017/07/05(水) 00:49:16.23ID:k74tei78
>>464
必要に応じて言語も選べない自称大先輩様は
ペチプァとプェ〜ルを、ザン屁(笑)に載っけて
ウンコード書いてればいいんじゃないかな
2017/07/05(水) 01:39:03.76ID:X/UmFP2S
>>462
pythonは癒し
2017/07/05(水) 01:41:38.53ID:uOGWwv8x
>>464
.pyに愛情こもってないとキレだす民がいるようだから放っておけ
2017/07/05(水) 01:43:06.21ID:uOGWwv8x
手段と目的をはき違えてない?とか言ったら顔真っ赤なんやろ。
プログラミング自体は目的じゃない人が大半だと思うが。
2017/07/05(水) 02:06:42.08ID:uTn2RlgN
いくら好きでも形が無い物には愛着が湧かないからなぁ
474デフォルトの名無しさん
垢版 |
2017/07/05(水) 06:25:14.15ID:+U8R7kGU
>>469
ちゃんと読んだか?
その大先輩は用途によって言語使い分けてる。

最初は言語コロコロ変えるのは良く無いとも言ってた。
今にして思えば、プログラミングの考え方が身につくまでは特定の言語で頑張るのが良いんだと思う。
2017/07/05(水) 07:42:39.44ID:hEavFtYf
指定されれば大抵の道具はそこそこ使えるが
生産性を上げたいと言われたら良く出来てて手に馴染んでる道具使う
何も言われなかったら手に馴染んでる道具使う
2017/07/05(水) 07:47:01.36ID:SCEaR+bW
コーディングは社会人、大学デビューなんて手遅れだよ。
2017/07/05(水) 07:49:28.15ID:hEavFtYf
>>473
偶像崇拝か
名前とか形のないものに愛着を持つのは普通
2017/07/05(水) 12:48:39.49ID:z5aRqQvk
.py愛でてる変な人は無視しないと
2017/07/05(水) 20:55:37.05ID:PGGBdZJ4
>>473
つ擬人化
2017/07/05(水) 21:17:40.27ID:Ea42GZ5p
このソースコードのエラーが直らないんだがわかる人おる?
下のコードは最大公約数を求めるプログラムなんだけどさ
これ実行すると、
TypeError: not all arguments converted during string formatting
って出たからwhile (big % small) != 0の部分に問題あると思ったんだが・・・
わからぬ


big = input("a:")
small = input("b:")

while (big % small) != 0:
rmd = big % small
big = small
small = rmd

print( big )
2017/07/05(水) 21:27:21.17ID:hF8cO617
big = int(big)
とかが要るんじゃ?
482デフォルトの名無しさん
垢版 |
2017/07/05(水) 21:32:09.25ID:z3CI8qH6
呑み屋だから詳細省くが、文字列として受け取ってて数字じゃねえって怒ってんじゃね?
最近はPythonもRuby方にうるさくなった希ガス。
大規模開発には良いだろうけど、初心者には厳しかろう。。。
int()とか文字列から整数に変換するのがあったと思う。
上のキーワードで適当にググってくれゲフッ。。。
2017/07/05(水) 21:36:39.76ID:CFCu53LC
>>480
そのコードだと(big % small)の計算は例えば123と23の入力に対して
(123 % 23)じゃなくて("123" % "23")を計算しようとする(でTypeErrorがでた)

input()で得た入力は文字列のまま&pythonでは文字列と数値の暗黙的変換はされない
のでint()などで数値に変換しないと数値同士の剰余にならず文字列の書式化になる
484デフォルトの名無しさん
垢版 |
2017/07/05(水) 21:40:17.76ID:odMt6Ynp
>>480
今女とヤってるとこだから詳細省くが…パンバンパパンパンパパンッ
2017/07/05(水) 21:51:26.15ID:k74tei78
>>480
おまんみたいな池沼は、ウンコペチプァでもやってろ池沼
2017/07/05(水) 22:10:07.04ID:pIvHmVsN
>>480
big = int(input("a::"))
small = int(input("b:"))

でおk
2017/07/05(水) 22:21:55.51ID:gQXdHb0c
Python2なら input()でもいいけど、
Python3だと、int(input())でないとエラーになるね。
Python3のinputは、Python2のraw_input()に、
Python2のinput()は、Python3のeval(input())に相当する。
2017/07/05(水) 22:22:33.27ID:hF8cO617
Errorメッセージが日本語で出るようにする方法ってある?
2017/07/05(水) 22:54:17.92ID:n6J1aua5
>>488
無いけど、グーグル翻訳に貼り付けたら
大抵は日本語になる。
490480
垢版 |
2017/07/05(水) 22:54:39.31ID:2BCHNoEU
みんなありがとう

int(input())に修正したら無事解決しました
2017/07/07(金) 08:13:37.41ID:2lw0aSIt
>>482
飲み屋から2chチェックして書き込みまでするってどんだけツマンネー飲み会なの?
一人立ち飲みならわかる。
492デフォルトの名無しさん
垢版 |
2017/07/07(金) 08:22:55.43ID:3s7e5LVu
>>491
一人だよ。
立ち飲みではなかったけど。
493デフォルトの名無しさん
垢版 |
2017/07/07(金) 08:25:58.15ID:3s7e5LVu
>>488
プログラミング言語勉強してたら大体読める単語並んでるから、慣れれば大体何書いてるのか分かるぞ。
英語ペラペラになれとは言わんが、英語アレルギーは直しておいた方がプログラマとして今後もやって行くなら絶対徳。
494デフォルトの名無しさん
垢版 |
2017/07/07(金) 10:21:07.03ID:bti4Si71
みんなのパイチンくんとデカチンくんだよ〜〜〜w
2017/07/07(金) 11:56:48.82ID:RAFdGqIf
日本語のエラーメッセージとか、一度英語に戻して考えないと直訳過ぎてわかんなかったりした
二度手間
496デフォルトの名無しさん
垢版 |
2017/07/07(金) 12:19:05.29ID:LXQ/C2D2
それは訳が悪いのであり日本語のエラーメッセージが悪いのではない定期
2017/07/07(金) 13:27:39.96ID:PNT+aB48
エラーメッセージ日本語にしても「Index Error」が「インデックスエラー」になるくらいだと思うの
2017/07/07(金) 13:50:23.17ID:4tey7BLB
領域外参照違反とか言われるよりindex errorって出てるほうが分かりやすいわ
2017/07/07(金) 14:13:11.92ID:RAFdGqIf
>>496
同じ英語のエラーメッセージでも投げたとこによって日本語だと違ったりする
なので1対1で訳すなら直訳になる

元の英語のエラーメッセージが発生場所ごとに書かれてるような詳細なものなら訳せるかもだけど
2017/07/07(金) 15:47:25.19ID:NuuEQail
[]
{}
""
,,
::
:
2017/07/07(金) 16:22:38.57ID:NuuEQail
{"●":● , "○":[{"name":A, "1":11 ,"2":22}, {"name":B, "3":33, "4":44}, {"name":C, "5":55, "6":66}]}

APIのJSONがこの形なのですが
2個目("○"部分)のディクショナリの値が、リストになっていて、都度仕様変更により、リストの順番が変わります。
この、ディクショナリのリストの「"name"」を使って、以下の形にしたいのですが良い方法はないでしょうか。


{{"A":{"name":A, "1":11 ,"2":22}}
{"B":{"name":B, "3":33, "4":44}}
{"C":{"name":C, "5":55, "6":66}}}




以下でやったのですが、上手くできませんでした。

all = json["○"]
for ss in all:

■■name = ss.get("name")
■■kobetu = dict({name:ss})
■■print(kobetu["B"])
2017/07/07(金) 17:04:32.70ID:ZubRvcdJ
>>> json = {'●': '●', '〇': [{'name': 'A', '1': 11, '2': 22}, {'name': 'B', '3': 33, '4': 44}, {'name': 'C', '5': 55, '6': 66}]}
>>> all = json["〇"]
>>> hoge={}
>>> for ss in all:
  name = ss.get('name')
  kobetu = dict(eval('{name:ss}'))
  hoge.update(kobetu)

  
>>> hoge
{'A': {'name': 'A', '1': 11, '2': 22}, 'B': {'name': 'B', '3': 33, '4': 44}, 'C': {'name': 'C', '5': 55, '6': 66}}
>>> json['〇'] = hoge
>>> json
{'●': '●', '〇': {'A': {'name': 'A', '1': 11, '2': 22}, 'B': {'name': 'B', '3': 33, '4': 44}, 'C': {'name': 'C', '5': 55, '6': 66}}}
>>>
2017/07/07(金) 17:08:06.53ID:ZubRvcdJ
△ kobetu = dict(eval('{name:ss}'))
〇 kobetu = eval('{name:ss}')
2017/07/07(金) 18:30:29.86ID:KFjSO1Te
micropythonの話ってどこですれば良いですかね?
ESP8266上で動かしているのですが、ESPのスレはESPのデバイスの話が濃くて言語の話が薄い
でもここも通常のpythonぽくてmicroの話は違うような

ご存じの方教えてくだされ
2017/07/07(金) 19:33:13.78ID:8HfzzkN3
{x['name']:x for x in d['○']}
こういうことか?
2017/07/07(金) 19:35:30.84ID:8HfzzkN3
ごめん d は適当に読み替えて
2017/07/07(金) 19:37:54.84ID:2lw0aSIt
一人立ち飲み中にこのスレ見てみたけど、全然頭回らんわw
508デフォルトの名無しさん
垢版 |
2017/07/07(金) 19:42:24.51ID:tdv0VtnU
気にすんな、いつものことや
509デフォルトの名無しさん
垢版 |
2017/07/07(金) 20:19:31.25ID:cWOZkS00
>>501
型の性質上、"〇"の値を"name"の順番通りにしたいというなら、A,B,Cをキーに持つ辞書で保持するのは適した方法ではないです
リストのまま"name"の値をキーにソートする方がいい
510501
垢版 |
2017/07/08(土) 06:11:07.11ID:inX23hAm
>>502
>>505

ありがとうございます。
私の知識不足もあって、505さんのものまだ試せてないです。。色々いじってみます。
502さんのもので試行錯誤して以下ま出来ました。たぶんもう少しでクリアできそうです。ありがとうございます。


>>509
説明不足ですみません。
”○”のリストの順番が変わる理由が、仕様変更でリストの要素が50音順の並びで増えていくためで、
ソートした場合、順番が変わってしまことから、A、B、Cをキーに持つ辞書にしたかったというのが背景にありました。
説明不足でした。



all = json["○"]
for ss in all:
■■hoge = {}
■■name = ss.get("name")
■■kobetu = dict({name:ss})
■■hoge.update(kobetu)
■■print(hoge.get("B"))


(出力結果)
None
{"name":B, "3":33, "4":44}
None
2017/07/08(土) 08:52:20.78ID:VtagckP8
>>> json = {'●': '●', '○': [{'name': 'A', '1': 11, '2': 22}, {'name': 'B', '3': 33, '4': 44}, {'name': 'C', '5': 55, '6': 66}]}
>>> all = {x['name']:x for x in json['○']}
>>> all
{'A': {'name': 'A', '1': 11, '2': 22}, 'B': {'name': 'B', '3': 33, '4': 44}, 'C': {'name': 'C', '5': 55, '6': 66}}
>>>
512501
垢版 |
2017/07/08(土) 12:05:43.31ID:inX23hAm
>>505
>>511
こういう事なのですね!凄い。
できました!本当にありがとうございますっ!
513デフォルトの名無しさん
垢版 |
2017/07/10(月) 14:42:51.70ID:TZVwcXL0
なんでpython3はwindows日本語環境のopenのデフォをutf8にしないのですか?
2017/07/10(月) 14:55:18.60ID:9oiksQC/
>>513
Windowsの標準文字コードがCP932ことSJISだから、過去の遺産に引きずられてるからどうにもならない
2017/07/10(月) 15:49:43.02ID:CNxwaGHR
訳あってPythonを使わざるを得なくなったんだが
Pythonという名称には抵抗感じる
ヘビ嫌い
2017/07/10(月) 15:56:32.56ID:9oiksQC/
蛇じゃなくてモンティパイソンだからって思ったけどロゴマーク蛇だったな
2017/07/10(月) 15:57:07.85ID:t4qeEO37
牛だと勘違いしてたわw
518デフォルトの名無しさん
垢版 |
2017/07/10(月) 16:17:48.22ID:TZVwcXL0
>>514
なるほど・・・あり!
2017/07/10(月) 16:48:34.99ID:891wXSAy
ゴキブリとかウジ虫とかよりマシだろ
2017/07/10(月) 17:12:40.14ID:OAwCY67i
>>517
バイソン
2017/07/10(月) 20:31:44.61ID:RiONe1Ok
そもそもモンティ・パイソンのパイソンは蛇のパイソンのことなの?
2017/07/10(月) 20:36:51.88ID:UR+4+grg
スコットランドの民話に伝わるパイソン族の事やで
2017/07/10(月) 21:03:41.89ID:Fha/eGoH
屁の音をモチーフにしたペチプァ〜〜〜〜さんをバカにしてるのか?
524デフォルトの名無しさん
垢版 |
2017/07/11(火) 00:36:16.33ID:IKoJR0Wf
大丈夫、俺もヘビ嫌いだけど、そんなの忘れるくらい便利だ
2017/07/11(火) 07:25:06.97ID:UfErDQBR
俺巳年やで
2017/07/11(火) 09:15:48.80ID:zsCdG6oN
パイソンちえみ 35億
2017/07/11(火) 09:58:40.77ID:Sq+bXrW4
どちらかと言うとバイソンじゃんあいつ
2017/07/12(水) 00:08:36.43ID:iO19g1+a
パイセンチョリーッス
2017/07/12(水) 08:13:13.31ID:lqiSGecC
戦闘ヘリパイソン
2017/07/12(水) 14:26:50.95ID:sNyzU/qO
>>498
一般エラー
2017/07/12(水) 20:01:47.90ID:+iUzgANj
アプデするたびに将来的にこの機能は削除しますとか警告出てきてイライラしてきた
pythonはライブラリ頼みだからこういうところは弱いわ
2017/07/12(水) 20:37:45.78ID:4Bbie6ut
それな
2017/07/16(日) 00:18:11.00ID:84gmQO2A
PIL使って壁紙生成するプログラム組んだら満足したので寝る
2017/07/16(日) 09:41:56.40ID:kpOM34Sv
ピル飲んで満足して寝るのか
535デフォルトの名無しさん
垢版 |
2017/07/16(日) 10:23:11.02ID:8fieeS/I
昨日本屋でブラブラしてたら
pythonでマインクラフトいじる本が出てたので
なんとなく立ち読みしてみた
PILつかってjpg読み込んでブロックで絵描いたりしてたけど
出来上がった解像度にがっかりだった
100x100とかしか出来ないのは速度の問題?
それとも1000x1000くらいにすると別途課金されるの?
2017/07/16(日) 10:59:35.96ID:6hUm5kqX
本を書いた人に聞けば
2017/07/16(日) 12:09:37.94ID:yo5XpH/o
日本でブラブラ
2017/07/16(日) 13:02:08.57ID:nvinih80
おちんちんをぶらぶら
2017/07/16(日) 13:37:05.52ID:pHft25q3
minecraftはオワコン
540デフォルトの名無しさん
垢版 |
2017/07/16(日) 16:36:08.94ID:dlJarD9s
>>535
日本屋?
2017/07/16(日) 17:36:05.22ID:h6bT3cU+
tubeでGTAの自動操縦してるやつもいる
2017/07/16(日) 17:42:08.95ID:I9sDywDn
pillowの方がいいってよ(伝聞)
2017/07/16(日) 20:06:40.37ID:MaIM++PI
>>537 >>540
こいつら頭の悪い AI か
544デフォルトの名無しさん
垢版 |
2017/07/16(日) 21:53:18.37ID:aJG+vjk1
ぷろグラムのプのじもわからない素人だけど
ゲームでリセマラしようとマクロ組もうとそこらのサイトから参考になりそうなのを継ぎ接ぎして
やってみたけどおもったとおり動かない
誰か助けてください
sikuliというマクロツールでpythonでやってるらしいからここでいんだよね?
おねがいします



while 1:
click("1500190920747.png")
wait(12)

findAll("1500198166325.png")@この画像の数次第で終わりと継続に分岐したい
mm = SCREEN.getLastMatches()
cnt = 0
while mm.hasNext():
cnt = cnt + 1
mm.next()
if cnt > 3:
click("1500198822380.png")
2017/07/16(日) 23:18:40.28ID:QlYFozep
くだすれPython超初心者用に行け

インデントが狂ってると問題が正しく伝わらない
正しく伝わらないと泥沼になるから答えてもらえない
コードは https://ideone.com/ に貼るのがよい
2017/07/16(日) 23:42:54.15ID:aJG+vjk1
インデントでぐぐったら動かせるようになったー
ちゃんと空白とかにも意味があったんですね
やっぱ基礎からやらんとダメぽ
なにはともあれありがとうございました
2017/07/16(日) 23:52:13.38ID:QlYFozep
ファ〜
2017/07/17(月) 00:56:15.68ID:s2Ne6p+B
>>546
そうやって成長していくんやで
2017/07/17(月) 01:22:12.64ID:Fkkap2CA
池沼を甘やかすな
2017/07/17(月) 03:43:18.27ID:a/BJdC61
>>543
一瞬、空目したってことだろ
まともに句読点打ってないから
2017/07/18(火) 17:34:31.56ID:AEILjc4B
nao操作するためにコレグラフとパイソン使わなければいけないんだけどどうやって勉強するべき?本とか
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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