くだすれPython(超初心者用) その32©2ch.net

レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん 転載ダメ©2ch.net2017/02/04(土) 11:01:07.30ID:koQjiQcQ
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その31
http://echo.2ch.net/test/read.cgi/tech/1476246889/
関連スレ
Pythonのお勉強 Part52
http://echo.2ch.net/test/read.cgi/tech/1483756857/
◆関連リンク Python の Home Page
ttp://www.python.org/
◆長いコードはこういうところにはってください
ttp://ideone.com/
ttp://codepad.org/
ttp://pastebin.com/
ttp://dpaste.com/
ttps://try.jupyter.org/
◆まとめwiki
ttp://python.rdy.jp/

ネットにはデマ情報がいっぱい残ってるので正しい情報をメモ
cmd で UTF-8 使える方法 (chcp 65001 について) ttp://nazochu.blogspot.jp/2011/08/blog-post_26.html
mintty ttp://dogmap.jp/2011/11/15/mintty/
mintty ttp://tanakh.jp/posts/2011-11-15-windows-terminal.html

色々紆余曲折あったけど Git インスコして GitBash 使うのが一番楽っぽい
https://git-for-windows.github.io/

2デフォルトの名無しさん2017/02/04(土) 11:01:50.62ID:koQjiQcQ
関連スレ

Matplotlib でグラフプログラミング【Python】
http://echo.2ch.net/test/read.cgi/tech/1256385982/
ディープラーニング [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1457792560/
【統計分析】機械学習・データマイニング9©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1470037752/

【Python】Python Webフレームワーク総合スレ
http://tamae.2ch.net/test/read.cgi/php/1329996601/
【Python】TurboGearsスレ Part 1【Framework】
http://tamae.2ch.net/test/read.cgi/php/1176022606/
Google App Engine for Python 6アプ目
http://tamae.2ch.net/test/read.cgi/php/1358570953/
Python CGI
http://tamae.2ch.net/test/read.cgi/php/1163513344/

3デフォルトの名無しさん2017/02/04(土) 11:04:49.36ID:koQjiQcQ
一部訂正

【統計分析】機械学習・データマイニング12
http://echo.2ch.net/test/read.cgi/tech/1485008808/

4デフォルトの名無しさん2017/02/04(土) 11:05:37.79ID:Ky7u7cQv
>1 おつ

5デフォルトの名無しさん2017/02/04(土) 11:06:10.60ID:GBVwgt0h
>>1 乙py

6デフォルトの名無しさん2017/02/04(土) 11:07:11.49ID:l5Ug+axZ
|....,,__
|_::;; ~"'ヽ
| //^''ヽ,,)
|  i⌒"
| ∀`) < 誰もいない きのこるならいまのうち
|⊂
| ノ
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
      |( ´∀`) < きのこ のこーのこ げんきのこ ♪
      |(ノ   |つ
      |     |
     ⊂ _ ノ
       ""U
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
     (´∀` )| < エリンギ まいたけ ブナシメジ ♪
    ⊂|  (ノ |
      |     |
      ヽ _ ⊃
      .U""
|
| ミ
| ミ  サッ!
| ミ
|

7デフォルトの名無しさん2017/02/04(土) 11:10:40.96ID:Bhz68lWl
   ┌─┐
   │●│
   └─┤
   _   ∩
  ( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘

8デフォルトの名無しさん2017/02/04(土) 11:54:36.46ID:a5xkdwZY
>>1おっぱいそん!

9デフォルトの名無しさん2017/02/04(土) 12:52:40.26ID:7poobDPC
PHPはWeb最強だってことを忘れないで

10デフォルトの名無しさん2017/02/04(土) 12:58:26.47ID:Op+daOjJ
自分が信じられないから
余所様のスレにまで出張って主張しないといけないんだね
かわいそうに

誰とは言わないけど

11デフォルトの名無しさん2017/02/04(土) 13:02:01.24ID:sZu8qYoy
最凶の間違いじゃ

12デフォルトの名無しさん2017/02/04(土) 13:43:25.94ID:0kBi2+7r
          / . : : : :/: : : : : ヽ: : \
        /   . :/: : /: : : : : : : : : ', : : :ヽ.
       {`V:/: : /: : : :i: : : : : : : i : : : : '.
        ;. .∨ i : : l: : : : :!: : :|:トl: !:ト、: }: : :i
        i: : |: :l: :__|_:,ノ:ノ|: |: |:i、|_j_l, ∨: :l:|
        |: : |: :|: :,厶≦、|: |: |:l厶从 } : :l:|
        l: :小 |:〃i'⌒i^ |/l从|i⌒}`Vヘ: :|:|      / ̄ ̄ ̄\
        |: { ト|从、゙'ー'′    ゙ー'.ノ[ }从|    ′       i
        |:人ヽ._ヾ``       ``゙ }ノ∨      |    あ  |
        | : : `7爪 U         u八: |    __|   ぅ    |
        |: ; ://|:\ 〜'⌒'ー .イ: : :`'.     `1   :    |
        |/:/ : : j:ノ^{`   ‐=;≦}: :|: : i: : '.      、        /
      /:/厶イ{   \___j_,ンゝ:|厶ト、iハ      \__/
    .ノイハ/∧∧    「い   :}Vハ`¬、
    /\   V/ハ \   | }∧  人}/}  ,ハ

13デフォルトの名無しさん2017/02/04(土) 14:42:30.29ID:e9aNESBj

14デフォルトの名無しさん2017/02/04(土) 15:54:14.99ID:0kBi2+7r
人少な杉

15デフォルトの名無しさん2017/02/04(土) 17:06:05.21ID:kG1RZAuy
でも、基地外という人外は多すぎ

16デフォルトの名無しさん2017/02/04(土) 17:27:58.88ID:0kBi2+7r
リナックス、32bit

python ブラウザ上でcgiが動かせません
ローカル環境です

丁寧に説明をお願いいたします。pythonは初心者です

17デフォルトの名無しさん2017/02/04(土) 19:54:20.86ID:Pl3Qi9dO
pythonの開発にgoogleが関わってるのにpython loveなはずのgoogleが
golangで{}を書かせる仕様にしたのが本当に気持ち悪すぎるんだよ

18デフォルトの名無しさん2017/02/04(土) 21:14:36.92ID:5i6jjq4s
言語仕様は言語考案者の個人的な宗教観が反映される
企業体は関係ない

19デフォルトの名無しさん2017/02/04(土) 21:26:30.08ID:WLHswjRB
みんなのパイチンくん、みんなのものだよ〜〜

20デフォルトの名無しさん2017/02/04(土) 21:29:33.67ID:eU0IniTW
>>17
だよな
Pythonは{}を書かせないようにしたからメジャーにななったのにな
{}を使う言語は停滞・衰退中なのに、新しい言語で{}って、時代の流れが見えない爺がやったのかな

21デフォルトの名無しさん2017/02/04(土) 22:11:50.22ID:ognvNw6b
>>16
検索して、あちこちの入門用サイトを見て、勉強する

「みんなのPython 第4版、2017」を読む

22デフォルトの名無しさん2017/02/05(日) 01:12:40.15ID:KV+m3yiD
>>20
Pythonは別にどうでもええけど、同じ志向のYAMLが普及しないのが納得いかない。
設定ファイルにJSON使うのほんと止めてほしい。

23デフォルトの名無しさん2017/02/05(日) 07:48:05.49ID:ZngPJacx
javascriptのフレームわーくはvueで直ぐに決まったが、
pythonのフレームワークが決まらない

どうしよう……。

24デフォルトの名無しさん2017/02/05(日) 08:36:16.73ID:HijDB08+
>>23
どんなもの作るか書いてくれないと答えられん

25デフォルトの名無しさん2017/02/05(日) 08:40:30.42ID:ZngPJacx
>>24
決めてなかった

webページで注文ができるサイト作るのが当面の目標

26デフォルトの名無しさん2017/02/05(日) 12:27:06.23ID:GV4b4uY4
まずbottleから始めたらどうか
ソース読みやすいし

27デフォルトの名無しさん2017/02/05(日) 14:26:25.55ID:mo++GQP3
>>22
yamlは意外と普及してると思うがな。ansibleとdocker-compose併用してたら混乱してしまう。

ただ、yamlってそんなにいいかな?
「インデントが深すぎたらブロックを分割する」ってことができるよう考慮されたデータ構造か
あるいはそもそもインデントの深さが限定されているデータ構造じゃないと扱いづらいから、
応用範囲が限られるだろう。

28デフォルトの名無しさん2017/02/05(日) 14:32:08.58ID:ZngPJacx
>>26
どうも

29デフォルトの名無しさん2017/02/05(日) 14:56:55.68ID:Eg2ZHPf+
yamlを使いたい人というのは、本当はyamlを使いたいわけでなく、とにかくjsonを使いたくないだけである

30デフォルトの名無しさん2017/02/05(日) 15:06:05.77ID:eh0DAHa0
まあjson目で読みづらいからしゃあない

31デフォルトの名無しさん2017/02/05(日) 15:06:18.59ID:8qShZMu5
>>22
別にjsonがいやだとおもったことないけど
何が嫌なの?

32デフォルトの名無しさん2017/02/05(日) 15:40:36.77ID:uN/SMrch
>>22
jsonは馬鹿でも使えるがyamlは馬鹿には使えない(書けない)

33デフォルトの名無しさん2017/02/05(日) 15:41:35.92ID:uN/SMrch
>>23
フレーム枠なんていらんよ
WSGIスクラッチで桶

34デフォルトの名無しさん2017/02/05(日) 17:05:26.83ID:ZngPJacx
こだわりが有るんだよ拘りが……ネスカフェなんだよ

35デフォルトの名無しさん2017/02/05(日) 17:19:28.42ID:latGKH3b
>>32
底辺産業の土方と言われるプログラマは素人、基地外でもなれる職業で
低脳が多いからな

36デフォルトの名無しさん2017/02/05(日) 18:13:29.33ID:Y8z1xx+/
>>31
大抵のjson嫌いだって人は,とコメントを挙げる

37デフォルトの名無しさん2017/02/05(日) 18:26:20.87ID:Eg2ZHPf+
もともとはデータ交換フォーマットであり
人間にとって読み書きしやすい云々は後付け(これ知らない人おおいよね…)なので,
仕様策定者にカンマとコメントについて文句を言うのはお門違いと思う

設定ファイル向きではないのは確か
設定ファイルなんてコメントだらけなので
アプリケーション依存な仕様でキーがアンダースコアで始まっていればコメントと見做すなんてのじゃなくて
ユニバーサルな仕様のコメントは欲しいですよな

38デフォルトの名無しさん2017/02/05(日) 23:19:28.77ID:5lStcm/X
ヤメルとかいらんわあんなごみ

39デフォルトの名無しさん2017/02/06(月) 05:08:50.43ID:rfNY33/y
hjsonはダメなの?

40デフォルトの名無しさん2017/02/06(月) 22:59:53.45ID:w4PqxpOt
小林さんちのメイドラゴンにPython出てきてクソワロ

41デフォルトの名無しさん2017/02/07(火) 10:26:11.15ID:ib9eO4ap
辞書がforループ中にサイズ変わると怒られるのはどうしてですか?

42デフォルトの名無しさん2017/02/07(火) 10:38:16.44ID:xpF2wh92
カンナちゃんかわいいよね(だがスレチ

>>41
別にpythonだけが駄目ってわけじゃ
ないけど、追加した分は含めていいのか
とか順序がおかしくなるからなどなどじゃなかったけ

43デフォルトの名無しさん2017/02/07(火) 11:13:28.20ID:EZ17W+mQ
>>41
言語リファレンスの注釈に書いてある
http://docs.python.jp/3/reference/compound_stmts.html#the-for-statement
背景色が灰色の部分

44デフォルトの名無しさん2017/02/07(火) 12:30:44.88ID:ib9eO4ap
>>42-43
ちゃんとマニュアルに書いてありましたね。。。どうも失礼しました

45デフォルトの名無しさん2017/02/10(金) 20:45:32.52ID:mrwyqnUF
エラーが出た場合に@retryを利用して処理したいのですが、defで関数を作らないと使えませんか?
既存のメソッドや関数にも利用したいのですが

46デフォルトの名無しさん2017/02/10(金) 21:52:06.48ID:STa9hXIn
使えません

47デフォルトの名無しさん2017/02/10(金) 22:21:42.92ID:W2bF0/Rt
お前らよ、いま放送しているアニメ、メイドドラゴンにPythonぽいコードが出ているんだが
アニメに登場するぐらいPythonはメジャーになったのか?

48デフォルトの名無しさん2017/02/10(金) 22:40:49.86ID:5MVdS2z+
NECソリューションイノベータとかいう染み出すブラック臭のする名前の会社が取材協力でなぜPythonなのか

49デフォルトの名無しさん2017/02/10(金) 22:50:13.35ID:W2bF0/Rt
>>48
俺的にはjavaならわかるんだが、なぜPython?って感じ

50デフォルトの名無しさん2017/02/10(金) 22:52:38.72ID:5MVdS2z+
>>49
小林さんはいきなりドラゴン2匹拾って引っ越ししてまともな教育も受けさせるぐう聖アンぐう高給取りやぞ
JavaでStrutsのサポ切れに右往左往デスマってるようなゴミどもとは違うのだよ

51デフォルトの名無しさん2017/02/10(金) 23:15:04.05ID:WMmjWeX+
クール教信者がたて続けにアニメ化されてるのなんで?

52デフォルトの名無しさん2017/02/10(金) 23:15:33.18ID:rXluJnty
深層学習ライブラリとかが充実してるからじゃね?

53デフォルトの名無しさん2017/02/11(土) 00:07:27.17ID:QNofzurb
>>47
どうでもいいな
アニメとか見ないし

54デフォルトの名無しさん2017/02/11(土) 01:17:31.16ID:P1wq7u2z
>>52
機械学習をなんかしている会社って設定なんかな
なら、すげー会社だな

55デフォルトの名無しさん2017/02/11(土) 08:39:55.22ID:uRBrgRbG
まあ、MITがプログラミングの教科書をschameからPythonに変えたから、それがブランドとして機能してるとか、元々LLじゃRubyよりPythonのが世界的にはシェアが高かったからライブラリの充実度で勝ったとか、色々あるけど。
その最たるものが深層学習ってだけ。

56デフォルトの名無しさん2017/02/11(土) 11:09:33.96ID:b9cY++Zk
3DCGソフトのマクロかなんかとして採用されてるのよく見かけるし
手近だったからじゃないの

57デフォルトの名無しさん2017/02/11(土) 11:13:26.69ID:dFdEh6ni
アメリカの大学での初めて勉強する言語がPythonが多いってだけでしょ
沢山の言語を使えるよりも一つの言語をどれだけ使いこなせるかの方が重要

58デフォルトの名無しさん2017/02/11(土) 12:24:18.48ID:1nxiTRX5
アプリケーションにpython組み込む場合、Luaみたいにライブラリいっこで済むわけじゃなくて
python環境一式まるまる抱え込むんだよな。
要らないモジュールは外すとしても、「どうしてもpythonでやりたい」という熱意(狂気)がなけりゃ
とうていできないと思った。

59デフォルトの名無しさん2017/02/11(土) 13:28:10.75ID:zPHU/Wl1
ハッカーになろうでPython勧めてるから、それきっかけの人もいそう

60デフォルトの名無しさん2017/02/11(土) 20:38:08.39ID:Afsv0fXa
Pythonの学習コストの低さは異常
CやJava等のメジャーなオープン系開発言語にことごとく挫折した
生粋のコボラーの俺が、唯一他に使えるようになった言語がPython
IT界の潮流の変化が激しい今、Python一つあれば何でもできるという意味で
ますます多くの人に広まっていくだろう

61デフォルトの名無しさん2017/02/11(土) 20:40:54.49ID:5OICUox8
錯覚だコボラーは諦めろ

62デフォルトの名無しさん2017/02/11(土) 20:47:56.41ID:5PsJJY8d
あなたなら、Fortran も使えるようになるはず。

63デフォルトの名無しさん2017/02/11(土) 22:05:49.44ID:nOWXV3w9
いまJavaからPythonへの移行が急速に進んでいるからな

64デフォルトの名無しさん2017/02/11(土) 22:13:02.39ID:/DKFx9u/
phpもjavaもc#も、挙げ句の果てにVB.NETの仕事も来てるのにPythonの仕事が何一つこないのは地方だからなのか?

65デフォルトの名無しさん2017/02/11(土) 22:19:36.94ID:0GjTSBdX
どこの話だよ
Javerが移行するならScalaだわ

66デフォルトの名無しさん2017/02/12(日) 03:28:34.16ID:gK7SeuxM
Javaはオブジェクト指向に針が振り切れてて、現場でデータをいじくるツールが
即席で欲しいだけの向きにはハードルが高過ぎるんだわ
int()と書くとエラーとなるので、まさかintがないのかって驚愕して調べまくった末に
Integer.Parseint()と書く必要があることを突き止めた時は軽く絶望した
main()すら書く必要のないPythonとはハンドリングに差があり過ぎる

67デフォルトの名無しさん2017/02/12(日) 10:23:49.40ID:XZxqhzSy
<string>.toInt()で良いのにね
javaは長すぎる
scalaおすすめ、コンパイルクソ重いけど

68デフォルトの名無しさん2017/02/12(日) 11:59:09.83ID:Rckawst8
Javaは、失敗したら例外を投げるね

69デフォルトの名無しさん2017/02/12(日) 15:01:47.33ID:MzSMiHMn
>>60
やったな
次は VBA だ

Java はスキルの一定でない人材をたくさん集めて仕事するときに最も効果が出る
人買いバンザイ

70デフォルトの名無しさん2017/02/12(日) 15:06:12.15ID:ekfokMCG
>>69
イマドキVBAって、正気か

71デフォルトの名無しさん2017/02/12(日) 15:15:56.19ID:gK7SeuxM
いや、現場限りのツールレベルならVBAは有力
何せ大抵の職場に標準で導入されているうえ言語仕様が枯れており
書籍は山のように出ているから資産価値がある
俺はテキストファイルの扱いの簡便さでPythonを選んだが
後任にPythonを引き継げるかどうか心配になりつつある

72デフォルトの名無しさん2017/02/12(日) 15:40:48.83ID:ekfokMCG
とうほぐとか、ようやくXPでISDNが開通しましたレベルのド田舎で
きうりの本数をExcelで数え上げるお仕事
みたいな職場なら、まぁその選択肢もありなんだろう

73デフォルトの名無しさん2017/02/12(日) 15:59:46.81ID:AEKBWwpl
ビット演算のXORを10進数で計算するにはどうしたらいいですか?

74デフォルトの名無しさん2017/02/12(日) 16:16:47.03ID:WhTbDq0h
m ^ n
を四則演算で表したいっていうこと?
m, nが0 or 1ならば、
m+n-2*m*n
と表せる。
10進数の数字で計算する方法は、よく分からん。
そもそも、何でこんなことをしたいのか?

75デフォルトの名無しさん2017/02/12(日) 16:19:52.12ID:4XH8pHaF
ソースコードの表記の問題と仮定するけど、2進数のリテラルじゃだめ?
0b100 ^ 0b110 == 0b010

76デフォルトの名無しさん2017/02/12(日) 16:27:16.34ID:AEKBWwpl
XOR じゃなくてorでした
pythonの問題で
20秒以内に
print(20|10)で表示される数をこたえて?
みたいなのがありまして

77デフォルトの名無しさん2017/02/12(日) 16:38:55.36ID:WhTbDq0h
20=16+4
10=8+2
20|10=(16+4)|(8+2)=16+8+4+2=30

78デフォルトの名無しさん2017/02/12(日) 16:42:24.21ID:AEKBWwpl
>>77
これは何をしているんでしょう?普通に20+10とは違うんでしょうか

79デフォルトの名無しさん2017/02/12(日) 16:47:49.18ID:ekfokMCG
そんなんわかって良いことあるんか?

80デフォルトの名無しさん2017/02/12(日) 16:48:02.95ID:ElZAn973
数字を二進数の重み付けに直してんじゃね?
1010b = 1*16 + 0*8 + 1*4 + 0*1 = 10

81デフォルトの名無しさん2017/02/12(日) 16:49:28.25ID:ElZAn973
間違えたw
1010b=1*8+0+1*2+0=10

82デフォルトの名無しさん2017/02/12(日) 16:50:41.71ID:WhTbDq0h
20=16+4
というのは、2進数で表記するのと、実質同じ。
20=0b10100
のことなんだけど、どうせあとで十進数に戻すから、2のべき乗の和で表した。

a|b とa+bとが違う結果になる方が説明しやすいので、例を変える。

20|7=(16+4)|(4+2+1)
=16+4+2+1
=23

16+4

4+2+1
とで4が共通している。
これは、2進数で下から3ケタ目の両方のビットがたっていることを意味するから、4+4とすると、ダブルカウントになる。
なので、4は、一個分しか足さない。

83デフォルトの名無しさん2017/02/12(日) 16:58:57.88ID:ElZAn973
やさしいな。
自分でビット演算って聞いてるんだから二進数の重み付けってヒントだけ教えて、後は自力で解かせた方が本人の為だと思ったのに。

84デフォルトの名無しさん2017/02/12(日) 17:03:50.06ID:WhTbDq0h
たしかに蛇足だったかも。
ちょっとPythonからも離れてしまったし。
(Python で蛇足ですって!プププ)

85デフォルトの名無しさん2017/02/12(日) 17:08:23.48ID:uMNKLmCG
orを10進でってのがよく分からん。
2進でも10進でも同じだろ。

20=10100=16*1+8*0+4*1+2*0+1*0
07=00111=16*0+8*0+4*1+2*1+1*1

20or7=10111=16*1+8*0+4*1+2*1+1*1

86デフォルトの名無しさん2017/02/12(日) 17:09:46.94ID:82SCAQCl
Pythonだったら、bin使うんじゃ..

87デフォルトの名無しさん2017/02/12(日) 17:21:20.92ID:ekfokMCG
>>84
寒すぎる
凍死してほしい

88デフォルトの名無しさん2017/02/12(日) 23:04:14.25ID:bWLt+maP
情報処理試験でも出る、引っ掛け問題。
8進数同士・10進数同士の演算などは、その進数のまま計算すると間違う

(問題)8進数 → 2進数 → 8進数(回答)
のように一旦、2進数に変換して計算するのが、正解

89デフォルトの名無しさん2017/02/13(月) 01:11:44.08ID:ah7ui061
最近よくPythonの初心者勉強会行くととりあえずジャンゴ触ってますみたいなのが多いんだがアレなんなの?

90デフォルトの名無しさん2017/02/13(月) 01:38:00.65ID:g47F+TSI
今Web系は人気だから、Webからこの世界に入る初心者も多い
その流れでRubyではなくPythonを選んだ者がそこにいると思われ

91デフォルトの名無しさん2017/02/13(月) 01:50:32.78ID:X6O8F/qn
読み込んだテキストファイルの数値を計算するプログラムが書けないです

テキストファイル
12,32
21,09
23,34
"
"

合計と平均を求めて、求めた全体に+数値を付けれる様にしたいのですが、
どうすれば良いか分かりません

教えてください

92デフォルトの名無しさん2017/02/13(月) 02:39:36.50ID:ZCxOtlTN
こんなんかな?
https://ideone.com/S0DD9d

93デフォルトの名無しさん2017/02/13(月) 04:49:23.00ID:X6O8F/qn
>>92
ありがとうございます

配列に入れて計算しようとしてたのですが、
上手く行かなくて、困ってました。

94デフォルトの名無しさん2017/02/13(月) 06:28:45.44ID:IfvplqDz
>>88 いつ頃pythonがプログラム問題に出るんだろう?

95デフォルトの名無しさん2017/02/13(月) 11:53:24.59ID:ah7ui061
なぜジャンゴなのか、実際に企業で採用されてるのがジャンゴなの?
トルネードとかピラミッドとかフラスクとかあるのに
なぜかPython初学者がみんなジャンゴ触ってる

96デフォルトの名無しさん2017/02/13(月) 15:58:41.45ID:UyeCKZqE
djangoって色々言われるほど良くはない

97デフォルトの名無しさん2017/02/13(月) 18:48:57.96ID:guhwp1mN
windowsでgeodjango試してみようと思って公式のインスコガイドみたらpythonのバージョンが2.7だったんですがdjangoかgeodjangoは3系にまだ正式対応してないですか?

98デフォルトの名無しさん2017/02/13(月) 19:01:15.21ID:vGMtaBBy
Djangoは次のメジャーアップデートで2系切り捨てるって言ってる
geodjangoとかいうのは知らねえ

99デフォルトの名無しさん2017/02/13(月) 19:04:46.17ID:cd/uLfFk
>>97
>公式のインスコガイドみたらpythonのバージョンが2.7だった
何を見てそう判断したのか教えて
https://docs.djangoproject.com/en/1.10/ref/contrib/gis/tutorial/

100デフォルトの名無しさん2017/02/13(月) 19:09:48.99ID:cd/uLfFk
>>97
>We recommend using the latest version of Python 3, but you can also use Python 2.7.
https://www.djangoproject.com/download/

101デフォルトの名無しさん2017/02/13(月) 19:26:09.19ID:IO7snxzm
>>98-100
ありゃ1.9見てましたわ
https://docs.djangoproject.com/en/1.9/ref/contrib/gis/install/#windows
安心して3系つかいます。ありがとー!

102デフォルトの名無しさん2017/02/13(月) 20:40:16.39ID:t2mtAD9e
ドキュメントが英語ばかりできついのですが、みんな英語読んで理解しているものなんでしょうか

103デフォルトの名無しさん2017/02/13(月) 20:50:16.04ID:Sj6FGVEb
日本語の情報で足りなければどうしても読むことになる

104デフォルトの名無しさん2017/02/13(月) 21:32:46.92ID:cd/uLfFk
>>102
大抵のドキュメントは英語で公開されてから、有志により翻訳されるため遅延がある。もしくは翻訳されないことも多々ある
グーグル先生使ったときの情報量が英語の方が多い
OSSコミュニティでは共通言語として英語が基本使われる

だから、書けなくてもいいから、せめて英語を読むことに慣れた方がいいと思う

105デフォルトの名無しさん2017/02/13(月) 22:39:06.21ID:UGdHkMu7
pycharmのアブデってどうやるの?
ちなcommunity edition

106デフォルトの名無しさん2017/02/13(月) 22:45:38.27ID:GOtEVvRl
丸ごと削除して、丸ごとインストール

107デフォルトの名無しさん2017/02/13(月) 22:49:49.47ID:UGdHkMu7
>>106
プロジェクトとかsrcとか消えない?

108デフォルトの名無しさん2017/02/13(月) 23:02:31.58ID:GOtEVvRl
>>107
信仰心は消えない
信じる者はすくわれる

109デフォルトの名無しさん2017/02/14(火) 01:28:09.85ID:ZsEiEw2O
上書きでええやん

110デフォルトの名無しさん2017/02/14(火) 02:19:33.54ID:dJXlrKSv
seaborn使ってクラスタリングしたのはいいけど、クラスタリングした結果
(どこで分割されてるか)みたいなのは、どうやって見れますか?
分割の順番は見れても、数が多過ぎてどこのクラスターに所属してるか配列か何かで見ないと到底見きれない量で

111デフォルトの名無しさん2017/02/14(火) 12:07:48.94ID:103ZvZAz
文字列を連結していきたいんですけど

これを
s = 'a'
for i in range(2):
s += s + 'b'
こんなふうに1行にして書きたいんですけどエラーになります
a = [s += s + 'b' for i in range(2)]

どうやって書けばいいか教えてください

112デフォルトの名無しさん2017/02/14(火) 12:35:43.38ID:37oJiJeK
”a”+”b”*3

113デフォルトの名無しさん2017/02/14(火) 12:47:23.34ID:wO3EOpR/
for i in range(2): s+=s+'b'

そもそも上と下はやろうとしてる事が全然違うが、何がしたいの?

114デフォルトの名無しさん2017/02/14(火) 14:14:33.93ID:XfjQyZox
s = s+s+'b'+s+s+'b'+'b'

115デフォルトの名無しさん2017/02/14(火) 14:46:08.35ID:HDLB89jO
>>111
個人的にはfor文よりやや分かりにくいと思う
>>> functools.reduce(lambda s, i: s + s + "b", range(2), "a")
'aabaabb'

116デフォルトの名無しさん2017/02/14(火) 18:05:50.84ID:uwayiWk9
a = ''.join(s += s + 'b' for i in range(2))

117デフォルトの名無しさん2017/02/14(火) 21:48:07.87ID:Kfxgwefb
>>111
3行で示したことを、1行で書きたいってことか

118デフォルトの名無しさん2017/02/14(火) 21:55:24.09ID:HDLB89jO
>>116
いやー、それSyntaxErrorになる
Pythonでは代入と累算代入は文(statement)だから式の途中には書けないよ

119デフォルトの名無しさん2017/02/14(火) 22:26:17.18ID:gaP1FzSo
文だから式の途中に書けないと言われて本当に納得できるのかお前

120デフォルトの名無しさん2017/02/14(火) 22:33:26.32ID:Kfxgwefb
>>119
>>116がダメなのは納得できないって、Pythonを作っている奴らに激しくクレームして
出来るようにしてもらわないと駄目だよな。

121デフォルトの名無しさん2017/02/14(火) 22:37:52.84ID:HDLB89jO
あれ、俺文と式の用語間違えてないよね?
それとも式の途中って言い回しがマズイ?

122デフォルトの名無しさん2017/02/14(火) 22:43:58.71ID:gaP1FzSo
間違ってないけどモヤモヤしないか?
文だか式だか知らんけどどうして区別しなきゃいかんのだ?的な?

123デフォルトの名無しさん2017/02/14(火) 22:46:17.82ID:XfjQyZox
s += s + 'b' を値として扱えってのは無理があるだろ

124デフォルトの名無しさん2017/02/14(火) 22:47:42.32ID:Kfxgwefb
>>121
>>116がダメなのはPythonの欠陥だから、出来るようにしろってことだろ
欠陥だから納得してねじゃない。欠陥なら直せよ!

125デフォルトの名無しさん2017/02/14(火) 22:48:42.14ID:gaP1FzSo
それを言うならむしろ値のない存在の方が非現実的だろ

126デフォルトの名無しさん2017/02/14(火) 22:50:46.00ID:gaP1FzSo
なんかバカが一匹変な絡み方してきてるけどコイツはシカトさせてもらう

127デフォルトの名無しさん2017/02/14(火) 22:52:44.11ID:XfjQyZox
他の言語でも関数返値 return s += s + 'b' は無いよね

128デフォルトの名無しさん2017/02/14(火) 23:00:03.31ID:gaP1FzSo
他がどうかは問題じゃない
文と式が違うという説明に果たして納得に足る理由があるかという話だ

129デフォルトの名無しさん2017/02/14(火) 23:07:14.98ID:gaP1FzSo
どうして文と式は分けられなければならなかったのか?
言っとくが俺は答えは持ってないぞ
これは単純に俺自身の抱える疑問だ

130デフォルトの名無しさん2017/02/14(火) 23:08:47.91ID:XfjQyZox
それより、内包表記の要素値が必要とされてる位置に、値でないものを置いてるのがマズイ気がする

131デフォルトの名無しさん2017/02/15(水) 00:00:20.86ID:ZQplfFJ2
JavaScriptでは、function式だと、変数の巻き上げが出来ないけど、function文だと出来る

var f = function(){ }; // 式

文は先に、関数呼び出しを書ける。
f();
function f(){ };

また、Goではインクリメントが式ではなく、単独文のみの使用に限定しているから、
式内にインクリメントを書けないので、バグを防げる
a++

こういう式を書けないので、安全
a++ = f(b++)

132デフォルトの名無しさん2017/02/15(水) 00:01:37.35ID:qqLDSwLy
pythonのラムダ長いし、1式しか書けないしjsと比べて微妙…

133デフォルトの名無しさん2017/02/15(水) 00:47:14.74ID:q4yDcCHe
リスト内包表記はないほーがいいきがする

134デフォルトの名無しさん2017/02/15(水) 09:14:08.04ID:eolXKf6D
リスト内包表記とペニスカントン包茎の違いを教えてください

135デフォルトの名無しさん2017/02/15(水) 10:57:09.62ID:N3aAX75A
マサオむきむき
カリアゲびろ〜ん

136デフォルトの名無しさん2017/02/15(水) 10:58:47.21ID:N3aAX75A
>>116
a = ''.join(s + 'b' for i in range(2))
s = a.split('')

137デフォルトの名無しさん2017/02/15(水) 10:59:05.42ID:N3aAX75A
s = list(a) か

138デフォルトの名無しさん2017/02/15(水) 11:00:05.57ID:N3aAX75A
ああそれも違うな
マンドクセ
欠陥だな

139デフォルトの名無しさん2017/02/15(水) 22:24:35.41ID:hJ/uFYHh
5^2が7になるのはどうしてか数学的に教えてください

140デフォルトの名無しさん2017/02/15(水) 23:01:45.70ID:qiczUiuQ
排他的論理和の計算方法は知ってるけど数学的に解説する知識はないや
他の人に任せる

141デフォルトの名無しさん2017/02/15(水) 23:19:19.00ID:tit7/T8R
数学的って数理論理学ブール論理から解説しろって事か?
2進数として下から桁を揃えて桁毎に…で良いでは無いか

142デフォルトの名無しさん2017/02/16(木) 00:24:10.72ID:V64add6u
>>141
>2進数として下から桁を揃えて桁毎に
これ、算数的であって数学的じゃないだろ
算数的には理解できたけど数学的には理解できないから質問したんだろう

143デフォルトの名無しさん2017/02/16(木) 00:46:46.99ID:6pMGQ7pr
>>142
だからそういう理解で良いじゃないかって話でしょ?
もはやPython関係ないし、くだすれの範疇には思えんが
不足だと考えるなら懇切丁寧に教えてやってくれ

144デフォルトの名無しさん2017/02/16(木) 00:53:29.26ID:V64add6u
>>143
プログラマ程度ではそういう理解で良いから、だれも数学的に回答しない(出来ないが正しいか)んだよ
でも、欲しいのは数学的な説明

145デフォルトの名無しさん2017/02/16(木) 00:56:27.04ID:vdkr1TpO
ビット演算であって各ビット桁同士を論理演算してるだけ
デジタル回路の設計から来てるから数学的でないのは仕方ない

146デフォルトの名無しさん2017/02/16(木) 01:04:04.13ID:6pMGQ7pr
>>144
うん、だから?
そんなのは誰もが察する所でしょ
それで、説明は?

147デフォルトの名無しさん2017/02/16(木) 02:08:39.75ID:O9fNFfXr
質問者とは別人なのに勝手に代弁を始める奴がいると思いきや、
そもそもの質問もプログラム板で数学を求めるような板違いな代物だった
恐ろしい、恐ろしい

148デフォルトの名無しさん2017/02/16(木) 07:21:08.25ID:hXFmZ55Q
二項演算というキーワードを入れておけば数学的な説明になる

149デフォルトの名無しさん2017/02/16(木) 12:23:56.15ID:DAZA6AGk
プログラミング初心者だがヤフオクapiを使いたくpython3の基礎を一通り勉強したが、これだけじゃ駄目だよな?
次どうすればいい?
ググってもサンプルコードとかばっかで流れや解説等がのってなかったりするからわからん
本やサイトなんかあれば教えてくれ

150デフォルトの名無しさん2017/02/16(木) 12:27:28.57ID:/7rEcrhi
>>149
なにを勉強したいんだ?
apiの呼び出し方が分からないのかapi使ったアプリの作り方が分からないのか

151デフォルトの名無しさん2017/02/16(木) 12:28:07.62ID:bJO6qOIs
流れなんて言語と関係ないもん
そりゃ出てこないよ

152デフォルトの名無しさん2017/02/16(木) 13:01:20.27ID:T3bjzXRx
どうすればいい?って聞かれても
プログラミングは道具に過ぎないから
自分がやりたいことをつずつ調べて覚えていけとしか言えない
サンプルコードからどうしてこう書くのか学べない奴は何をやらせてもダメ人間

153デフォルトの名無しさん2017/02/16(木) 13:16:14.97ID:2xXwmYsa
https://www.amazon.co.jp/dp/4774183679/
このへん読めばいいんじゃないの

154デフォルトの名無しさん2017/02/16(木) 13:16:20.79ID:mE8HC0zl
>>150
apiの呼び出しかたがわからん

155デフォルトの名無しさん2017/02/16(木) 13:32:55.54ID:1VBkG9E6
>>153
ステマ乙

156デフォルトの名無しさん2017/02/16(木) 13:33:15.37ID:1VBkG9E6
>>154
apiは勉強するもんじゃない
参照するもんだ

157デフォルトの名無しさん2017/02/16(木) 19:18:09.47ID:+k913IB0
ググって出てきたソースコード組み合わせてとりあえず動けば良いんだよ

158デフォルトの名無しさん2017/02/16(木) 19:42:42.27ID:vdkr1TpO
ブログにあるサンプルコードだけ見て、APIのドキュメントを全く読まないから
どんなパラメータがあって、アクセスには登録IDが必須であることも理解してないのでは…

159デフォルトの名無しさん2017/02/16(木) 20:04:32.47ID:GUdlAUIs
>>158
apiの呼び出し方が分からんではそんな感じのレスになるよな
俺的には、なんとなくそれ以前にweb apiの一般的な使い方が分かっていないじゃと思うんだが

160デフォルトの名無しさん2017/02/16(木) 20:31:10.69ID:d3XjlrxH
>>153
その本持ってるけどネットでわかる内容を体系付けたような感じで、
値段ほどの価値があるとは思えず、良くも悪くも初学者用だと感じた
>>149のレベルだったら役に立つかもしれない

161デフォルトの名無しさん2017/02/16(木) 22:52:20.71ID:snmxztE6
初心者はまず、この2冊をこの順に読む。
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

その後、
Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例、
佐々木拓郎・るびきち、2014

162デフォルトの名無しさん2017/02/16(木) 22:53:42.48ID:SXPkKBYH
ここはpythonスレだ。
rubyは、あっち行け。

163デフォルトの名無しさん2017/02/16(木) 23:09:27.39ID:7FGIBJK8
定期的にみんなのPythonの著者が宣伝に来るからNGワード追加しとくか

164デフォルトの名無しさん2017/02/16(木) 23:47:11.65ID:g4Kg0tud
すぐ宣伝ってwwwww
じゃあjavaスレでよく勧められる「スッキリ分かるjava入門」も作者の宣伝だったのか
scalaスレのコップ本も作者の宣伝なのか(白目

165デフォルトの名無しさん2017/02/17(金) 00:08:56.42ID:PP/ME+Di
俺もだが、今の2chのム板には精神に障害ある奴ぐらいしか書き込まないからな

166デフォルトの名無しさん2017/02/17(金) 00:29:06.11ID:5v9Y6SWx
嫌いな本があったら宣伝すればいいの?

167デフォルトの名無しさん2017/02/17(金) 00:44:38.54ID:Jabv5CuT
で、"退屈なことはpythonにやらせよう"はいつ発売するんだ?アマゾン見たらまた延期されてるんだが、

168デフォルトの名無しさん2017/02/17(金) 00:57:07.43ID:FFSvl2Qr
退屈なことは下請けにやらせよう

169デフォルトの名無しさん2017/02/17(金) 08:07:28.72ID:0EHEWzLA
>>167 データーの収集。

170デフォルトの名無しさん2017/02/17(金) 16:11:03.72ID:yGnzX63H
>>164
知らなかったのか?

171デフォルトの名無しさん2017/02/17(金) 20:10:26.12ID:DayzSt7h
>>168
2chのム板の連中は最底辺下請けにいるのに

172デフォルトの名無しさん2017/02/18(土) 00:10:11.48ID:jrlaa9dV
辞書はクラスattributeとして使えますか?

173デフォルトの名無しさん2017/02/18(土) 01:05:49.94ID:av1bChUO
MyClass.fooに対してMyClass["foo"]みたいなやり方は型オブジェクトではできない
getattr(MyClass, "foo")を使うか、インスタンスを使ってでっち上げる(たぶん草臥れ儲け)
一応MyClass.__dict__["foo"]があるが読み取り専用で継承した親のフィールドは__dict__に入ってない

174デフォルトの名無しさん2017/02/18(土) 04:50:55.62ID:N/W/WUIE
以下の本はそれぞれどちらがオススメですか?

A.実践力を身につけるPythonの教科書

B.みんなのPython

C.Pythonクローリング&スクレイピング

D.Pythonによるスクレイピング&機械学習

Amazonのレビューを参考にすると
A > B 、C > D
ではないかと思っているのですが。

175デフォルトの名無しさん2017/02/18(土) 07:36:27.77ID:gP3354JB
webで充分

176デフォルトの名無しさん2017/02/18(土) 07:45:29.24ID:rC7eFkuX
公式チュートリアルやってあとは目的別にQiitaでも見てればいいさ

177デフォルトの名無しさん2017/02/18(土) 08:13:25.62ID:DtpX+k6N
ソシャゲに数万円つぎ込むのには躊躇しないのに
数千円の本を買うのに悩むのが人間の面白いところ

178デフォルトの名無しさん2017/02/18(土) 08:36:48.82ID:bnUVfFtb
オライリーのlearning python っていう分厚いのが詳しくて良い。
タブレットに電子版入れといと、通勤時に読んで独習した。
あとは、AOJとか、yukicoder、Paiza、codeIQの問題解いて、コード書く練習すると良い。

179デフォルトの名無しさん2017/02/18(土) 10:22:06.41ID:AobYyoSr
実践力を身につける Pythonの教科書、クジラ飛行机、2016
クジラ飛行机は、プログラム言語「なでしこ」の作者か

この2冊は表裏一体だから、この順に読む。
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

まずRubyで、クラス・正規表現や、配列などの便利なメソッドを覚える。
次にPythonで、数値計算をやる

Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例、
佐々木拓郎・るびきち、2014

180デフォルトの名無しさん2017/02/18(土) 10:54:31.71ID:SkS6Bpbi
>>177
俺はそれに気づいてoreillyに金じゃぶするようになってしまったわ

181デフォルトの名無しさん2017/02/18(土) 11:04:52.75ID:LTpgJ4tI
本を買う奴は情弱
エサにされてるだけ
分かりやすい公式ドキュメントだけで十分

182デフォルトの名無しさん2017/02/18(土) 11:33:18.03ID:+coMAf/q
>>180
なお積まれるだけのもよう

183デフォルトの名無しさん2017/02/18(土) 11:43:21.29ID:SkS6Bpbi
>>182
なんでや!ちゃんと本にそってプログラム書いていったらめっちゃわかりやすいやん!

184デフォルトの名無しさん2017/02/18(土) 12:47:36.23ID:1c96nb+d
10冊以上まとめてお買上げで Oreilly 特製本棚をプレゼント
5色から選べます

185デフォルトの名無しさん2017/02/18(土) 14:35:16.54ID:sNsK+hAD
スクレイピング関連ならPython関係なくDOMの本の方が良いんじゃね?

186デフォルトの名無しさん2017/02/18(土) 15:06:54.46ID:A3GKn5be
>>174
ちょっと前にまとめて全部読んだよ
お金ないなら両方クジラの本を買ったらいい。親切丁寧でイージーな内容だから挫折しにくい
ただ内容が薄めだから、読み終えたら残り二冊に以降したい

187デフォルトの名無しさん2017/02/18(土) 18:01:14.01ID:SdAz5Uiw
>>179
Rubyのコードはボロアパートの散らかった部屋を連想する見た目だったので覚える気が失せました。

出来る事もPythonと被るので無用の言語という印象しかありません。

Rubyのコードを見た後にPythonのコードを見るとウットリしてしまいます。

188デフォルトの名無しさん2017/02/18(土) 18:58:24.69ID:j9t26+Si
endがある言語はゴミ

189デフォルトの名無しさん2017/02/18(土) 21:56:10.53ID:6/lAxbOP
オライリーは書籍買ったらEbookダウンロードできるようにすべき

190デフォルトの名無しさん2017/02/18(土) 22:00:23.90ID:G2ckVYLI
rubyだけが唯一無二のゴミ

191デフォルトの名無しさん2017/02/18(土) 22:44:03.77ID:bnUVfFtb
>189
英語版だと、印刷版を買って登録すると、5ドルくらいでダウンロード版を購入できるよ。
なお、印刷版の購入登録は、自己申告で何もチェックしていなので、その気になれば、、、。

192デフォルトの名無しさん2017/02/18(土) 22:46:02.16ID:KVIDXYhT
>>191
これほんとガバガバだよな
良心が痛んで課金してもうたわ

193デフォルトの名無しさん2017/02/18(土) 22:58:35.86ID:+coMAf/q
>>191
こマ?俺オラリ本全部持ってる気がしてきたから全部欲しいんだが

194デフォルトの名無しさん2017/02/19(日) 01:24:42.45ID:mjVfBTKR
日本のオライリーはほんと糞だな
オープンソース精神がかけらもない
早急な改善を要求する

195デフォルトの名無しさん2017/02/19(日) 02:03:37.75ID:tjAiUQin
>>187
そういうの大事だよね

196デフォルトの名無しさん2017/02/19(日) 07:53:28.69ID:PMSsjAFd
完全に落ち目だな。
結局得意のWebではPHPに勝てず、JavaScriptにも追い越されるだけ。
他の分野では全く存在感無し。

197デフォルトの名無しさん2017/02/19(日) 09:19:47.58ID:gFzSi0IK
今さら、phpだけはありえないわ
php選ぶ層は、一時期あった「phpなら初心者でも書ける」とかいう嘘に騙されて
他に何もスキル身につけられなかった零細PGくらいだろうね

198デフォルトの名無しさん2017/02/19(日) 10:53:13.12ID:ngALvOwB
>>196
> 結局得意のWeb
そうなの?
簡単ツール作成言語かと思ってた

199デフォルトの名無しさん2017/02/19(日) 11:15:52.01ID:jk9ayPIQ
python使う会社って学歴高そうな人が集まってそうだけど
php使う会社は高卒も混じってそう

200デフォルトの名無しさん2017/02/19(日) 12:53:16.32ID:NLVYU5iB
落ち目かな?
機械学習はpythonのライブラリが充実していて、まだ伸びるんじゃないの?

201デフォルトの名無しさん2017/02/19(日) 13:46:48.57ID:6BZDjQqT
>>200
話の流れからしてrubyのことでしょ

202デフォルトの名無しさん2017/02/19(日) 16:55:08.82ID:6PE+WAdD
変な宗教言語は引っ込んでろ

203デフォルトの名無しさん2017/02/19(日) 17:36:53.49ID:JKzB7KGO
Pythonスレで何を

204デフォルトの名無しさん2017/02/19(日) 17:48:44.42ID:jiS10nfp
>>202 松下幸之助

205デフォルトの名無しさん2017/02/19(日) 22:15:23.42ID:Hn+WkqpN
map すべての要素に処理

filter 条件にあうものだけを抽出

reduce ???
わけわからんこれは廃止されるわな

206デフォルトの名無しさん2017/02/19(日) 22:26:30.14ID:5WEM4D2L
reduceだけは内包表記でどうしようもないから有用だったのに……

207デフォルトの名無しさん2017/02/19(日) 22:34:45.56ID:Hn+WkqpN
>>206
そもそも何がreduce(減って)しているの?

208デフォルトの名無しさん2017/02/19(日) 22:40:57.56ID:5WEM4D2L
>>207
さあ?Haskellだとfoldだよね
一応reduceには「まとめる」という意味があるけど……

209デフォルトの名無しさん2017/02/19(日) 22:42:37.56ID:vZRH9GDp
>>207
reduceは集約関数だよ
英語でどの辺りのニュアンスになるかは知らんけど

210デフォルトの名無しさん2017/02/19(日) 22:46:47.58ID:99UtXzmV
まとめるとか収束させるって意味がある
例)reduce all the questions to one

211デフォルトの名無しさん2017/02/19(日) 22:48:24.07ID:Hn+WkqpN
なるほど集約してまとめてるのかサンクス

212デフォルトの名無しさん2017/02/19(日) 23:02:45.36ID:6BZDjQqT
>>206
組込関数ではなくなっただけで標準ライブラリにこの先もあるから
ttp://docs.python.jp/3/library/functools.html#functools.reduce

213デフォルトの名無しさん2017/02/19(日) 23:06:57.96ID:SDjzQTQG
Pythonでゲームのハイスコア管理するようなサーバー管理できますか?

214デフォルトの名無しさん2017/02/19(日) 23:09:42.88ID:gFzSi0IK
>>212
この追いやられっぷり
python 4辺りでデプられそう

215デフォルトの名無しさん2017/02/19(日) 23:10:49.25ID:nRRwTiSH
>>213
何故出来ないと思ったのか

216デフォルトの名無しさん2017/02/19(日) 23:20:09.26ID:SDjzQTQG
スマホでゲーム自体やって通信してサーバー側をPythonでやるようなやつです

217デフォルトの名無しさん2017/02/19(日) 23:24:28.27ID:gFzSi0IK
まずは日本語のお勉強からですね

218デフォルトの名無しさん2017/02/19(日) 23:25:45.33ID:nRRwTiSH
その程度の事も出来ない言語がGoogleの公用語になると思うか?
お前が言いたいのは
「できますか?」じゃなくて「俺には出来ないからお前ら代わりに作れ」だろ?

219デフォルトの名無しさん2017/02/19(日) 23:27:10.45ID:nRRwTiSH
スコア管理よりゲーム本体の方が難しいから先にゲーム作って出直して来い
この程度の物を作れない奴がゲーム作れるわけがない

220デフォルトの名無しさん2017/02/19(日) 23:27:36.02ID:SDjzQTQG
頭がいい人に聞きたかったのに食いつくのは悪そうな人ばかり
検索で自己解決しました

221デフォルトの名無しさん2017/02/20(月) 00:02:49.80ID:+Es5+QIS
天才あらわる

222デフォルトの名無しさん2017/02/20(月) 00:39:12.56ID:nXRz5jKs
>>218
2chは「できますか?」って聞くような低脳ぐらいしか質問しない
2chは俺のような低脳しか来ない掲示板だしね

223デフォルトの名無しさん2017/02/20(月) 01:00:06.51ID:T5gAZJ4C
思い描いた仕様のアプリが開発できるかどうかは
その人のスキルとやる気にかかっているんだけど
スキルとやる気があるなら人に聞くまでもなくできるわけで
つまりこの手の質問への回答は、「お前には無理」ってなる
しかしそれを言うと角が立つので、結局のところ無視するのが一番いい

224デフォルトの名無しさん2017/02/20(月) 01:49:32.18ID:nXRz5jKs
>>223
そんな感じだよな
「できますか?」って質問は実は「僕にできますか?」だよな
当然、お前を知らないのにお前に出来るかって分かるかよだからな

225デフォルトの名無しさん2017/02/20(月) 01:56:55.63ID:8FbM2GQR
そもそもプログラミングで何ができるのかがわかってない可能性ががが

226デフォルトの名無しさん2017/02/20(月) 02:10:44.34ID:+Es5+QIS
何でもできるし何にもできない
それがプログラミングさ

227デフォルトの名無しさん2017/02/20(月) 05:41:45.98ID:7rr4PWAY
質問スレの名は釣りで異様にネガティブで長文愚痴をこぼすオヤジが定住している
「できますか?」に何故か激昂する

228デフォルトの名無しさん2017/02/20(月) 07:17:18.30ID:PYvH8m0m
むしろ
○○で△△できますか?
の方が定番の釣りにしか見えない
たいていの言語スレで見てるような気がする

229デフォルトの名無しさん2017/02/20(月) 11:17:51.64ID:rPQ68BdO
「できますか?」には「本当にやれんのかよ」の煽りニュアンスもあるし
どうとでも取れる曖昧な質問内容だと特に釣りの可能性高いから、自分ならスルーする

230デフォルトの名無しさん2017/02/20(月) 12:25:33.39ID:r3YJ4KKi
でもまたすぐ食いつくんだろw

231デフォルトの名無しさん2017/02/20(月) 12:34:01.60ID:8FbM2GQR
できますと答えて反応見るでも良いんやで

232デフォルトの名無しさん2017/02/20(月) 19:39:51.21ID:XEFlQT/d
お前には無理

が最強だと結論出てるはず

233デフォルトの名無しさん2017/02/20(月) 20:47:58.69ID:Q+CD6USC
むしろ
「ゲームのハイスコア管理するようなサーバーアプリケーションならrubyですよね!」
が正しい質問の仕方

234デフォルトの名無しさん2017/02/20(月) 20:54:49.04ID:DEynAIXr
お前には妥当

235デフォルトの名無しさん2017/02/20(月) 22:19:36.26ID:+Es5+QIS
お前が信じるお前を貫け

236デフォルトの名無しさん2017/02/20(月) 22:35:23.23ID:UIHVwqwb
ハイスコア程度ならphpで十分

237デフォルトの名無しさん2017/02/20(月) 23:07:35.10ID:dEjepXdj
クラス変数をメソッドから参照することはできますか?

238デフォルトの名無しさん2017/02/20(月) 23:13:32.11ID:UIHVwqwb
できます

239デフォルトの名無しさん2017/02/20(月) 23:28:23.04ID:+Es5+QIS
『できるかできないか』、ではなく、『やるかやらないか』 である。

240デフォルトの名無しさん2017/02/20(月) 23:51:42.15ID:wNdA3+XY
クラス変数をメソッドから参照するならrubyとpythonどっちが素敵ですか?
その理由も述べてね

241デフォルトの名無しさん2017/02/21(火) 00:13:11.22ID:VzOUm1IH
くだすれだからってどんなくだらないこと聞いてもいいわけじゃねえぞ

242デフォルトの名無しさん2017/02/21(火) 04:54:51.40ID:/rb4RRLd
くだを巻いても良いですか?
属性参照が動的過ぎて遅いという不満はある
辞書はもう頭打ちなのかなァ

243デフォルトの名無しさん2017/02/21(火) 06:39:15.75ID:SvaTryNm
>242
辞書が遅いなら__slots__を使えばいいじゃない。
動的に属性を作ったりするなら使えないし、サブクラスには引き継がれなかったり、インスタンスが数千個とか大量にないと恩恵が少なかったり、いろいろ制約多いけど。

244デフォルトの名無しさん2017/02/21(火) 10:49:18.50ID:nr9E5MgZ
python3.5
from xml.etree.ElementTree import Element

xmltree = ElementTree.parse('test.xml')
node = xmltree.find('./url')
if (node):
print('A')
if (node != None):
print('B')

for node in xmltree.findall('./accounts/item'):
node_id = node.find('id')
if (node_id != None):
print('C')
if (node_id):
print('D')

この結果がなぜか A B C となります。
つまり、ノードの find で返ってくるノードだけ None と比較しないと
if 文に引っかからないんですがこれはどういうことなんでしょうか?

245デフォルトの名無しさん2017/02/21(火) 11:06:13.60ID:2MM4u7b3
>>244
(1) 条件式を括弧で囲うのは無駄なのでやめましょう→(node != None)
(2) Noneと比較するときは==と!=ではなくisとnot isを使いましょう。
(3)本当にそのコードでA B Cと返るのか確認しましょう。コードの先頭付近で
エラーが出てますよ確認しましょう。
(4)使用しているオブジェクトに含まれてないメソッドparseを使用してますが、どこかからコピペしたんでしょうか。動くコードを提出してください

246デフォルトの名無しさん2017/02/21(火) 11:16:56.36ID:NriZ7Tkd
>>244
http://docs.python.jp/3/library/xml.etree.elementtree.html#element-objects
Elementの真偽値評価については日本語訳ドキュメントのリファレンスに書いてあった
「20.5.3.2. Element オブジェクト」節の最後の部分を載せておく

注意: 子要素を持たない要素の真偽値は False になります。
この挙動は将来のバージョンで変更されるかもしれません。
直接真偽値をテストするのでなく、 len(elem) か elem is None を利用してください。

247デフォルトの名無しさん2017/02/21(火) 11:19:32.07ID:nr9E5MgZ
ありがとうございます
#coding: UTF-8

import xml.etree.ElementTree as ElementTree
from xml.etree.ElementTree import Element

xmltree = ElementTree.parse('test.xml')
node = xmltree.find('./url')
if (node):
 print('A')
if (node is not None):
 print('B')

for node in xmltree.findall('./accounts/item'):
 node_id = node.find('id')
 if (node_id is not None):
  print('C')
 if (node_id):
  print('D')

結果は B C となりました。あれおかしいな…作ってるでかいコードのほうはA B Cになるのに…
オブジェクトの有無を見るのに if (obj) というのは間違いなのでしょうか?
いままでずーっとそうやってきたのですが

248デフォルトの名無しさん2017/02/21(火) 11:20:44.34ID:nr9E5MgZ
>>246
おおっ!まさにこれですね
ありがとうございました!

249デフォルトの名無しさん2017/02/21(火) 18:59:34.21ID:CIggyL3x
例外エラーが発生した時に、その時点までに使用されている全ての変数に格納されている値を一緒に出力するような方法はないでしょうか?

やっている事はwebからapiで数値を取得しその数値から渡したい値を加工してpostするという無限ループのプログラムです
たまにapiが空の値で返ってきたり加工段階で予期しない数値になっていたりでエラーが発生しているのだろうという事は分かっているのですが
どうエラーをキャッチしてどう関数を書けば良いのかなどのノウハウがなく、全ての処理にtry-exceptを挟むぐらいしか想像が出来ません

250デフォルトの名無しさん2017/02/21(火) 19:05:11.53ID:PvUtN7aH
クラッキング?

251デフォルトの名無しさん2017/02/21(火) 19:19:28.57ID:8I0Tfvzv
>>249
その程度のバグならコードを見せればここの奴らがたちどころに解決してくれるさ

252デフォルトの名無しさん2017/02/21(火) 21:19:59.92ID:TetGQSj3
>>249
テストを書きましょう
テストを書かないから想像しようとするのです
想像なんていりません結果を知ればいいのです
結果を知るためにテストを書きましょう
標準ライブラリのunittestでもいいしメジャーなサードパーティ製テストフレームワークがいいならpytestなどもあります

253デフォルトの名無しさん2017/02/21(火) 21:22:16.11ID:aFqTV30T
キャッチしたところでデバッガを起動するようにしておいて
デバッガから気になる変数の中身を見ればいい

ただそのプログラムの内容からは良からぬニオイしかしないのだが…

254デフォルトの名無しさん2017/02/21(火) 21:33:53.80ID:2eA3CA9Q
ブルートフォースしたいの?

255デフォルトの名無しさん2017/02/21(火) 22:55:27.43ID:W13ccAg7
すみません、悪い事をしたい人の内容のように見えてしまうのですね
認知度が分からないので、こう書いて分かって頂けるか不安ですが、ビットコインを用いたbotトレードのプログラムを組んでいるのです
一定値以下(以上)の注文が出ていて利益がでるような場合に約定を行う取引をしているので、板の取得と約定させる為のpostを行うというプログラムがそうなるのです

>>251
解決したいのはコードを書ける能力の取得で、バグを取り除きたいのとは少し違うのです

>>252
unittestという名前そのものは見た事があるのですが、活用の仕方がさっぱりです
pytestをググって調べてみます

>>253
デバッガを起動するコードはどう書けば良いのかも分かりません、知識不足ですみません

256デフォルトの名無しさん2017/02/21(火) 23:05:37.42ID:aFqTV30T
ええぇ!?
そんなクリティカルなプログラム書くとか相当なチャレンジャーだな

257デフォルトの名無しさん2017/02/21(火) 23:09:57.10ID:W13ccAg7
今までプログラムはuwscでマウスマクロするぐらいしか出来なかったのです
まともに覚えたいなとC言語にチャレンジしてみたのですが、覚えても覚えても面白くありませんでした
そこでたまたまビットコイン取引のPythonライブラリに出会って自動取引で数十円ですが増えていく楽しさでプログラムって面白いと思えまして。。。
不純な動機からのスタートですみません

258デフォルトの名無しさん2017/02/21(火) 23:12:37.32ID:YCLculbK
動機が不純なのは大いに結構なんだけど、そんなクリティカルに自分の資産に効いてくるようなところでよく開発途中のプログラム動かすなあと思った

259デフォルトの名無しさん2017/02/21(火) 23:16:09.52ID:8I0Tfvzv
マジかぁクリティカルだなそれは

260デフォルトの名無しさん2017/02/21(火) 23:18:34.81ID:W13ccAg7
>>258
ほとんどの場合で正常に動いているのです
使っている資金も笑って済ませられる程度に納めています
しかし週に一度ほど捕まえられていないエラーで再起動している状態でして
そもそも自分のプログラム自体が投げっぱなしというか、エラーが起きたら終了してもう一度再起動すれば良いんだという投げやりなプログラムである事に絶望感を抱いてきました
これではプログラムとしてダメなのだろうと考え始め、エラーはエラーとしてログにも残し、エラーの処理をしっかりしなければ何を新しく覚えても意味がないと思ったのですが、あまりに無知過ぎてどうすれば良いのだろうと思った次第です

261デフォルトの名無しさん2017/02/21(火) 23:54:49.25ID:aZVtVmfL
>>260
ワイを1万円で雇ってくれたら、1ヶ月くらいレクチュアしてやるぞ(オンラインサポートのみ)

262デフォルトの名無しさん2017/02/21(火) 23:57:33.11ID:aFqTV30T
デバッガだけどIPythonのipdbってやつだと
from IPython.core.debugger import Tracer; debug_here = Tracer() と書いておいて
ブレイクポイントにしたいところにdebug_here()と書くといい

ただ今回の用途ならデバッガよりもエラー処理を学んでログ出力したほうが断然効率いいよ
apiの戻り値や加工処理結果を常にログ出力しておいてエラー発生時にもログ出力する

263デフォルトの名無しさん2017/02/22(水) 00:20:15.62ID:jpUU0ydx
>>261
ええっ?!1ヶ月で1万円ですか?
格安過ぎて怖いのですが

>>262
やっぱり都度エラーログを出力するようなのが遠回りなようで正解なのですね
tracebackが発生した時はメールで送信とはしていたのですが、どこでエラーが発生しているか完全に突き止め切れずだったので。。。
ただ、どうしても一つずつの処理にエラーをキャッチする処理を書く以外に私には思いつかないです
数百行に数百回書くしか。。。
そういうものだと言われればそうなのですかとしか言いようがないのですが、私にはあまりに経験値がなさすぎて、経験者の方が取り敢えずこうしておくというノウハウがないので総当たり過ぎてちょっと辛いです

あまりに迷子過ぎて教えて頂ける方がいるならば募集したい所なのですが、どこでやれば問題ないでしょうか?
skypeで音声通話しつつ双方の都合の良い日に1時間〜3時間ほどの範囲で支払いはビットコインで行える等であればすぐにでもお願いしたいです
スレの内容から逸脱した内容でしたら申し訳ありません

264デフォルトの名無しさん2017/02/22(水) 01:07:07.78ID:0Zw166EC
クラウドソージングに投げてみよう
ビットコインでは無理だけど

265デフォルトの名無しさん2017/02/22(水) 01:27:03.20ID:NAcKQUQP
現職マ歴4JavaPHPPythonScalaなワイが1万でコードレビューしてやるぞ
どや

266デフォルトの名無しさん2017/02/22(水) 01:44:25.92ID:xbKot+oa
>>265
初心者の俺に助言を頼む

じゃんけんゲーム
乱数要素ABC

配列に要素を登録して
出力(配列場所を基準)に+1で勝利評価 -1で敗北評価 等しいなら引き分け評価

配列最後の場合の評価は配列先端なら+1  残り  同等

全体の流れ
(入力側)乱数要素ABC→CPU側乱数要素ABC出力→勝利判定

長くなったゴメン 評価式の時に
配列の順番を+1の式が、どう書けば良いのか解らないので教えて下さい
m(;。_。)mオナシャッス

267デフォルトの名無しさん2017/02/22(水) 01:53:27.23ID:fluTtG1x
たくさん難しい言葉が出てきて理解できないんだけど…
となりのスレで見たことあるっぽいってのは置いといて
まず何を入力して何を出力するのかもっと簡単に説明してよ

268デフォルトの名無しさん2017/02/22(水) 01:54:52.74ID:NAcKQUQP
>>266
要件というか何がしたのかわからんから何ともだが
その設計はおかしい

269デフォルトの名無しさん2017/02/22(水) 02:16:50.31ID:jpUU0ydx
>>264
そういったサイトもあるのですね。
質問がピンポイントで的確になっている場合は利用してみたいと思います!

>>265
レビューというと私のコードを見ていただいて、適宜修正案等を教示していただけるという事でしょうか?
そちらも大変うれしいのですが、初心者特有の分からないが分からないなのでうまく質問出来るかも不安です。。。

あまりスレの内容に適していないと思いますが、一度だけご容赦下さい。
こちらはPythonからスタートしてプログラミングというそのものの知識がアベコベです。
スレに書いた内容に関しては独学で調べてどうにか動くプログラムまでは作成出来ていますが、基本的にこうすべきということが一切分かっていません。
Pycharmを主として使用していて、vagrant?virtualenv?仮想環境とはどういった場合に利便性があるのか
Django、Bottle、Flask等のPythonwebフレームワークとは何なのか教示出来る方(知識0です)
基本的にエラーとはどう処理すべきでログはどう残しておくべきか
読むべきソースコードとその有用性と読んだ上での疑問点に答えていただける方
どれでも構わないのでSkypeを使用して音声による質疑応答に対応していただける方で
双方の素性は連絡手段以外に一切開示の必要がないよう対価はビットコインやギフト券等で応じていただける方
ご連絡下さると嬉しいです。

python☆btc☆challenge☆gmail.com
最初の二つはドットで三つ目は@です

270デフォルトの名無しさん2017/02/22(水) 02:20:01.20ID:xbKot+oa
>>268
嘘やろ?

A=グー B=チョキ C=パー
だから、+1,-1 で勝利判定できると思ったのに……

自分側ABCのどれか一つ CPUの乱数ABCどれか一つ
自分の出した乱数からCPUの出した乱数の位置を基準に勝利判定したい

例 自分A相手Aで引きかけ
自分 A 相手 B  (自分側の勝利) AB +1
自分 B 相手 A  (相手側の勝利) 自分の負けとして相手を勝利させる BA -1
自分 C 相手 A  (相手側の勝利) CA +1(先頭に戻る)

271デフォルトの名無しさん2017/02/22(水) 03:59:35.48ID:fluTtG1x
>>269
チュートリアルとかを一通りやって1〜2冊本を読むのがいいと思う
https://docs.python.org/3/tutorial/
https://docs.python.org/3.6/howto/logging-cookbook.html
https://docs.python.org/2/howto/doanddont.html#exceptions

フレームワークとか開発環境の話は後でもいい

272デフォルトの名無しさん2017/02/22(水) 07:36:16.56ID:NAcKQUQP
>>270
ワロタ
ABCってグチパのことかよ

アンタの入力を返す関数
ランダムな数値を返す関数
数値によって決まった手を返す関数
引数2つの強弱判定してスコアを返す関数

この組み合わせでいけるだろ
ABCを配列にする意味がない
せめてEnumにすべき

273デフォルトの名無しさん2017/02/22(水) 10:56:27.32ID:eMNezfX1
Haxe で書いた。Pythonに変換して
http://try.haxe.org/#7e342

var JANK = [ "gu"=>1, "cho"=>2, "pa"=>3 ];

var player = "gu";
var cpu = "cho";

var num = (JANK[player] - JANK[cpu] + 3 ) % 3;
trace( num );

var message:String;

switch( num ) {
case 1:
message = "Computer Win!";
case 2:
message = "Player Win!";
default:
message = "Even!";
}
trace( message );

274デフォルトの名無しさん2017/02/22(水) 11:42:25.50ID:NwTryTSd
haxeからpythonに変換できるだろ?何のためにhaxe使ってるの?

275デフォルトの名無しさん2017/02/22(水) 12:51:27.89ID:gb4HH2mm
>>270
インポrandom
ぢぶん = input("グーかチョキかパー")
ifぢぶん ==グーなら0、チョキなら1、パーなら2
あいて = random.randint(0,2)
if(ぢぶん-あいて+3)%3
0ならあいこ、1なら負け、2なら勝ちprint

一行で勝率判定できる(A-B+3)%3が知りたかっただけだろうけど。
あとこのじゃんけんのやつ、イルカ飛行机の入門書に丸ごと書いてある。あれは初心者におすすめの本

276デフォルトの名無しさん2017/02/22(水) 13:36:43.38ID:xbKot+oa
>>272
>>275

ありがとう、愛してるぜ!!(今だけ)

277デフォルトの名無しさん2017/02/22(水) 16:52:13.42ID:x0LXFWQg
>>276 井伊直虎か?

278デフォルトの名無しさん2017/02/22(水) 17:47:31.14ID:jpUU0ydx
当然なのでしょうがメールは頂けませんでした。。。
試行錯誤してみます!

>>271
今使う覚えたい事しか覚えない性格でこうなっているのだと思うので
例示していただいたチュートリアルを一つずつやってみます!
アドバイスありがとうございますm(__)m

279デフォルトの名無しさん2017/02/22(水) 21:46:11.92ID:CgwYVmjb
超初心者です、先生方教えてください!

sqlite3で、
curs.execute("""SELECT * FROM hoge ORDER BY hage DESC LIMIT 変数, 25""")
って具合に変数を組み込みたいのですが、どうすれば良いでしょうか。

280デフォルトの名無しさん2017/02/22(水) 21:57:23.86ID:uSNnz1NM
>>279
こんなんでいいのか

curs.execute("""SELECT * FROM hoge ORDER BY hage DESC LIMIT %s, 25"""%変数)

281デフォルトの名無しさん2017/02/22(水) 22:03:02.11ID:CgwYVmjb
>>280
ありがとうございます。

それだとcannot operate closed cursorと言われて上手くいかないんです...

282デフォルトの名無しさん2017/02/22(水) 22:05:22.16ID:fluTtG1x
気をつけようSQL Injection
https://docs.python.org/3.6/library/sqlite3.html

283デフォルトの名無しさん2017/02/22(水) 22:12:19.37ID:5qWR99AP
curs.execute("""SELECT * FROM hoge ORDER BY hage DESC LIMIT ?, 25""", (変数,))

284デフォルトの名無しさん2017/02/23(木) 08:00:40.21ID:9j19p/xB
>>281
> それだとcannot operate closed cursorと言われて
パラメータ云々以前の話じゃね?

285デフォルトの名無しさん2017/02/23(木) 09:40:01.23ID:6aLFaur8
一理ある

286デフォルトの名無しさん2017/02/23(木) 11:06:02.78ID:LR/71aIp
pip使ってインストールした時に依存するパッケージも一緒にインストールされますけど
例えばfacebook製tornadoなど。pip install tornado

更新する場合は-Uつけてますけどpip install -U tornado
依存するパッケージなども更新されるのでしょうか?

287デフォルトの名無しさん2017/02/23(木) 17:14:10.21ID:boStFqTs
>>286
pip help installで-Uオプション見れば書いてるよ

288デフォルトの名無しさん2017/02/23(木) 21:44:02.96ID:XJ4ASJac
エラー処理の方法について質問です。
定期的に実行するスクリプトを作っているのですが、予期しないエラーが出た場合にどうやって通知をすればいいんでしょうか。
1.loggingを使って.logファイルに出力する
2.try文を予め組み込んでおいて、規定の処理以外が出た場合(エラー時)に通知をする
3.その他

289デフォルトの名無しさん2017/02/23(木) 22:09:32.41ID:KME3N98n
>>288
どうやって、定期的に実行するようにしてるのかと望む通知方法を書いた方がいい
logを残すのとは通知をするのは別の話

290デフォルトの名無しさん2017/02/23(木) 22:17:37.46ID:h64OL8bZ
>>289
cronです。
今は規定の動作の場合のみ通知をしているのですが、想定外のエラーが起こったときに、その通知とバグの特定をしたいと思いまして。

291デフォルトの名無しさん2017/02/23(木) 22:17:43.63ID:Q0T8wXh7
好みなんだろうけど
cronでシェル叩くなら、自分はlogに書くかな

292デフォルトの名無しさん2017/02/23(木) 22:38:48.91ID:qeINelhJ
Mac上で例えばブラウザで選択されている文字を
取り込んでPythonで処理するような事を
Pythonだけで行う事は可能でしょうか?
現状Automatorを介してPythonに引き渡して対応しています。
クリップボードに入っているテキストなら
Python だけで行う事が出来るとこまでは調べて分かったのですが。

よろしくお願いします。

293デフォルトの名無しさん2017/02/23(木) 23:21:29.93ID:v0zRNZ3l
>>290
想定外のエラーが発生したらE-mail等で自分に連絡するようにすれば良い

294デフォルトの名無しさん2017/02/23(木) 23:35:55.85ID:c1QVdaUC
お前が監視するんだよ!

295デフォルトの名無しさん2017/02/23(木) 23:40:32.11ID:02UQYlKd
これがそうだとは言わないが、
バイトを雇うのが最適解だなって時はあるよな

296デフォルトの名無しさん2017/02/23(木) 23:42:55.89ID:boStFqTs
>>292
Pythonだけでの想定範囲にもよるけど基本無理じゃね?
Automatorの代替でAppleScript使うか
Pythonスクリプトを実行できるようなブラウザのアドオンを探すか

JavaScriptを実行できるようなアドオンはそこそこあると思うよ

297デフォルトの名無しさん2017/02/24(金) 00:10:44.14ID:hcCi+TdT
>>288
ログ出力するかどうかとtry/exceptでエラーをハンドリングするかどうかは独立した項目だよ

エラーハンドリングは最初にエラーの種類とそのエラーが発生したときにどう対処したいかを考える
エラーの種類ってのはざっくり言うとビジネスエラーかシステムエラーかと回復可能か回復不能か
どう対処したいかはアプリケーションを停止させたいとかリトライしたいとか
ログだけ残してアプリは継続稼働させたいとか

で下位のレイヤーで発生したエラーは何でもかんでもとりあえずログだけ出力してアプリを停止したいとかなら
一番上位のmain関数的なところでそういうハンドリングをするtry/exceptを書けばいい
ハンドリングしたいところでだけtry/exceptを書く

エラーの種類についてはいろんな分け方・考え方があるから詳しく知りたければググって

298デフォルトの名無しさん2017/02/24(金) 00:20:30.65ID:aFzxanwK
>>296
無理でしたか、ありがとうございました!

299デフォルトの名無しさん2017/02/24(金) 00:52:01.89ID:wGBUe+Mz
ブラウザーをエミュレートすれば?

Selenium WebDriver とか、
Rails4 + Capybara + PhantomJS (poltergeist)

300デフォルトの名無しさん2017/02/24(金) 01:07:03.31ID:hcCi+TdT
>>299
文字を選択するところが自動化できないから今のやり方してるんじゃない?

301デフォルトの名無しさん2017/02/24(金) 03:16:34.05ID:wxgF2xWD
スクレイピングでは対応できない感じの処理なのかな?

302デフォルトの名無しさん2017/02/24(金) 03:20:15.41ID:Qm5h7Mta
エッチなファイルの名前漬けやろ

303デフォルトの名無しさん2017/02/24(金) 08:45:36.42ID:VfqFzJAP
>>292
テキストだけなら、ブラウザPythonで自作しちゃえば。そんなに、むずかしくないよ

304デフォルトの名無しさん2017/02/24(金) 09:28:40.78ID:PzeYdyhy
Google検索結果で表示されるサイト一覧をクロールしてたのですが、何件かやるとbot判定されたようでキャプチャーに入力を求められます。
回避する方法など無いでしょうか?

305デフォルトの名無しさん2017/02/24(金) 09:51:51.73ID:CMR8Gyi/
Googleのrobots.txtを見るとわかるように、検索結果のクロールは禁止されている

その上でどうしてもやりたいならクロール頻度を落として様子を見る
10秒に1ページ開く程度まで低速にすればまずばれまい

306デフォルトの名無しさん2017/02/24(金) 11:23:35.02ID:LPigsurN
>>290
cronなら出力をメールで送れるように設定できる
MAILTO

307デフォルトの名無しさん2017/02/24(金) 12:43:21.15ID:YZGHPd2K
>>290
通知の話とエラー解析の話は別だよ
通知は >>306 の言うように cron の設定
エラー解析のためのログ等はプログラムによるとしか言えない

308デフォルトの名無しさん2017/02/24(金) 13:07:05.86ID:dZjvDhSd
Python3.5で標準ライブラリtraceback周りが改良されて
例外時のコールスタック各段階のglobalsとlocalsが得られるようになってるね

309デフォルトの名無しさん2017/02/25(土) 00:32:50.53ID:HesvebqU
win10+py3.6(anaconda4.3)だとtensorflow入らないんだけど
py3.6維持したまま3.5(とtensor)インスコできたりしないですよね?
おとなしくanaconda4.2に戻すべき?

310デフォルトの名無しさん2017/02/25(土) 00:40:30.26ID:IvVV1H8V
anyenvとかpyenvとかじゃだめなん?

311デフォルトの名無しさん2017/02/25(土) 01:04:36.03ID:ZZ7bz2+n
pipとかpyenvとかanalcondaとかanyenvとか
もうなんなんなんだよ!!

312デフォルトの名無しさん2017/02/25(土) 01:08:40.34ID:mPXEoMFs
pyenv analconda git はいまだに使い方わかんねーわw

313デフォルトの名無しさん2017/02/25(土) 01:13:25.60ID:m3mFnvdx
>>312
すごい予測変換だな

314デフォルトの名無しさん2017/02/25(土) 01:14:56.04ID:IvVV1H8V

315デフォルトの名無しさん2017/02/25(土) 06:50:45.26ID:bDlVJdoV
尻の穴みたいなディストリだと思ってるから発言に出てきたのだろう

316デフォルトの名無しさん2017/02/25(土) 08:57:43.71ID:IuYyalJ8
古い人間なので、文字コードと言ったらシフトジスしか知らない世界に生きてきた
ゆえに近年広まってきたユニコード勢力が恐ろしくてたまらない
スクリプトはシフトジスが標準のエディタで書いているし、処理するデータもシフトジスだ

そういう職場でPython3.3で運用しているスクリプトがたくさんあるのだけど
もし3.6にしたら、エラーを吐いたり誤動作したり、Pythonが吐き出す
テキストが勝手にユニコードになったりするのだろうか?

>PEP 528 and PEP 529, Windows filesystem and console encoding changed to UTF-8.
この文が死刑宣告に見えてしまう
スクリプト先頭に #coding:cp932 があれば大丈夫?

317デフォルトの名無しさん2017/02/25(土) 10:26:44.63ID:bBHLw00I
>>304
今のgoogleはきついよね
俺もやろうとしたけど何やっても回避できなかった
諦めてyahooから取得してる

>>305
1分以上3分以内の間隔のランダムスリープでも駄目だったよ
間隔とかじゃなくてなんか違う方法でbot判定してるっぽい

318デフォルトの名無しさん2017/02/25(土) 10:39:42.28ID:g1o1M7kt
素直にAPI使おうぜって事やないの

319デフォルトの名無しさん2017/02/25(土) 10:40:28.66ID:ISi/aKp5
>>309
windowsでpythonの3.6と3.5を共存したい理由って何?
linuxとかでマイナーバージョンを共有することでもあなりしないのに
windowsでそんなことしてどうするの?

320デフォルトの名無しさん2017/02/25(土) 10:46:33.95ID:ISi/aKp5
>>309
あとどうしてもpython 3.6でtensorflow使いたいなら自力で
https://github.com/tensorflow/tensorflow/issues/6999
特定のライブラリ使いたいためだけにpython 3.5と3.6を入れるようなことはあまり感心できないね

321デフォルトの名無しさん2017/02/25(土) 10:48:29.69ID:ISi/aKp5
>>316
>もし3.6にしたら、エラーを吐いたり誤動作したり、Pythonが吐き出す
>テキストが勝手にユニコードになったりするのだろうか?

憶測で語らないでね
実際にトライしてトラブルになったら聞きに来てね

322デフォルトの名無しさん2017/02/25(土) 11:01:58.61ID:8zKCV9EA
>>318
api100件までの制限ある

323デフォルトの名無しさん2017/02/25(土) 11:18:40.11ID:6KEih4jH
>>316
3.6からコンソール入出力とファイルパスで使うエンコーディングが
ANSI(日本語環境では通常Shift_JISあるいはCP932)からUTF-8に変わった

以前の挙動に戻したいなら環境変数PYTHONLEGACYWINDOWSSTDIOや
PYTHONLEGACYWINDOWSFSENCODINGを設定してインタプリターを起動する
https://www.python.org/dev/peps/pep-0528/#add-legacy-mode
https://www.python.org/dev/peps/pep-0529/#add-legacy-mode

スクリプト先頭にマジックコメント書くのは
ソースファイルのエンコーディング指定なのでPEP 528、529とは無関係

324デフォルトの名無しさん2017/02/25(土) 12:04:00.62ID:ZgRLWjLK
課金した者だけ許可されるんじゃなかったっけapi経由での検索結果大量取得って

325デフォルトの名無しさん2017/02/25(土) 13:00:52.44ID:5nIvEaeP
文字列操作なんですけど、re.splitやre.subを使わずに、split()やreplace()を使う理由って何ですか?
文字列操作は正規表現を使ったほうが、便利だと思うんですけど、そうじゃない理由があるんでしょうか

326デフォルトの名無しさん2017/02/25(土) 14:06:45.15ID:6KEih4jH
正規表現は表現力に優れているけどスニペットのベンチマークを測ると文字列メソッドの方がはやい
だから使い分ける必要がある

$ /opt/py36/bin/python3 -m timeit -s "import re" "re.split(' ', 'FOO BAR BAZ QUX HOGE PIYO')"
100000 loops, best of 3: 2.43 usec per loop
$ /opt/py36/bin/python3 -m timeit "'FOO BAR BAZ QUX HOGE PIYO'.split(' ')"
1000000 loops, best of 3: 0.761 usec per loop

$ /opt/py36/bin/python3 -m timeit -s "import re" "re.sub(' ', '/', 'FOO BAR BAZ QUX HOGE PIYO')"
100000 loops, best of 3: 3.1 usec per loop
$ /opt/py36/bin/python3 -m timeit "'FOO BAR BAZ QUX HOGE PIYO'.replace(' ', '/')"
1000000 loops, best of 3: 0.378 usec per loop

327デフォルトの名無しさん2017/02/25(土) 18:49:43.49ID:bDlVJdoV
大富豪的プログラミングだったら気にしなくていいだろ
赤貧的プログラミングならC言語とか使った方がいいな

328デフォルトの名無しさん2017/02/25(土) 20:42:23.78ID:NP4giB73
>>327
大富豪的・赤貧的プログラミングに笑っが、でも、その通りだよな

329デフォルトの名無しさん2017/02/25(土) 22:01:39.15ID:IvVV1H8V
中産階級だからstring.split/replace使うことにする

330デフォルトの名無しさん2017/02/25(土) 23:35:56.30ID:eR24TyuO
.split()メソッドって区切り文字無しで一文字ずつ分けることできないの?

331デフォルトの名無しさん2017/02/25(土) 23:38:18.36ID:Ot4yoOgj
list('ABC')やforで1文字ずつになるよ

332デフォルトの名無しさん2017/02/25(土) 23:42:59.11ID:IvVV1H8V
区切り文字を指定しなければwhitespaceで分割されるよ

'FOO BAR BAZ'.split()
#=>[‘FOO', 'BAR', 'BAZ']

333デフォルトの名無しさん2017/02/25(土) 23:44:51.91ID:eR24TyuO
サンクス。スゲー、list("abc")って
[“abc”]にならないんだ不思議
わざわざ内包表記で[i for i in “abc”]ってしてたわ

334デフォルトの名無しさん2017/02/26(日) 00:57:35.18ID:Z6GpW5ZG
文字列が、primitive じゃなく、iterable なんだろう

335デフォルトの名無しさん2017/02/26(日) 05:56:54.75ID:2i1axQxa
python3.5系列をインストールしてほかにもパッケージ追加したりして使ってます。
pipを使っていろいろパッケージを追加したりしていたのですが、tensorflowがうまく導入出来ませんでした。
そこでAnacondaをインストールしようとおもうのですが、そのまま普通にインストールしても大丈夫ですか?
これまでに入れているpythonやその他のパッケージと競合してしまわないか心配です。

336デフォルトの名無しさん2017/02/26(日) 07:51:30.11ID:bUk9ykN5
osは何?winならそのままインストールしてOK

337デフォルトの名無しさん2017/02/26(日) 19:35:14.58ID:KW1jvSVj
python3でqt5を使いたいんですけど使い方を調べてもあまり出てきません。どこを見て作ればいいのでしょうか

338デフォルトの名無しさん2017/02/26(日) 19:48:24.48ID:JlxiU+ns

339デフォルトの名無しさん2017/02/26(日) 20:35:13.74ID:qbYqdhND
tes=[1,2X,3,太郎5,6]みたいなintと複数の文字種のstrが混ざってるリストがあります
strが太郎なら4、それ以外の文字なら0に置き換えて
全部int型のtes=[1,2,0,3,4,5,6]みたいにしたいんですが、どういうやり方が簡潔でしょうか
要素の順番は上記のような置換場所を保持したいというか、ゴチャゴチャにできません

340デフォルトの名無しさん2017/02/26(日) 20:49:35.32ID:vMjLm6yK
>339
リストの二番目は、2Xになっているけど、2, Xの誤記という理解でいいかな?

341デフォルトの名無しさん2017/02/26(日) 20:51:13.78ID:vMjLm6yK
>340
より細かく言うと、2, "X" か。

342デフォルトの名無しさん2017/02/26(日) 21:39:14.90ID:uA6QDUs5
tes = [1, 2, 'X', 3, '太郎', 5, 6]
L = [x if type(x) is int else 4 if x == '太郎' else 0 for x in tes]
print(L)
こうかな

343デフォルトの名無しさん2017/02/26(日) 21:56:12.56ID:+I4Nnlvd
forとifとアペンドの組み合わせでいいんじゃね

344デフォルトの名無しさん2017/02/26(日) 21:57:45.64ID:+I4Nnlvd
ほんとリスト内包表記糞杉内

345デフォルトの名無しさん2017/02/26(日) 22:04:11.50ID:uA6QDUs5
内包表記はいいけど、3項演算子みたいな書き方が見にくいな

tes = [1, 2, 'X', 3, '太郎', 5, 6]
for i, x in enumerate(tes):
  if type(x) is str:
    if x == '太郎':
      tes[i] = 4
    else:
      tes[i] = 0
print(tes)

346デフォルトの名無しさん2017/02/26(日) 22:10:02.46ID:+I4Nnlvd
>>345
再代入してはいけない(戒め)

src = [1, 2, 'X', 3, '太郎', 5, 6]
dst = []
for x in src:
  if type(x) is str:
    if x == '太郎':
      dst.append(4)
    else:
      dst.append(0)
  else:
    dst.append(x)
print(dst)

347デフォルトの名無しさん2017/02/26(日) 22:30:38.24ID:/2VmdLBu
なんでintかどうかじゃなくstrかどうかからチェックしてるの?

348デフォルトの名無しさん2017/02/26(日) 22:49:04.24ID:dCBTOlVh
>>342
3項演算子使ったそれ読みにくいな
まぁ、3項演算表記自体が俺は好きじゃないからな

349デフォルトの名無しさん2017/02/26(日) 23:02:51.45ID:dCBTOlVh
>>347
処理するものを明確にしたいからだろ
intは何もしない
strは処理をする
なら,str処理コード書いたほうが良いよなって感じだろ

350デフォルトの名無しさん2017/02/26(日) 23:33:23.36ID:/2VmdLBu
>>349
なるほどね そういう考え方か
万が一floatとかが入ってた時にどうしたいのか次第だね

351デフォルトの名無しさん2017/02/26(日) 23:37:21.56ID:/2VmdLBu
読みやすさ的には変換処理を関数にして
リスト内包表記なりmapなりするのが良さそう

352デフォルトの名無しさん2017/02/26(日) 23:53:22.41ID:H0vEppIh
C風の?:の三項演算子の方が好き

353デフォルトの名無しさん2017/02/27(月) 00:07:38.26ID:qjhVDLKY
>>346
なんで再代入したら、いかんの?
メモリ節約できていいじゃない?

354デフォルトの名無しさん2017/02/27(月) 00:52:18.44ID:HtNOCsJ/
リストの書き換えや再代入はバグの温床
メモリ節約したいならCでも使え

355デフォルトの名無しさん2017/02/27(月) 05:54:37.43ID:RwLDhDHl

356デフォルトの名無しさん2017/02/27(月) 08:45:30.29ID:HwAqiqRw
いわゆる宣言的に書きましょうというやつですね

357デフォルトの名無しさん2017/02/27(月) 08:50:51.24ID:qIyoXB+n
>>354
なるほど
ありがと

358デフォルトの名無しさん2017/02/27(月) 10:38:19.21ID:cQVaqrK/
スペルミスを完璧に拾ってくれるならそれでもいい

359デフォルトの名無しさん2017/02/27(月) 16:10:34.51ID:ADDVNKtI
>>355
そのRubyのコードはちょっと..
三項演算子かCase文で
http://ideone.com/58eS5t

360デフォルトの名無しさん2017/02/27(月) 20:14:01.12ID:qiZwo82Q
とあるサイトの訪問歴のデータをindexにIDを、カラムに日付、訪問歴を0か1に加工し値としたデータフレームにしたのですが
連続何日訪問がなれけば以後訪問がないかどうか分析をしたいです
こういった場合どういう文を書けばいいですか?

361デフォルトの名無しさん2017/02/27(月) 21:25:13.14ID:ZmAmQRwL
実測値と仮の値、それと日数を軸にクロス検定でもすれば

362デフォルトの名無しさん2017/02/27(月) 21:41:23.59ID:h8PNoeud
みなさんはPyの前は何のプログラムをメインにやっていましたか?

363デフォルトの名無しさん2017/02/27(月) 22:14:46.87ID:ADDVNKtI
>>360
pandasは分からないけど
最長訪問間隔と最終訪問日からデータ取得日までの間隔をゴニョゴニョっとすれば?
普通はactive userと見なす定義が先にあるからもっと楽よね

364デフォルトの名無しさん2017/02/27(月) 22:49:30.35ID:9o9wou/Y
>>362
R

365デフォルトの名無しさん2017/02/27(月) 23:10:42.10ID:hm4WdBmx
python3で同一画像を検索する時のサンプルコードを見たいのですが
なんてググればいいですかね?
ググっても画像解析や保存方法とかがヒットして中々見つからなく質問いたしました
スレチだったらすいません

366デフォルトの名無しさん2017/02/27(月) 23:22:17.48ID:4akHxmur
2つの画像をチェックサムで文字列にして比較するとか

367デフォルトの名無しさん2017/02/27(月) 23:24:25.40ID:/PredHjy
>365

python3で同一画像を検索する時のサンプルコード で検索したら2件目にこんなのが出てきたよ。

http://techblog.adish.co.jp/entry/2016/07/07/Python%E3%81%A7Bing_Search_API%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E7%94%BB%E5%83%8F%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E9%9B%86%E3%82%81%E3%82%8B%E6%96%B9%E6%B3%95

これではダメなのかな?

368デフォルトの名無しさん2017/02/27(月) 23:32:40.79ID:+MBVHm9K
>>366
それ同一ファイル判断じゃないのか? 

>>365
同一画像ってのが、元画像は一緒だが、それをJPG、BMPに変換した
ものは同一画像になるのか?

369デフォルトの名無しさん2017/02/28(火) 00:01:46.72ID:NI2SydcR
イッヌの画像とネッコの画像はどっちもかわいいから同一やね

370デフォルトの名無しさん2017/02/28(火) 00:44:48.54ID:j+AZ7R4p
>>363
そういった定義がないのでゼロから作る感じなのです
何日連続訪問がなければ、次に訪問する確率が低いかを分析しないいけなくて

371デフォルトの名無しさん2017/02/28(火) 00:49:30.60ID:GGnDVRBO
みなさんレスあり
がとうございます。

>>368
拡張子がバラバラでも画像事態が同じなら問題ありません

と言うのもネット上の色んなショップの商品価格を比較するために画像で検索して一覧表示させたいと思っておりまして

372デフォルトの名無しさん2017/02/28(火) 01:23:42.97ID:NI2SydcR
お前が人工知能になるんだよ!

373デフォルトの名無しさん2017/02/28(火) 01:25:09.08ID:ibzrQKzn
俺?

374デフォルトの名無しさん2017/02/28(火) 01:32:52.78ID:hNGFaD+M
>372
メカニカルタルク使って、人力処理をクラウドソーシング

https://aws.amazon.com/jp/mturk/

375デフォルトの名無しさん2017/02/28(火) 06:57:58.39ID:jOzur1zo
>>371
好きなの選んでくれ

https://github.com/search?l=Python&q=similar+images&type=Repositories

376デフォルトの名無しさん2017/02/28(火) 19:34:52.58ID:D/wUlLjY
>>249ですが
指南の通りちょこちょことチュートリアルを進めています
varsなんて組み込み関数があったとは…
ソートや文字列処理も分かってなかった事だらけでかなり勉強になりました

377デフォルトの名無しさん2017/02/28(火) 21:52:19.25ID:y6w65z/e
複数の関数を経由した結果をreturnで受け取りたいのですが、どうすればいいでしょうか
以下のような場合だと、NONEになってしまいます。

def double(integer):
num = integer*2
plus(num)

def plus(num):
result = num + 2
return num


resultnum = double(12)
print(resultnum)

378デフォルトの名無しさん2017/02/28(火) 21:54:32.52ID:y6w65z/e
間違えてました。
正しくはこっちです。

def double(integer):
num = integer*2
plus(num)

def plus(num):
result = num + 2
return result


resultnum = double(12)
print(resultnum)

379デフォルトの名無しさん2017/02/28(火) 21:55:54.92ID:/3ipYWZu
間違えてました。
正しくはこっちです。

def double(integer):
num = integer*2
return plus(num)

def plus(num):
result = num + 2
return result


resultnum = double(12)
print(resultnum)

380デフォルトの名無しさん2017/02/28(火) 21:57:13.94ID:VYorfgJV
http://ideone.com/mV6a43
return忘れてるだけ

381デフォルトの名無しさん2017/02/28(火) 22:04:19.94ID:y6w65z/e
>>380
アドバイスどおりにやったらできました。
ありがとうございました。

382デフォルトの名無しさん2017/02/28(火) 22:08:38.37ID:VYorfgJV
お礼なら>>379

383デフォルトの名無しさん2017/02/28(火) 22:26:17.07ID:GGnDVRBO
>>375
ありがとうございます。

384デフォルトの名無しさん2017/02/28(火) 22:36:06.62ID:NI2SydcR
ガイジかよ

385デフォルトの名無しさん2017/03/02(木) 00:31:44.51ID:lTUyUSKG
すみません。
python超初心者ですが質問させてください。

コンソール上で外部ライブラリをpip install ●●でインストールして、
successfully installedと表示されたのでインタラクティブシェルを起動してimportしようとしたのですが、
No modules named ●●と出てしまいます。。
実行場所はC:\Users\ユーザー名 です。

実行場所をデスクトップ上の違うファイル上にして再度importを試みると何故かエラーが
解消されるのですが、これはどういうことなのでしょうしょうか?

386デフォルトの名無しさん2017/03/02(木) 01:04:22.85ID:1pkhaWGK
たぶんパッケージ名とモジュール名が違っていると思われる
例えば画像処理のパッケージPillowは、PillowじゃなくてPILという名前をimportする

有名なパッケージならネット検索でユーザーが書いた備忘録が見つかるはず

387デフォルトの名無しさん2017/03/02(木) 01:29:16.19ID:588eBO2g
requestsをインポートしたくてどうしてもできなくてハマった時は、自分でつくったrequests.pyを同じフォルダに置いてたせいだったわ

388デフォルトの名無しさん2017/03/02(木) 01:45:26.66ID:1GoX12fp
パスじゃねーの?

389デフォルトの名無しさん2017/03/02(木) 05:57:22.01ID:lTUyUSKG
>>386 >>387 Pillowやrequests様々試しましたが、全て同じ現象が起こります。。。
C:\Users\ユーザー名 のインタラクティブシェルでは全て全てno module named。。。
のエラーが出て場所を変えると問題なく読み込めるようになります。
pip listで確認してもしっかりインストールできてるみたいなので解決策がわかりません。。

390デフォルトの名無しさん2017/03/02(木) 06:46:33.90ID:1pkhaWGK
うーん、%USERPROFILE%にある隠しファイルやフォルダーが妨害してる?
AppDataやappdataとか、差し支えなければパッケージ名を教えてほしい

391デフォルトの名無しさん2017/03/02(木) 08:35:52.69ID:hHXRHESK
>>390
試したのはPillowです。
requestも試しましたが全て同じ現象で、C:\Users\◯◯(ユーザー名)では、上手くimportできず、場所をデフォルトの位置から変える、例えばC:\Users\◯◯\Desktopとしてimportすると、正常にimportできます。

初心者用の本に記載されてる通りに、入力してこのエラーが出るので原因が分からず困っている状況です。。

392デフォルトの名無しさん2017/03/02(木) 08:40:13.63ID:G3O59O8e
あ、それ、windowsの環境変数、PATHの設定だと思うよ。

393デフォルトの名無しさん2017/03/02(木) 08:40:36.12ID:0oUTdLuO
で、環境変数のPATH設定はどうなってるの?

394デフォルトの名無しさん2017/03/02(木) 08:41:09.87ID:G3O59O8e
PATH pythonでググるよろし。

395デフォルトの名無しさん2017/03/02(木) 09:34:05.55ID:hHXRHESK
>>393
また夜確認してみます。
ありがとうございます。

396デフォルトの名無しさん2017/03/02(木) 12:55:24.31ID:P3Of8bEp
カウントダウンを、1時間(hour)区切りで表示させたいのですが、どうしたらいいでしょうか

from datetime import datetime

date_str = "2017.03.08,20:30"
date = datetime.strptime(date_str, "%Y.%m.%d,%H:%M")
current = date.today()
left = date - current
print(left)

397デフォルトの名無しさん2017/03/02(木) 13:32:33.48ID:MJtRQMdL
str(left)
str(timedelta(days=left.days, seconds=left.seconds))
あと
current = datetime.now()
じゃねーの

398デフォルトの名無しさん2017/03/02(木) 16:35:10.55ID:8HiIPI6P
hours = left / timedelta(hours=1)
print('{} day {} hours'.format(int(hours/24), int(hours%24)))

399デフォルトの名無しさん2017/03/02(木) 19:05:32.39ID:X4z0kGE4
1時間区切りってどういう風に表示させたいのか例を提示して
たとえば
2017.03.08,20:00
2017.03.08,20:30
2017.03.08,20:59
の3つのパターンでどういう風に出力したいのか

400デフォルトの名無しさん2017/03/02(木) 19:39:15.67ID:43GgkRad
import subprocess
def getpb_data():
p = subprocess.Popen(['pbpaste'], stdout=subprocess.PIPE)
return p.communicate()[0]
clipboard=getpb_data()
print(clipboard)

mac でクリップボードのデータを受け取るのに
上のやり方だと2.7だと問題ないのですが
python3だと「b'あああ'」のように
前後に余計なものが入ってしまいます。
どうすればいいかご指導ください。
よろしくお願いします。

401デフォルトの名無しさん2017/03/02(木) 20:25:09.23ID:8HiIPI6P
Python3はユニコード文字列が標準なので
bytesから文字列を得るにはdecodeメソッドを使う
ttp://docs.python.jp/3/library/stdtypes.html#bytes.decode

402デフォルトの名無しさん2017/03/02(木) 21:04:30.14ID:lTUyUSKG
>>393 >>394

環境設定は
C:\Users\●●\AppData\Local\Programs\Python\Python36-32\Scripts\
C:\Users\●●\AppData\Local\Programs\Python\Python36-32\
C:\Program Files\Intel\WiFi\bin\
C:\Program Files\Common Files\Intel\WirelessCommon\
C:\Users\●●\AppData\Local\Microsoft\WindowsApps
C:\Users\●●\AppData\Local\atom\bin
です。

pip install Pillowをした際は
Requirement already satisfied: olefile in c\users\●●\appdate\local\
programs\python\python36-32\lib\site-package(from Pillow)
と表示されます。

この状況でC:\Users\●●でインタラクティブシェルでfrom PIL import Imageを
実行するとImport Errorが出ますが
C:\Users\●●\Desktopで同様に実行すると正常に動作します。

原因が分からず困っていますのでよろしくお願いいたします

403デフォルトの名無しさん2017/03/02(木) 21:46:43.25ID:G3O59O8e
>>402
念のために、両方の場所でインタラクティブシェルから、
python -V

で、バージョン確認してもらっていい?

404デフォルトの名無しさん2017/03/02(木) 21:53:57.78ID:8HiIPI6P
インタラクティブシェル上でなら
import sys
sys.version
sys.path

405デフォルトの名無しさん2017/03/02(木) 21:54:55.85ID:G3O59O8e
あと、システムの環境変数のPATH
に設定してあるよね?

ユーザーの環境変数のPATHじゃないよね?

406デフォルトの名無しさん2017/03/02(木) 21:55:49.47ID:G3O59O8e
>>404
ありがとう。まちがった。

407デフォルトの名無しさん2017/03/02(木) 21:59:56.40ID:G3O59O8e
⚫⚫って同じユーザーなのかなぁ、あとは、わかんないや。

408デフォルトの名無しさん2017/03/02(木) 22:08:20.30ID:G3O59O8e
>>405は⚫⚫が、同じなら問題ないはずなので、忘れてください。

409デフォルトの名無しさん2017/03/02(木) 22:11:04.47ID:BEfJi2q0
pipじゃなくてpython -m pip install ******でインストールしたら?
そしたらpython配下のpipで動かすから問題なくていけそうだけども

410デフォルトの名無しさん2017/03/02(木) 22:20:01.23ID:C/56Owqe
WinのPythonは
C:\Users\●●\AppData\Local\Programs\Python\
にインストールされるのか?
普通インストール先はC:\Program Files\の下じゃないのか
C:\Users\にインストールする理由なんかあるのか

411デフォルトの名無しさん2017/03/02(木) 22:27:01.74ID:lTUyUSKG
●●は同じです。verは3.5.1
sys.pathはC:Users\\●●\\python35.zip C:Users\\●●\\DLLs
C:Users\\●●\\lib C:Users\\●●
が表示されます。

他の場所からなら実行できるので、とりあえず気にせずすすめて問題ないものなのでしょうか?

412デフォルトの名無しさん2017/03/02(木) 22:31:39.04ID:C/56Owqe
>>411
>>402のpython36-32からして、
verは3.6じゃないのか

413デフォルトの名無しさん2017/03/02(木) 22:33:43.61ID:lTUyUSKG
>>412 確かにpythonは3.6をインストールしたはずです

414デフォルトの名無しさん2017/03/02(木) 22:37:40.47ID:BEfJi2q0
複数のpythonが入ってるのかな?

415デフォルトの名無しさん2017/03/02(木) 22:43:23.75ID:lTUyUSKG
>>414 いや3.6しかインストールした覚えはないですがおかしいですね。。

416デフォルトの名無しさん2017/03/02(木) 22:50:03.11ID:G3O59O8e
年のため、
windowsの設定→システム→アプリと機能
でプログラム一覧を表示して、pythonが
複数入ってないか、確認してみては?

417デフォルトの名無しさん2017/03/02(木) 22:52:43.91ID:M91eOor/
>>401
ありがとうございます!
上手くいきました。

418デフォルトの名無しさん2017/03/02(木) 22:53:21.03ID:8HiIPI6P
Windowsで複数入れてるなら↓この辺読んどいた方がいいよ
ttp://docs.python.jp/3/using/windows.html#python-launcher-for-windows
py -3.6 とか py -3.6 -m pip 〜〜 シェバンで#!python3.6 とか
py.exe経由なら環境変数設定しなくてもいい

419デフォルトの名無しさん2017/03/02(木) 22:58:54.73ID:C/56Owqe
>>411
あと、期待通りに動く他の場所での
sys.version
sys.path
がどうなっているか

420デフォルトの名無しさん2017/03/02(木) 23:43:26.68ID:lTUyUSKG
>>416 pythonは3.6のみでした
>>419 C:\Users\●●の場合、sys.verは3.5.1(正常に動作しない)
C:\Users\●●\desktop の場合sys.verは3.6.1でした。(正常に動作する)
またsys.pathも正常に動作する方はたくさん出てきたのに対して、3.5.1
   はC:Users\\●●\\python35.zip C:Users\\●●\\DLLs
C:Users\\●●\\lib C:Users\\●● のみでした。

これが原因のようですね。。。

どう対処すればよいのでしょうか??

421デフォルトの名無しさん2017/03/03(金) 00:08:24.81ID:87SfaZDc
いちど、全部アンインストールしてみては?

読んでいる本のバージョンに合わせて、
>>410
のようにインストールしなおした方が
今後同じような問題が起きなくてよいかと

422デフォルトの名無しさん2017/03/03(金) 00:38:03.00ID:Np6So+e2
>>421 python3.6をアンインストールしましたがpython3.5.1がまだ残っているみたいです。
プログラム一覧には表示されずどのようにアンインストールすればよいかわかりません。。

4234222017/03/03(金) 00:55:51.77ID:Np6So+e2
解決しました。

お騒がせしてすみませんでした。

424デフォルトの名無しさん2017/03/03(金) 00:58:14.69ID:87SfaZDc
おつかれ〜

425デフォルトの名無しさん2017/03/03(金) 01:53:29.75ID:qNGx19ng
いやいや一人で解決して終わらせないで何が原因でどう解決したのかフィードバックしてよ

426デフォルトの名無しさん2017/03/03(金) 02:38:29.50ID:GTe30Tvn
requirements.txt は一般的に使われてないのか?
パッケージマネージャが泣くぞ

427デフォルトの名無しさん2017/03/03(金) 06:52:18.08ID:hxiWJWmX
>>410
そのユーザーしか使用しないプログラムのインストール先らしい

428デフォルトの名無しさん2017/03/03(金) 08:57:38.72ID:Np6So+e2
>>425
python3.6.1と3.5.1がインストールされていました。全てアンインストールして、3.6.1のみ再インストールしたらいずれの場所でも正常に動作するようになりました。

429デフォルトの名無しさん2017/03/03(金) 09:30:39.70ID:51o7Ajq0
>>410
>C:\Users\にインストールする理由なんかあるのか
えぇ・・・
まじでいうてるん?

430デフォルトの名無しさん2017/03/03(金) 09:40:51.28ID:ec6XKBb0
ユーザー=管理者という意識しかないあたり
古き良きドザだなーって思う

431デフォルトの名無しさん2017/03/03(金) 10:11:43.60ID:timHRxQg
結論としては、リナックス使えってことでいいですかね

432デフォルトの名無しさん2017/03/03(金) 12:16:07.48ID:3NiNyTnS
システムドライブにインストールするのはマイクロソフト純正のプログラムとJavaとセキュリティー関連のみ
重要なものでないプログラムは全部Dドライブに置く
D:/programfiles/python
D:/programfiles/hidemaru

433デフォルトの名無しさん2017/03/03(金) 12:40:12.18ID:EIutg0nu
すべてのディレクトリはrootに通じる。Dドライブwww

434デフォルトの名無しさん2017/03/03(金) 12:50:21.60ID:BxIArQJG
CD分離は理想論なんだよなぁ…

435デフォルトの名無しさん2017/03/03(金) 14:21:59.48ID:IUFykjWp
うちのだとこんな感じなのでもう気にしてない
/c/programfiles/python
/d/programfiles/hidemaru

436デフォルトの名無しさん2017/03/03(金) 18:35:52.82ID:DXGvDfMC
インストールを必要としないプログラムは、Dドライブにおいた上で、
Cドライブにジャンクションかシンボリックリンクを張る

437デフォルトの名無しさん2017/03/03(金) 18:43:33.48ID:IUFykjWp
windowsならドライブ名無しのパーティションを
任意のディレクトリにマウント可能

438デフォルトの名無しさん2017/03/03(金) 19:24:27.02ID:Y7Ul6cjL
管理者側で全てのユーザー用にpython3.5入れて
それとは別にカレントユーザー限定でpython3.6入れてたんじゃないの

439デフォルトの名無しさん2017/03/03(金) 21:02:01.77ID:GTe30Tvn
どういう環境でもプロジェクトのディレクトリで
パッケージマネージャ使ってちゃんと管理すればいいだろ
もう

440デフォルトの名無しさん2017/03/03(金) 22:15:28.15ID:QiMDcuzn
Winの場合、共有なんかで絶対使いたくないわ
壊れる

441デフォルトの名無しさん2017/03/03(金) 22:17:49.87ID:6kLe4aCy
久しぶりにペチパー苛めたくなってきたわw

442デフォルトの名無しさん2017/03/03(金) 22:18:45.19ID:6kLe4aCy
あ、こっちじゃなかったw

443デフォルトの名無しさん2017/03/03(金) 23:02:07.24ID:VOPJZqjT
ずっとハゲマルだと思ってたわ

444デフォルトの名無しさん2017/03/04(土) 07:19:35.01ID:zTrwzCPr
>>385の質問が、意外な展開で伸びててワロタw

445デフォルトの名無しさん2017/03/04(土) 09:48:06.70ID:IfQ9fk2A
>>444
俺でも一言言える
って話はよく伸びる

446デフォルトの名無しさん2017/03/04(土) 10:02:31.78ID:Eu5vWziN
>445
パーキンソンの凡俗法則ってやつだね。
駐輪場の屋根をどうするかいう議論だと、素人でも何か言えるから、いろんな人が意見を出してくるという。

447デフォルトの名無しさん2017/03/04(土) 10:19:59.20ID:MypXAHYB
お、お、おではあがいろがいい!!

448デフォルトの名無しさん2017/03/04(土) 12:24:10.03ID:BoVYqd1h
お勉強スレではphpの悪口で伸びてるぞw

449デフォルトの名無しさん2017/03/04(土) 13:48:45.55ID:X2My6T7M
PHPってホンマ害悪やな

450デフォルトの名無しさん2017/03/04(土) 14:27:49.88ID:GRvQ2lmz
自演はもっと上手にやれ

451デフォルトの名無しさん2017/03/04(土) 14:38:19.08ID:5qiLAD8F
php7の登場でwebではpythonの負けだから妬ましいんだろう

452デフォルトの名無しさん2017/03/04(土) 15:30:28.05ID:X2My6T7M
今さらスカラー型宣言に嬉ションしてるペチパー見て
頭おかしいんちゃうかと思いましたね

453デフォルトの名無しさん2017/03/04(土) 15:56:34.73ID:5qiLAD8F
おっとphpのタイプヒンティングをパクったpython3.5の悪口はそこまでだ

454デフォルトの名無しさん2017/03/04(土) 16:08:28.35ID:K7CY3CbU
最近リスト内包表記を知ったのですが
下記のような処理はリスト内包表記で書けるのでしょうか?
よろしくお願いします

# [height,weight,age]
list = [[158, 50, 20], [172, 65, 30], [168, 68, 40]]

height = []
weight = []
age = []

for l in list:
height.append(l[0])
weight.append(l[1])
age.append(l[2])

455デフォルトの名無しさん2017/03/04(土) 17:12:25.84ID:GRvQ2lmz
できますよ

456デフォルトの名無しさん2017/03/04(土) 17:27:10.44ID:E4qVb9og
LL = [[158, 50, 20], [172, 65, 30], [168, 68, 40]]
height = [L[0] for L in LL]
weight = [L[1] for L in LL]
age = [L[2] for L in LL]

457デフォルトの名無しさん2017/03/04(土) 17:35:39.38ID:w8oEFYtv
>>454
アホか何でもかんでもリスト内包表記するな
リスト内包表記の内容を変数に代入するわけじゃないならそのままforで複数行で書けよ
l =[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
a = []
b = []
c = []
d = [(a.append(i[0]), b.append(i[1]), c.append(i[2])) for i in l]
print(a)
print(b)
print(c)
print(d)
可読性以前にこれ無駄だと思わない?


あと変数にlist使うのやめてくれる?
print(list)
> <class 'list'>

458デフォルトの名無しさん2017/03/04(土) 17:37:07.35ID:E4qVb9og
height, weight, age = [[x[i] for x in LL] for i in range(3)]

459デフォルトの名無しさん2017/03/04(土) 17:46:10.35ID:NAI/204b
LとかLLとかに比べるとlistのほうが100倍マシ

460デフォルトの名無しさん2017/03/04(土) 17:49:09.64ID:Y2JIEDEM
転置するなら、内包表記より、zip star が定番と思う。
height, weight, age = zip(*LL)
リストでなくて、タプルになってしまうけど。
リストが良かったら、
height, weight, age = map(list, zip(*LL))

461デフォルトの名無しさん2017/03/04(土) 17:56:02.94ID:K7CY3CbU
みなさんありがとうございます.
できるだけ高速に処理したいと思ってリスト内包表記を使おうとしたのですが…
今回のようなケースでは無理にリスト内包表記使うより普通にfor文で書いたほうがいいんですね.
(for文の方が3倍以上速かったので速度的にもメリットがなかったです)
変数の命名やzip star 等とても勉強になりました!!

462デフォルトの名無しさん2017/03/04(土) 17:58:02.62ID:6CtnXBqr
>>457
恥かいただけだなw

463デフォルトの名無しさん2017/03/04(土) 18:29:39.75ID:zFoXIyA1
良かった、numpyを持ち出す芸人はいなかった

464デフォルトの名無しさん2017/03/04(土) 20:04:58.79ID:tULbWKYn
python勉強しようかと思ったけど、

日本語問題

多すぎじゃね???

465デフォルトの名無しさん2017/03/04(土) 20:09:39.30ID:OncH7Lwj
変なとこで区切るなよ

466デフォルトの名無しさん2017/03/05(日) 11:52:07.11ID:A3Uyb28Y
このライブラリを使うとどんなメリットがあるのか教えてください
https://github.com/google/python-fire

467デフォルトの名無しさん2017/03/05(日) 12:17:09.52ID:A/U/P0+Q
Pythonのオブジェクトをlinuxコマンドライン上から呼び出せるようになる

468デフォルトの名無しさん2017/03/06(月) 04:52:27.02ID:4Tci6h80
調べたのですが、分からなく
スレッド違いの様な気もしますが書き込みます(初心者なので宜しく)

seleniumのインストールについて

linux firefox selenium python
詳細 Linux Mint 18.1 Serena

Mozilla Firefox for Linux Mint
mint - 1.0

Firefox 50.0.2

pythonで利用するには、どのアドオン(selenium)を使えば良いでしょうか?

469デフォルトの名無しさん2017/03/06(月) 05:49:57.09ID:HnHNX6ZC
「初心者なので宜しく」じゃねーよ
初心者って言えばなんでも許されると思うなよ

まず、お前は嘘をついている
絶対に調べてない
ほんとに調べてたらすぐに見つかる
それぐらい巷に溢れてる情報

そして板違い
アドオン探してるならfirefoxのスレ行けや

470デフォルトの名無しさん2017/03/06(月) 09:14:22.49ID:O0icHu9S
firefoxのバージョン位は調べてる模様

471デフォルトの名無しさん2017/03/06(月) 09:37:56.10ID:aALTLxMK
ハハハ

472デフォルトの名無しさん2017/03/06(月) 10:21:11.68ID:1QXcEAJ3
ググればすぐ分かるのに
こんなのも分からないって日本語の記事も読めない沼なんだね
しかもこんなアホもlinux使ってるんだ失笑
Mint使ってる時点で厨房なんだろうなあ

473デフォルトの名無しさん2017/03/06(月) 10:42:10.47ID:4Tci6h80
$ sudo pip install selenium
sudo: pip: コマンドが見つかりません

ぜんぜん、見つからん

474デフォルトの名無しさん2017/03/06(月) 11:02:34.79ID:4Tci6h80
>>472
意識高い系の勘違い野郎なのか?
OSなんて、個人の好みだろ?

賢くないとlinux使用しては行けない(笑)なんて、お前の法則持ちだされても困る
Androidも使うな(笑)なんて、言ってる奴の頭の中はどうなってんだ?

Android所持者は(所持しているだけで)賢くなければ成らない、法則なら
Androidシェア65%程度、という情報をどの様に解釈しているのか知りたい

Unix時代から誰でも使える様にと、開発して来た背景が存在しているのに
よく、そんな事言えたな

475デフォルトの名無しさん2017/03/06(月) 11:03:59.28ID:OUYDva0V
質問者発狂は草

476デフォルトの名無しさん2017/03/06(月) 11:19:20.53ID:YiqMtOLl
>>473
pipがないんやろ
sudo python -m ensurepip
してからやりなおしてみろ

477デフォルトの名無しさん2017/03/06(月) 11:29:05.13ID:5pBPOGsb
>>474
そんなんじゃなくて
「python selenium インストール」で検索することすらできない奴が、よくlinux環境を用意できたな
って感心されてんだよ

478デフォルトの名無しさん2017/03/06(月) 11:39:46.75ID:4Tci6h80
確かにww
これはプライドの高さと心の狭さの現れなので、見逃してくれ(笑)
mintだと端末から叩いても素直に通らないな


私はパッケージマネージャをスーパーユーザーで実行した
しかし、

W: ダウンロード権限を削除できません。
ファイル '/root/.synaptic/tmp//tmp_sh' がユーザ '_apt' からアクセスできません。
- pkgAcquire::Run (13: 許可がありません)


上記の様なエラーが出現した
しかし、インストールは成されている様子で、私には上記のエラーが
どの様な意味を持つか、知らない

インストールの確認をするの為に私は、ソフトウェアマネージャを使用して
確認をした。

下記に記載するURL:画像(スクリーンショット)では、
上記の様なエラーが存在(表示されても)しても、
インストールが完了していると判断できるのだろうか?


パッケージマネージャ
https://srv16.bitsend.jp/download/ce403ff350b8e2294e2fdfa9ef8b5ed9.html
ソフトウェアマネージャ
https://srv16.bitsend.jp/download/05d0d8d05b55c800fe4764141ff13bde.html

479デフォルトの名無しさん2017/03/06(月) 11:45:18.15ID:4Tci6h80
どうやら、私の環境ではpipは通常の方法では使えないらしい

ensurepip is disabled in Debian/Ubuntu for the system python.

Python modules For the system python are usually handled by dpkg and apt-get.

apt-get install python-<module name>

Install the python-pip package to use pip itself. Using pip together
with the system python might have unexpected results for any system installed
module, so use it on your own risk, or make sure to only use it in virtual
environments.

システムpythonのDebian / Ubuntuでは確実にpipが無効になっています。

Pythonモジュールシステムのpythonは通常dpkgとapt-getによって処理されます。

apt-get install python- <モジュール名>

pip自体を使用するpython-pipパッケージをインストールしてください。一緒にピップを使用する
システムのpythonがインストールされているシステムに予期しない結果をもたらす可能性があります
モジュールであるため、自己責任で使用するか、仮想でのみ使用するようにしてください
環境。


要はアレだろ?パッケージ落として来たら良いんだろ……???
どこだよ、パッケージ!!?

480デフォルトの名無しさん2017/03/06(月) 11:51:02.85ID:4Tci6h80
$ apt-get install python-pip
E: ロックファイル /var/lib/dpkg/lock をオープンできません - open (13: 許可がありません)
E: 管理用ディレクトリ (/var/lib/dpkg/) をロックできません。root 権限で実行していますか?

以下ループ

実行権限渡せば良いんだろうが、ああぁああああ( ゚д゚ )クワッ!!

481デフォルトの名無しさん2017/03/06(月) 11:58:49.75ID:4Tci6h80
何がrotが無いだふざけんな_| ̄|○ il||li
プログラム 'root' はまだインストールされていません。 次のように入力することでインストールできます:
sudo apt install root-system-bin

そして、rotで実行したら
root [0] apt-get install python-pip
Error: Symbol apt is not defined in current scope (tmpfile):1:
Error: Invalid type 'get' in declaration of 'install python' (tmpfile):1:
Error: Symbol get install python is not defined in current scope (tmpfile):1:
Error: Symbol pip is not defined in current scope (tmpfile):1:
(const int)0
*** Interpreter error recovered ***
root [1] apt-get install python-pip
Error: Symbol apt is not defined in current scope (tmpfile):1:
Error: Invalid type 'get' in declaration of 'install python' (tmpfile):1:
Error: Symbol get install python is not defined in current scope (tmpfile):1:
Error: Symbol pip is not defined in current scope (tmpfile):1:
(const int)0
*** Interpreter error recovered ***


どういう事?

482デフォルトの名無しさん2017/03/06(月) 12:03:21.74ID:hTYnx1/i
オマ環なんてどうでもいいから
ブログにでも書き込んでろ厨房

483デフォルトの名無しさん2017/03/06(月) 12:11:41.35ID:OUYDva0V
まあくだスレだしいいじゃん

Ubuntu14.4だと
sudo apt-get install python-pip
だったか
sudo apt-get install pip
だったかでいけたはずだけど、mintはよくわからん

484デフォルトの名無しさん2017/03/06(月) 12:15:13.85ID:4Tci6h80
>>482
いや、そういうの良いから……。

環境が違うので、操作できませんが通用する訳ないから

インタプリタエラーの所が解かんなくて困ってる
定義したら通るもんなん?宣言に無効な型get とか有るし
初心者にはキツイのかな?

485デフォルトの名無しさん2017/03/06(月) 12:25:01.73ID:4Tci6h80
>>483
ありがとう

Ubuntu14.4系列だから、
sudo apt-get install python-pip でインストールできた

一部省略で記載 ubuntuとは出ない模様
$ cat /etc/lsb-release
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=18.1
DISTRIB_DESCRIPTION="Linux Mint 18.1 Serena"

どうも(つд⊂)ゴシゴシ
ありがとうm(_ _)m

486デフォルトの名無しさん2017/03/06(月) 12:30:06.27ID:4Tci6h80
間違えた
Ubuntu 16.4だたt

すいません

アドオンの方はどれを入れたら良いのかは解決していないので、
ひとつ、お願いします((((;゚Д゚))))ガクガクブルブル

487デフォルトの名無しさん2017/03/06(月) 12:49:01.24ID:hTYnx1/i
>>484
流石初心者
チュートリアルを読み返せ

488デフォルトの名無しさん2017/03/06(月) 12:59:00.12ID:1QXcEAJ3
初心者日本一!初心者日本一!

489デフォルトの名無しさん2017/03/06(月) 13:12:31.68ID:5pBPOGsb
>>486
作業しながら参照してるサイトはどこ?
そのサイトのどの手順で詰まってる?

490デフォルトの名無しさん2017/03/06(月) 13:18:14.67ID:HnHNX6ZC
スレ住人にお願いあるんだけどよ
一番最初にレスした俺が言うのもなんだけども
こういう奴に中途半端に教えるぐらいならスルーしてくれないかな
もう遅いだろうけど相手にしちゃうと
開き直ってスレ違いの質問して連発して居座っちゃうから
野生のサルと一緒だよ
餌やったら調子に乗るだけ

お前らが優しいのはよく判ってるからこういう奴だけは
頼むからスルーしてくれ

491デフォルトの名無しさん2017/03/06(月) 13:19:37.95ID:OoqKwXZ/
俺もあまりに酷いと思ったけどテンプレを見ると許されそうだから黙ってた

492デフォルトの名無しさん2017/03/06(月) 13:33:12.05ID:YiqMtOLl
>>490
pipが動かないってのはギリギリpythonの話でしょと思ってレスした
Seleniumどうのこうのはスレチなので相手にすべきじゃないとおもう

493デフォルトの名無しさん2017/03/06(月) 13:41:10.51ID:HnHNX6ZC
>>492
俺が思うにpipのインストールすら自力で調べてできない奴相手にしちゃうと
それ以降の疑問点全部このスレに質問しに来るようになるぞ
実際上の方見るとそんな感じになってるじゃん

ググってすぐに解決策が見つかるような事聞くやつは
最初から調べる気なんて皆無だから「ググレカス」で終わりでいいと思う

494デフォルトの名無しさん2017/03/06(月) 13:49:49.17ID:4Tci6h80
なるほど、Seleniumの件は別の板で聞いてきます

文句言ってる奴は凄いな!
書き込むけど、一つも解決案を出さないなんて!!

495デフォルトの名無しさん2017/03/06(月) 14:10:50.89ID:HnHNX6ZC
>>494
いくらくだスレとは言えな、最低限の礼儀ってもんがあるだろ・・・
厳密に言えばpipの事だって、君がaptの使い方すら判らない事が問題
君の抱えてる全て問題はpythonが云々以前のレベルなんだよ
最低限ググるぐらいはしろよ

くだスレだから何でもokみたいな空気もあるけども
魚食いたい奴に魚やるんじゃなくて釣りの方法を教えるが如く
最低限のレベルに達してない奴には最低限ググって貰うべきだと思う
その方が後々質問者の為にもなるしね

496デフォルトの名無しさん2017/03/06(月) 14:18:40.22ID:OoqKwXZ/
>>494
うざ
そこでわざわざ煽る必要あんの?お前人間としてどうよ?

497デフォルトの名無しさん2017/03/06(月) 14:34:22.00ID:sPLW5FVC
プログラマーは環境構築できた後に、アプリを使うことしか出来ない。
資格もいらないから、給料が低い

一方、Linuxサーバー構築・運営者は、LPIC も必要だし、難しさが桁違い。
だから、給料も高い

だから初心者は、環境構築する必要がない、Webサイト上で、
ブラウザからプログラミングすべき

Linuxでは最初からシステムが、Pythonを使っているから、
システムのPythonを上書きしてはいけない

仮想環境を使うか、自分のホームディレクトリ以下に、封じ込められた環境内で、
テスト環境を作らないといけない。
自分のホームディレクトリ以上の階層は、システムが使うから、いじってはいけない

Linuxの階層構造・パッケージマネージャーなども、勉強する必要がある。
つまり環境構築するには、LPICが必要だから、皆それを勉強している。
君は勉強していないから、できないのは当然。魔法の杖はない

それか、chef, Docker などで、Selenium が入ったレシピを探してみるとか

498デフォルトの名無しさん2017/03/06(月) 14:38:41.87ID:4Tci6h80
個人的に面白くなって来た

隣近所にゴミの出し方をワザワザ教える人間を思い浮かぶ

本人視点で正義感(自分が正しい事をしてる)に酔っており、
近所の人間からすれば、ゴミの出し方は規定に則って居るので良い迷惑で有る

そして、コード規約でも同様の事が言える場面が多々有る


プライドの高い人間はどうして、もっともらしい事を言って
人格を攻撃するのだろうか?

自身の防衛本能が相手を攻撃するという複数の形で、働き
客観的な視点を見失う

これにより、人間関係に支障を来す(嫌われる)
しかし、彼らも人間で有り、誰かとのコミュニケーションを取りたいと願う
よって、どんなに迷惑な存在で有っても、嫌われても、しつこく絡んでくる傾向に有る(悪循環)

しかし、プライドの高い人間でも、技術能力に差が有り、慕ってくれる(尊敬して持ち上げてくれる)後輩には優しい
基本的に優位(偉大に成りたい)と言う願望が強く、巧く持ち上げてくれる存在が必須と言っても過言ではない


自分より頭の悪そうな人間を重視する事があり、
知らず知らずのうちに周りから敵対心や警戒感を持たれる場合があります

499デフォルトの名無しさん2017/03/06(月) 14:44:55.51ID:4Tci6h80
>>497
あぁだから、python2系列にpython3を入れようとしたら、エラーが出るのか……。
(別の所に置いたけど……。)

階層構造やLPICは特に意識した事なかったな
サイトの巡回を自動化したかったら、Seleniumを聞きました

どうも(つд⊂)ゴシゴシ
ありがとうm(_ _)mです

500デフォルトの名無しさん2017/03/06(月) 14:54:52.97ID:4Tci6h80
プログラマーは、もっと論理的な人達かと思ったら
感情文の方が多いのは何故なんだろうか?

それは置いといて、テスト環境は有った方が良いと思うが、
自分のホームディレクトリ以上の階層を操作しないと言うのは違うと思う

501デフォルトの名無しさん2017/03/06(月) 15:08:05.03ID:uYZWSNTw
プログラミングって自分で考えて作ったり解決したりするのが基本な世界でしょ
だから自分で何もせず問題を他人へ丸投げする者には厳しいのは当然

502デフォルトの名無しさん2017/03/06(月) 15:10:34.05ID:OUYDva0V
ID:4Tci6h80
流石にうるさ過ぎ
周りにも失礼だしそろそろやめとけ

503デフォルトの名無しさん2017/03/06(月) 15:13:04.34ID:4Tci6h80
>>495 名前:デフォルトの名無しさん :2017/03/06(月) 14:10:50.89 ID:HnHNX6ZC
>>496 名前:デフォルトの名無しさん :2017/03/06(月) 14:18:40.22 ID:OoqKwXZ/

この時間帯に書き込むって職業なにしてるの?

プログラム板に居るって事は、SEかPGなんだよね?

フリーで仕事っとって来れる文章能力な無い様に見える

なんで、そんなに偉そうなの?

>>その方が後々質問者の為にもなるしね
どうして、そんな自分勝手な結論になるの?

>>496
どんな人間になったら、正解なの?

ggったら何でもできるモンなの?
それなら、どうして2chなんかでモタツイてるの?

もしかして、君ら……○○なの?

504デフォルトの名無しさん2017/03/06(月) 15:14:13.29ID:4Tci6h80

505デフォルトの名無しさん2017/03/06(月) 15:17:01.27ID:4Tci6h80
あ?

506デフォルトの名無しさん2017/03/06(月) 15:21:00.04ID:8dEIvNW2
どんどん敵を増やしていくう

507デフォルトの名無しさん2017/03/06(月) 15:26:41.98ID:4Tci6h80
君らどこの学校でたらの? どんな資格持ってるの?
今までに発表できた資料はどれくらいあるの?
論文は出してないの?

もしかして、無名の大学だったりするの?
もしかして、資格無かったりするの?

もしかして、相手に知らない事が有ったら攻めるタイプなの?
もしかして、自分が知らない事を攻められた事がないの?
もしかして、自分の能力が凄いとか勘違いしてるの?
もしかして、知識量=頭の良さとか考えてるの?
もしかして、君らは平日の2時から2chなの?
もしかして、君らは仕事ができの?
もしかして、君ら無能なの?

508デフォルトの名無しさん2017/03/06(月) 15:26:58.83ID:sPLW5FVC
何百というアプリを正常に動かすのだから、
環境構築の難しさは、プログラミングより、桁違いに難しい。
環境変数PATHに、1つでもパスを追加したら、実行するアプリが変わってしまう

システムは、正常に動かすまでが一番難しい。
プログラマーは正常に動く所からしか、できない

アプリのバージョンには、依存関係があることすら知らない人も多い。
アプリが依存しているアプリのバージョンも含めて、インストールしなければならない。
アプリを個別にインストールしてはいけない

また、依存関係も含めてインストールできる、パッケージマネージャーを複数使ってはいけない。
パッケージマネージャー同士が、双方の存在を考えて作られてはいないから

chef などで、実験用の仮想OSを、別に作るのが、最も安全。
次に、Docker。
他には、Pythonの仮想環境

509デフォルトの名無しさん2017/03/06(月) 15:27:26.68ID:4Tci6h80
仕事しないの?

もしかして、仕事できないの?wwww

510デフォルトの名無しさん2017/03/06(月) 15:36:56.15ID:19uQr523
NGID:4Tci6h80

511デフォルトの名無しさん2017/03/06(月) 15:38:50.18ID:4Tci6h80
>>508
思ったより大した事言ってないな
ちょっと調べたら直ぐに分かるだろ?

一般ユーザーでさえ、バージョンが違うと挙動が違うって事ぐらい知ってる
プログラマーが環境構築できない(笑)なんて、どこでそんな間違った知識を蓄えたんだ?

必要に応じて、環境を構築するのは必須だろ?
むしろ、それが出来ないなら、ライブラリの追加で毎回、躓くうえに仕様変更に耐えられない

仮想環境 仮想環境って言ってるけど、UbnutuをUSBブートして実行した方が、
早い上に心配がない


もしかして、バックアップ形式の話をしてるの?
安全性、安全性とか言っても、個人なら費用は限られてる
フル、差分、増分 バックアップ方式

それ以前に、個人でミラーリングしてRAIDxでも使うの?
フェールセーフ?ホットスタンバイ? フォールトトレラントはどうするの?
デュアルシステムなの?デュプレックシステムなの?

セキュリティ管理はどうするの?
それ以前に業務モデルはどうなるの?

もしかして、勘違いしてるの?

512デフォルトの名無しさん2017/03/06(月) 15:40:29.63ID:tkAhRfWW
>>497, 508
そのレベルでそんな偉そうに長文書かれても困るわ

513デフォルトの名無しさん2017/03/06(月) 15:41:46.15ID:gswSb9xJ
ブログに書け

514デフォルトの名無しさん2017/03/06(月) 15:45:22.51ID:4Tci6h80
ggれ (゚Д゚)ハァ?

515デフォルトの名無しさん2017/03/06(月) 15:53:10.71ID:4Tci6h80
なんで、初心者スレに偉そうに居座るの?
もしかして、初心者から卒業できないの?

SQLが弄れる中級者になれても、アルゴリズム(仕組み)を考える上級者になれないの?
むしろ、中規模開発ですら、設計に躓いてる存在なの?

変な事聞くけど、まさかイキナリソースから書き出す人なの?
クライアント側の動作処理をサーバーでやっちゃう困ったさんなの?

516デフォルトの名無しさん2017/03/06(月) 15:53:58.05ID:bHNUMiIv
「わざとスレを荒らして面白がっている自分」を演じて自尊心を保ち始めちゃった
お前らがきつく言い過ぎたのが悪い

517デフォルトの名無しさん2017/03/06(月) 15:58:53.44ID:4Tci6h80
( ゚Д゚)ハァ?

518デフォルトの名無しさん2017/03/06(月) 15:59:10.33ID:4Tci6h80
( ゚Д゚)ハァ?

519デフォルトの名無しさん2017/03/06(月) 15:59:22.33ID:4Tci6h80
( ゚Д゚)ハァ?

520デフォルトの名無しさん2017/03/06(月) 16:00:15.25ID:4Tci6h80
こんなクソ スレ 二度と来ねぇよ!

テメェらは、一生ココに居ろ (゜∀。)ワヒャヒャヒャヒャヒャヒャ

521デフォルトの名無しさん2017/03/06(月) 16:01:39.78ID:gswSb9xJ
カワイイ

522デフォルトの名無しさん2017/03/06(月) 16:04:04.16ID:4Tci6h80
ぁぁぁぁああああああああああああああ
ウンコちたぃのぉおおおおおおおおおお

523デフォルトの名無しさん2017/03/06(月) 16:04:10.09ID:sPLW5FVC
プログラマーは、言語だけは知っているけど、
LinuxなどのOSについて知っている奴は、滅多にいない

コマンド・シェルスクリプトや、
ディレクトリ構成規格、FHS(Filesystem Hierarchy Standard)も、知らない奴が多い

Linux環境構築には、LPICの勉強が必要

プログラム言語とOSの勉強は、全く別。
OSの知識がないのに、プログラマーは出来ると思ってしまうだけ

524デフォルトの名無しさん2017/03/06(月) 16:06:35.12ID:gswSb9xJ
精神障害っぽいので事件起こす前に通報しておいた方が良さそう
もし事件起こしてもキチガイ無罪になるから被害者可哀想だし

525デフォルトの名無しさん2017/03/06(月) 16:12:05.78ID:4Tci6h80
超次元体の形状とは
正方形である可能性が高い

詰まった状態で動く構造を探しだすなら、永久機関とも言える
超次元体は自ら動く事ができず、また、押し寄せて来るクォークでも動く事はない
よって、超次元空間から流れて来る
なんらかの力エネルギー働いていると予想できる

あの熱量を逆算するならば、球体では摩擦力が足りる筈は無い
よって、角が目立つ形状であるのは間違いない

もちろん、超次元が宇宙の外側に繋がってると言う事ではなく
ワタシはスパイダーマンになると言う結論に該当する

そもそも、ワタシはどうして、エル宇宙船に搭乗できたのかを話す必要が有り、
味噌汁には七面鳥が入っていなければならないと言う結論になる
しかし、浮動回路はりんごの抵抗を無視して、形状Mの形に戻る
Bが力場に等しいなら、M25抵抗は振動によって変形し通常の0.028の傾きが生まれる

526デフォルトの名無しさん2017/03/06(月) 16:18:10.05ID:4Tci6h80
もしも、接線が超電導体を通るなら白いぬいぐるみに跳躍する
紫電帯には通常の遮断物空間よりルイス構造の溝に浸す必要性がある

発光原石はノイズがPによって、縮小され
ぴんくのバナナは回転する

527デフォルトの名無しさん2017/03/06(月) 16:22:05.87ID:4Tci6h80
と言うことは、一時的に空間が紅くなる
それと同時に重力が弱まるので、一時的に質量を持つ物質は浮遊する

528デフォルトの名無しさん2017/03/06(月) 16:25:20.39ID:4Tci6h80
つまり、君たちは外見にそぐわない服装で、灰色を好み
髪型や靴と服に執着している事になる

そして、外見は竜頭末尾になる
となると、低い机であぐらを描くように座っている可能性が強い
部屋は汚い事が上記により証明された

529デフォルトの名無しさん2017/03/06(月) 16:26:17.20ID:uYZWSNTw
mint python pip install でググって1番上のページでしょ
それを7時間以上も回答待ち続けたんだから・・・流し去りたくもなるか

530デフォルトの名無しさん2017/03/06(月) 17:24:11.56ID:4Tci6h80
なに言ってんだ?コイツら?

531デフォルトの名無しさん2017/03/06(月) 17:45:25.67ID:4Tci6h80
馬鹿にしやがって!!

お前らぶっころしてやるからな覚悟しろおyウェアtぃ;dげpクォhwrhいお@う

532デフォルトの名無しさん2017/03/06(月) 17:56:59.12ID:4Tci6h80
てめぇらなんて2chのゴミだ

さっさと消えろ ぼうgpは絵vろい

ファおvお@お絵wjhfd差j日@:f
アgmdslfjベウワv:;nafs;uh

533デフォルトの名無しさん2017/03/06(月) 17:56:59.16ID:gswSb9xJ
これはいけない

534デフォルトの名無しさん2017/03/06(月) 17:58:16.52ID:4Tci6h80
答えられないなら、黙ってろよ

ファクあdfヴォpほうq3rhvfhじflふぁdsfあsfだおfくぇ

535デフォルトの名無しさん2017/03/06(月) 17:59:24.92ID:OUYDva0V
答えただろうが
そろそろやめろ

536デフォルトの名無しさん2017/03/06(月) 18:04:00.86ID:4Tci6h80
テメェらの親はどんな猿やろうで、穴振りながら

お前ら見たいな無能を産んだだろうなwwwwww

むしろ、猿だから、考えせずに穴降ったんだろwwww

やっぱり、頭の悪い奴は親の頭も悪いんだろうなwwwww

537デフォルトの名無しさん2017/03/06(月) 18:07:33.18ID:4Tci6h80
答えた?wwww

俺の手柄だろうが!!!

勝手に横取りしてんじゃねええええよおぉおおおおおおおお!!!!

538デフォルトの名無しさん2017/03/06(月) 18:07:36.64ID:R4qOQgGq
30越えは久しぶりに見たな
乙おめ

539デフォルトの名無しさん2017/03/06(月) 18:16:22.91ID:4Tci6h80
良いか、テメェらの頭は穴と同じで
アヘアヘ いいうしか無いクソ野郎なんだよ

くそったれがぁあああああああああああああ

俺のプライド傷つけたんだから謝れやああああああああ

あjsrフォhクェwvじゃsfdjん;gえあ@wrgrq「うぃおvふぇwg

540デフォルトの名無しさん2017/03/06(月) 18:16:52.55ID:4Tci6h80
はやく


しろよぉおおおおおおおおおおおおおおおお

(゚Д゚)ハァ?

541デフォルトの名無しさん2017/03/06(月) 18:17:28.53ID:4Tci6h80
うるせええええええええええんだよぉおおおおおおおお


さっさと、謝れやあああああああああああああああ

542デフォルトの名無しさん2017/03/06(月) 18:24:23.42ID:4Tci6h80
てめぇらのクソちんこにふぁっくゅ〜〜〜wwwww

543デフォルトの名無しさん2017/03/06(月) 18:25:51.34ID:gswSb9xJ
通報しました
http://qb5.2ch.net/test/read.cgi/sec2chd/1488433267/291

プロバイダから家にお手紙来るだろうね

544デフォルトの名無しさん2017/03/06(月) 18:30:23.64ID:4Tci6h80
とにかく誤れやああああああ  はぁ?

テメェらが悪いんだろうが、あさああああああああ

速く、ぴんくのクマさんに誤れよぉおおおおおおお

お汁粉で関数ができあげあるだろうがあああああああああああ

545デフォルトの名無しさん2017/03/06(月) 18:32:57.34ID:4Tci6h80
いいから速く誤れよ

546デフォルトの名無しさん2017/03/06(月) 18:33:23.81ID:gAMvGUB9
>>531はまずいな
殺人予告だろ

547デフォルトの名無しさん2017/03/06(月) 18:35:40.24ID:4Tci6h80
手紙なんて来るわけ ねぇだろうがああああああ

頭おかしいんじゃねぇのか?www

548デフォルトの名無しさん2017/03/06(月) 18:35:53.71ID:z4gEaVrV
>>545
ごめんなさい

549デフォルトの名無しさん2017/03/06(月) 18:41:19.87ID:4Tci6h80
一言、謝ったら直ぐにでも辞めてやるよ!!

一人じゃねぇよ全員連れて来いよ!!! はああああああああああ????

ID:1QXcEAJ3
ID:5pBPOGsb
ID:hTYnx1/i
ID:HnHNX6ZC
ID:YiqMtOLl
ID:OoqKwXZ/


せっさっと、全員連れて請うfあごpwhfアポ@wh@さ

550デフォルトの名無しさん2017/03/06(月) 18:42:55.85ID:gswSb9xJ
「謝罪を求める…ニダ」

551デフォルトの名無しさん2017/03/06(月) 18:45:41.03ID:4Tci6h80
まぁ、良い

次に質問してきた奴を叩くだけだしな

552デフォルトの名無しさん2017/03/06(月) 18:59:47.51ID:4Tci6h80
「君の無駄にした時間で、好きな本が読める筈だ」

うるせぇえええんだよぉおおおおおお

「君の行動は論理的では無い」

うるせぇえええええええええ、つってんだろうがああああああああああ

「君の失くした時間を損失管理する必要がある」

頭の中で勝手に喋ってんじゃねぇえよおおおおおクソが!!!あぁあああ!!

553デフォルトの名無しさん2017/03/06(月) 19:00:21.39ID:4Tci6h80
光が見えるんだよぉおおおおおおおお

光がぁああああああああああ

554デフォルトの名無しさん2017/03/06(月) 19:01:48.35ID:4Tci6h80
人間どもがぁーーー!!!

人間が如きが クソ クソ

555デフォルトの名無しさん2017/03/06(月) 19:02:15.19ID:4Tci6h80
人間ごときが俺に指図してんじゃねぇえよぉおおおおおお

556デフォルトの名無しさん2017/03/06(月) 19:46:51.52ID:nD+dOaeE
考えるってのができずに感情が優先するのはしょうがないよね
毎日沢山の問題に対して考えて解決できるようになれば
感情的じゃなくなるから頑張れ

557デフォルトの名無しさん2017/03/06(月) 19:49:50.46ID:sbzCrjtf
優しい世界

558デフォルトの名無しさん2017/03/06(月) 19:50:13.16ID:AmE/TnLR
そして感情表現が苦手な上に考える事も下手な>>556であった

559デフォルトの名無しさん2017/03/06(月) 19:57:29.11ID:nD+dOaeE
なんでそこで煽ってくるんだよww

560デフォルトの名無しさん2017/03/06(月) 20:13:05.30ID:AmE/TnLR
>>559
なあに簡単だ
オレはオレのルールに従ってレスをしている
即ち「煽りやすいヤツは煽れ」
お前が気を悪くする必要はない
ただスレを開いたら煽りやすいヤツが居ただけの事だ

561デフォルトの名無しさん2017/03/06(月) 20:14:45.00ID:OUYDva0V
くっさ

562デフォルトの名無しさん2017/03/06(月) 20:27:18.24ID:AmE/TnLR
ひとこと言って反論した気になってるコミュ障は引っ込んでろよ。
なんかあるなら具体的に挙げてみろ。

563デフォルトの名無しさん2017/03/06(月) 21:22:07.54ID:CmbzzojE
春だなあ

564デフォルトの名無しさん2017/03/06(月) 21:49:19.02ID:AmE/TnLR
お前らホント自分が煽られるのは弱いのなw

565デフォルトの名無しさん2017/03/06(月) 22:09:49.77ID:2cHyhXyh
変数もimportできますか?

566デフォルトの名無しさん2017/03/06(月) 22:27:46.75ID:N9CE+T3T
いまのpythonユーザーだと今日のスレがユーザー民度にあうスレ状態だよな

567デフォルトの名無しさん2017/03/06(月) 23:01:13.79ID:2IThBSBv

568デフォルトの名無しさん2017/03/06(月) 23:26:52.74ID:4Tci6h80
>>565
できます

効率的にモジュールの利用が出来る反面、
インポートする側の名前空間からそれらのモジュールを直接アクセスできない

モジュール重複時には、
インポートする側の、名前空間を暗黙のうちに上書きしない特性を持ち、
モジュール名がそのまま名前空間名として働く

569デフォルトの名無しさん2017/03/06(月) 23:37:47.35ID:4Tci6h80

570デフォルトの名無しさん2017/03/06(月) 23:59:09.43ID:19hIM02E
>>565
importしたモジュールのフィールドに代入もできる(けど使いどころ選ばないと迷惑)

import time
time.timezone = 0 # 数値や文字列はもちろん
time.time = 10 # 関数やクラスすら書き換えることができるけど
# timeを利用している他のモジュールに影響が出るので軽い気持ちで書き換えてはいけない

571デフォルトの名無しさん2017/03/07(火) 10:46:31.21ID:40p93enT
sys.exit()を使わないで、現在のモジュールや関数から抜けられる方法はありますか?

first.py
import sys

print("a")
sys.exit()

secont.py
print("b")

third.py
import first
import second

こんな感じで、a,bと表示させたいのですが、これだとaだけ表示されて終わってしまいます。

572デフォルトの名無しさん2017/03/07(火) 11:13:52.85ID:d9uHkdDF
みんなの、みんなのパイチンくんだよ〜〜〜

573デフォルトの名無しさん2017/03/07(火) 11:56:05.62ID:8EVuxORy
>>571
sys.exit()消すだけで望む表示は出ると思うけど

574デフォルトの名無しさん2017/03/07(火) 12:10:38.70ID:bsRgFXRJ
>>573
正論ティーワロタァ!

575デフォルトの名無しさん2017/03/07(火) 12:26:40.69ID:RQZgocw4
この質問に至る経緯が謎だ
「確かにsys.exit()消せば動作するんですが実は〜」って来そうな予感

576デフォルトの名無しさん2017/03/07(火) 12:28:31.24ID:cugNxFV2
sys.exitの下になんか書いてあるのは無視したいんだろう

577デフォルトの名無しさん2017/03/07(火) 12:51:49.47ID:11f4Xsre
そういやPHPだとグローバルスコープでreturnすると制御が戻るとかあったな
Pythonだと例外を発生させて元でpassしろみたいなのしか見つからんな…

578デフォルトの名無しさん2017/03/07(火) 13:01:55.21ID:L/ZJybN4
>573

second.py というファイル名を
second.py に直すのもやらないと。

579デフォルトの名無しさん2017/03/07(火) 13:03:13.26ID:L/ZJybN4
>578
一つ目は
secont.py
です。お恥ずかしい。
スペルチェッカの仕業です。

580デフォルトの名無しさん2017/03/07(火) 13:13:48.03ID:8eqQMtf/
>>573
正解の気がしてきた。

581デフォルトの名無しさん2017/03/07(火) 13:14:09.77ID:8eqQMtf/
まちかい。>578

582デフォルトの名無しさん2017/03/07(火) 13:21:59.75ID:HSoiwTTc
>>571
モジュール
質問のとおりsys.exitはスクリプトが終了する
ファイルの途中でimportを止めるのではなくif-elif-else文を使って処理を制御する
http://ideone.com/zjKAtT

関数
return文を使う
http://ideone.com/RfJ6hR

583デフォルトの名無しさん2017/03/07(火) 15:47:06.84ID:8VeMjfKK
10匹の合計体重は32.5kgです。先月より2.2kg増えました。
みたいな、日本語+整数+小数の混じった(普通の)文章から整数と小数を取り出したいんですが、どうするのがよろしあるか?

本番の文章はもっと長くて、文字型の組合せはバラバラです。小数点以下は一位までのものしかありません

584デフォルトの名無しさん2017/03/07(火) 16:06:58.06ID:buHXdcTx
正規表現

585デフォルトの名無しさん2017/03/07(火) 16:59:08.35ID:JV/Gzrk0
完全な初心者です
for文とrange()関数の利用例として

for cnt in range(10):
print(cnt)

で0……9が出力されると説明がありました
このrange()の()内の数字は繰り返し回数を指定するんですよね?となると変数であるcntに格納される0〜9の数字はどこから出てきたんでしょうか

586デフォルトの名無しさん2017/03/07(火) 17:23:24.75ID:11f4Xsre
>>585
rangeインスタンスが生成する、これは繰り返し専用という訳でもなく
https://docs.python.jp/3/library/functions.html#func-range
というものだけど、for文はまずinの後ろからイテレータ(反復子)を取り出す
そしてソレからループ毎に次の要素を取り出して変数に割り当てる

https://docs.python.jp/3/library/stdtypes.html#iterator-types
内部的には↑これらを呼び出す、バラすとこんな感じ↓(超適当
it = iter(range(10))
while 1: print(next(it))

587デフォルトの名無しさん2017/03/07(火) 17:56:56.73ID:ViiM6aCK
>>583
とりあえず以下で検出できた
import re
s = '猫50匹犬10匹の合計体重は321.5kgです。先月より2.2kg増えました。'
pat = r'(\d+\.\d+)|(\d+)'
match = re.findall(pat, s)
if match:
____print(match)

検出できればmatchは(小数,整数)のtupleのlistが返る
matchからの取り出し方は自分で考えるよろし

588デフォルトの名無しさん2017/03/07(火) 20:18:08.34ID:ay/7q+Qm
print(”y:{}”.format(y.data))
ってしたら
y:[0.1 , 0.3 , 0.1 , ..... , 11.1 , 0.97]
みたいに出力されたのですが
なんで....で省略されるのですか??

589デフォルトの名無しさん2017/03/07(火) 20:41:28.06ID:ggNFKtYB
>>588
それが省略するよう実装されたクラスだったから

どんな風に文字列化するかはメソッド__str__の実装次第
ttp://docs.python.jp/3/reference/datamodel.html#object.__str__

590デフォルトの名無しさん2017/03/07(火) 20:47:47.14ID:JV/Gzrk0
>>586
ありがとうございました。理解できないことは理解できました
いずれ理解できるときが来ると良いのですが

591デフォルトの名無しさん2017/03/07(火) 21:06:06.93ID:GCbZW7KC
>>590
簡単に言うと、引数が1つのときは
ゼロから引数の一つ前までの整数のリストを返すのがrange()

592デフォルトの名無しさん2017/03/07(火) 21:12:35.83ID:11f4Xsre
>>588
理由は>>589だと思うけど{!r}を試してみるという手もある

>>590
内部的な話は少しアレだったかな…ともかくPythonのfor文は各要素をループ変数に代入するんだ
そしてrange()はPython2だとrangeインスタンスを返すのではなく、ただのリストを返すものだった
その頃の話だと単純で、range(10)は[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]になるという感じ
これはrange(0,10,1)と同等で、0以上10未満を1間隔で返すというもの、今は少し違うけど大筋は同じ

593デフォルトの名無しさん2017/03/07(火) 21:42:59.88ID:ViiM6aCK
>>590
range(10)の10は繰返し回数ではなくて終了値
rangeの引数の指定は
range(stop) と
range(start, stop[, step])の2通りあって
range(10)は10までの数の集まりを用意しろって意味になる
開始値(どこから)が指定されないと0からになるので0~9の数字が用意される
同じ10回の繰返しでも100~109の数字でループさせたければ
range(100,110)って書く

594デフォルトの名無しさん2017/03/07(火) 21:58:11.57ID:H6yYJeTo
>>571-582
Python の exit(), sys.exit(), os._exit() の違い
http://uchanote.blogspot.jp/2015/01/python-exit-sysexit-osexit.html

595デフォルトの名無しさん2017/03/07(火) 22:39:41.57ID:iVVLUimo
exit()はsys.exit()の省略形(sysモジュールはデフォルトでimportされているから)で
同じものだろうと思っていたのだが違うのか
ややこしいのう

596デフォルトの名無しさん2017/03/08(水) 03:26:04.28ID:Uljnsbub
ちょっとPythonマジ何なん

a_list.join(‘,’)じゃなくて’,’.join(a_list)… はあ? Joinに使う文字列は主役じゃないだろ
def prime_factors(n, factors=[]):ってデフォルト引数書いてると関数呼ばれるたびに同じリストインスタンスを… はあ!?
そんなところケチって意味あるの?

って思った
中途半端なオブジェクト指向を合わさって結構辛い

597デフォルトの名無しさん2017/03/08(水) 08:05:18.77ID:+VCDT32q
参考までにstr.join(sep, iterable)とも書ける(まあ書かないけど)
str.joinはメソッドなのでまだ序の口、次の踏み絵はlenだ

598デフォルトの名無しさん2017/03/08(水) 08:31:52.10ID:7c7kdLeu
イテラブルごとにjoinメソッド実装しなくていいよ

C++やC#などでも引数のデフォルトに指定できるのは静的なデータのみ。遅延評価する言語は少数派

599デフォルトの名無しさん2017/03/08(水) 08:58:32.01ID:0v48o5TS
さいきんGoをdisって50人くらいから袋叩きにされてる人を見ましたが
それに比べるとPythonって大したことないですね

600デフォルトの名無しさん2017/03/08(水) 09:00:18.69ID:U5noIHdN
>>599
そういう価値観でプログラミング言語を比較した事ないけども
たいしたこと無いと思うならそうなんじゃないかな

601デフォルトの名無しさん2017/03/08(水) 09:40:10.97ID:GBU/SbS8
マウント取りたい奴が今はGoやってる感じなので仕方がない

602デフォルトの名無しさん2017/03/08(水) 13:03:07.98ID:w7Nnu6Qd
vs2017でたよ〜pythonもつかえるよ〜

603デフォルトの名無しさん2017/03/08(水) 13:28:08.44ID:icCtDpEn
(パイチャで)いいです

604デフォルトの名無しさん2017/03/08(水) 14:53:33.95ID:Uljnsbub
>>597
>str.join(sep, iterable)
こっちのほうがまだいいね
lenはそういう言語なんだなってまだ諦めがつく

>>598
イテラブルごとにjoinメソッド実装する必要なんてないでしょ

605デフォルトの名無しさん2017/03/08(水) 15:04:06.59ID:CceDL3fb
その辺は昔から議論の的になって散々語り尽くされてた気がする

しかしVS2017正式版でもPTVSはインストーラに復活せなんだか
ローカライズ要件を満たしてないだか…更新で駆除された思い出

606デフォルトの名無しさん2017/03/08(水) 15:13:53.82ID:LioYldeQ
>>596
C/C++ 以外のすべての言語は、参照渡しだから、

関数の引数に、配列を渡すと、その配列が使いまわされる

607デフォルトの名無しさん2017/03/08(水) 15:21:45.57ID:dkUU6S15
最新のアナコンダでパイソン3.6がついてきました。
テンソルフローを入れたいのでパイソン3.5.2に下げたいのですが、どうすればいいですか?
3.5.2じゃないとインストールできないみたいなので困ってます、最初から入れ直しでしょうか??

608デフォルトの名無しさん2017/03/08(水) 16:08:16.03ID:pbXo4yfr
300〜330あたりで既出
入れ直しが早い

609デフォルトの名無しさん2017/03/08(水) 19:36:15.50ID:IHnyd3av
>>607
Anaconda入ってるなら$conda create
で仮想環境作れるから3.5の環境作ってsource activate すればオケ

610デフォルトの名無しさん2017/03/08(水) 20:05:30.87ID:tb3FKLip
みんなanacondaとかpyenvとか使っているんだ
なんか結局そのまま入れるのが一番楽だった
Macです

611デフォルトの名無しさん2017/03/08(水) 20:10:51.16ID:jS0zQn/F
初心者向けみたいなツラしてる割にいざトラブルが起きると100万倍ツケを払わされるのがAnaconda

612デフォルトの名無しさん2017/03/08(水) 22:04:12.29ID:U2hs0gzk
すみません超初心者です
pyOpenSSLをインストールしようと思ってそこでつまずいています
コマンドプロンプトからpip install pyopensslとうって実行すると
Collecting pyopenssl
  Could not fetch URL https://pypi.python.org/simple/pyopenssl/: There was a pro
blem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificat
e verify failed (_ssl.c:749) - skipping
  Could not find a version that satisfies the requirement pyopenssl (from versio
ns: )
No matching distribution found for pyopenssl
となります。どうすればいいでしょうか

613デフォルトの名無しさん2017/03/08(水) 22:22:59.35ID:bTjeQvLi
普通に入ってしまった・・・

614デフォルトの名無しさん2017/03/08(水) 22:25:46.28ID:rHvscfbf
あなた疲れてるのよ

615デフォルトの名無しさん2017/03/08(水) 22:45:53.56ID:tb3FKLip
ググって一番上に出てくるやつを読むと
macで3.6だとダメみたいだね。

616デフォルトの名無しさん2017/03/09(木) 00:01:05.15ID:P5CyRR/n
numpyで2*3の配列をprintしたら
[[ 0. 0. 0.]
[ 0. 0. 0.]]
こうなると思いますが
0 0 0
0 0 0
と表示するにはどうしたらいいでしょうか
要素はすべて2桁か1桁の整数であると仮定しています

617デフォルトの名無しさん2017/03/09(木) 00:43:40.39ID:ojEANMvi
>>616
>>> for row in arr:
... print(*map(int, row))
...
0 0 0
0 0 0

618デフォルトの名無しさん2017/03/09(木) 01:54:46.91ID:9+K5Dr1K
鯖の中落ち

619デフォルトの名無しさん2017/03/09(木) 10:54:49.61ID:Ui0PqFi6
サーバちゃんの中、大トロなりぃ・・・

620デフォルトの名無しさん2017/03/09(木) 12:55:36.74ID:4L4opgUu
九九を表示させるプログラムで躓いています
改行しないで、表示させるにはどうしたら良いでしょうか?

for i in range(1,10):
for n in range(1,10):
print i*n

621C2Q信者2017/03/09(木) 13:01:02.02ID:AotXJL+d
ここ数日間の雷禅祭り間の反応見てる限り
Core2からCoreiに乗り換えないでいた奴がやっぱ正解だったんだな。

なんかこういう時って本音ハッキリ出るし色んな所でマジレス飛ぶよね。
Coreiは確かに性能の上り方が微妙だしCPU内蔵GPUとか迷走してたもんな。

買い換えだのサブ扱いだのしてた奴がバカだったのがハッキリわかった

622デフォルトの名無しさん2017/03/09(木) 13:21:33.82ID:yD6uOEYO
最近はこの手の書き込みに「貧乏って辛いよね」以上の感想が出てこない

余裕のある収入って素敵だね

623デフォルトの名無しさん2017/03/09(木) 13:24:01.31ID:ojEANMvi
>>620
>>> for i in range(1, 10):
... for j in range(1, 10):
... print(i * j, end=' ')

624デフォルトの名無しさん2017/03/09(木) 13:50:36.42ID:6hqIxzkr
>>623
それ全部横一列になるじゃろ

625デフォルトの名無しさん2017/03/09(木) 13:58:55.76ID:ojEANMvi
横一列も捨てたもんじゃないぞ

626デフォルトの名無しさん2017/03/09(木) 13:58:55.83ID:4L4opgUu
>>620
for i in range(1,10):
for n in range(1,10):
s=i*n
print i,n,s

627デフォルトの名無しさん2017/03/09(木) 14:06:06.24ID:4L4opgUu
質問者はエスパーを求め、回答者は限りなく正解に近い解決案を提示する
しかし、両者の意見は極限の様に決して交じり合う事は無い

628デフォルトの名無しさん2017/03/09(木) 16:00:20.09ID:6+0zD1Ul
>>627
それを書きたいがために自演してるの?

629デフォルトの名無しさん2017/03/10(金) 00:30:52.07ID:2xwb+bja
pythonってprint周りが貧弱だね

630デフォルトの名無しさん2017/03/10(金) 00:36:01.31ID:laK4a1KX
why?

631デフォルトの名無しさん2017/03/10(金) 01:53:05.75ID:NYdKDrgC
>>630
印刷って意味なんだろうな

632デフォルトの名無しさん2017/03/10(金) 05:01:36.75ID:j91K0HTy
pdf化は簡単

633デフォルトの名無しさん2017/03/10(金) 09:41:37.20ID:ccNaYHW5
スクリプトで印刷することがあるのか
プリンターでも壊すの?

634デフォルトの名無しさん2017/03/10(金) 10:28:40.52ID:aPYjQr+s
(プログラミングそのものも)ちょうしょしんしゃなんですが、質問があります
関数を定義するとき、普通は関数内にprintとreturnを混在させないもんなんでしょうか?
基本的にはprintしつつ、たまに戻り値だけ取り出したいんですが、できませんよね

635デフォルトの名無しさん2017/03/10(金) 12:13:01.25ID:6bgFp/KF
どちらか一方ってやり方はあまりしませんね
常に戻り値を返しておいて、受け取った方で制御するのが、関数の責務を最小にする観点では正しいでしょう

636デフォルトの名無しさん2017/03/10(金) 12:20:43.47ID:Tn2RsuVd
副作用がある関数で処理をしないのは基本
文字列生成と出力を同じ関数でやるとかありえない

637デフォルトの名無しさん2017/03/10(金) 12:36:43.20ID:PqU1AHi2
受け取った返り値をprintじゃいかんのか?

638デフォルトの名無しさん2017/03/10(金) 13:03:53.28ID:xlZkokSc
>>634
こんな関数書けますか、ってかんじ?

def f(a):
__if a>5:
____print(a)
__else:
____return a

639デフォルトの名無しさん2017/03/10(金) 14:14:11.58ID:wwCDmvkp
うんこ

640デフォルトの名無しさん2017/03/10(金) 14:48:04.06ID:NYdKDrgC
うんち

641デフォルトの名無しさん2017/03/10(金) 14:52:21.11ID:5Gzd391i
>>635-638
勉強になります
pythonの書き方は本読んで覚えたんですが
関数とは何ぞやというような根本的な部分を知らないままきたせいで
妙ちきりんな書き方をするところでした

642デフォルトの名無しさん2017/03/10(金) 15:37:17.96ID:7gwT/agc
小林さんちのメイドラゴン
http://i.imgur.com/00hZ4R1.jpg

643デフォルトの名無しさん2017/03/10(金) 16:04:57.37ID:y8xCqliG
Qiitaにまとめてる人いたよ
そのコードの出自も含めて

644デフォルトの名無しさん2017/03/10(金) 16:42:28.71ID:7rf1zsAW
そうかそうか。入門にpythonですか。
良いことだ。
焦らずゆっくりやるといいよ。

645デフォルトの名無しさん2017/03/10(金) 17:17:30.54ID:wwCDmvkp

646デフォルトの名無しさん2017/03/10(金) 20:03:34.39ID:7YjECCcV
ドキュメントのshelveの項目
Because of Python semantics
は「Pythonの構造上」であって「Pythonの意味論により」ではないだろう…
噂のGoogle翻訳による訳文ではないかと思ったが、Google翻訳はセマンティクスを訳出しなかった

647デフォルトの名無しさん2017/03/10(金) 20:42:08.90ID:1gLE1C/J
(1)evalを使ってhoge.pyをimportして関数aを使う方法を教えてください
■hoge.py
def a(n):
__return n * 2
■main.py
import hoge
print(eval('hoge.a(%d)' % 5))
実行するとTypeError: not enough arguments for format string


(2)上のhoge.pyの関数aをeval()を使わずlocals()かglobals()で実行する方法を教えてください
動的に実行したいのでモジュール名hogeと関数名aは文字列として扱います
■main.py
import hoge
print(locals()['hoge'].a(5)) # これはいけるけどaが文字列じゃないのでダメ
print(locals()['hoge'].locals()['a'](5)) # こんな感じでhogeもaも文字列でしたいけどこれはエラー

648デフォルトの名無しさん2017/03/10(金) 21:10:45.57ID:tsZNvBFI
ペアプロしたいよ

649デフォルトの名無しさん2017/03/10(金) 22:14:52.94ID:tYHwWFlR
>>647
(1) それでできるはず、エラーの理由がわからない

(2) getattrを使う
import hoge
print(getattr(hoge, "a")(5)) # => 10

(3) importlibを使って動的にimportする
import importlib
hoge = importlib.import_module("hoge")
print(hoge.a(5)) # => 10

6506472017/03/10(金) 23:06:21.90ID:RlygWM/c
>>649
先輩詳しくありがとうございます

651デフォルトの名無しさん2017/03/10(金) 23:43:24.32ID:IjVf1zYz
def a():
__pass


def aa():
__pass

i = 1
f = 'a' * i
while f in locals():
__f = 'a' * i
__print(f)
__i += 1

存在する関数の名前を表示したいのに
なんで3回もループするんですか?
3回目はwhileの条件式がFalseになるのに何故3回目も実行されてるんですか?

652デフォルトの名無しさん2017/03/10(金) 23:59:30.13ID:BkPIKCxb
そりゃそのコードじゃ3回目に突入しないとfが'aaa'にならないからだよ(´・ω・`)

6536512017/03/11(土) 00:02:06.18ID:Zr2FrbrS
あっ
i += 1をwhileの次の行に書いたら解決しました
先輩のツッコミのおかげです

654デフォルトの名無しさん2017/03/11(土) 04:22:15.44ID:6BNQXKpF
アー

655デフォルトの名無しさん2017/03/11(土) 04:26:22.74ID:7W6dDd5l
ネスト文だけで、最後まで仕上げたい
だけど、できない

サーバー∩ユーザー操作入れると積んじゃう
ウワァァ-----。゚(゚´Д`゚)゚。-----ン!!!!

破棄していっても、ネスト文20個が限界
どうしたらええの?(;一_一)

656デフォルトの名無しさん2017/03/11(土) 06:45:19.40ID:aLw+/MXn
>>646
Pythonの和訳ドキュメントは直訳が多く質が悪い
おそらくプログラミング経験のない人がやってる
まあ普通に考えれば、英語ができるプログラマーが
ボランティアで翻訳に参加してくれるわけがないんだけどね
そんな暇はないし、本人はそのドキュメントを必要としないのだから

657デフォルトの名無しさん2017/03/11(土) 06:55:32.28ID:xoJttF1n
>>656 菅野良二訳さないかな?

658デフォルトの名無しさん2017/03/11(土) 08:55:43.67ID:uN3WuySc
君たちの会社にもいるだろう
参考書は沢山持っているが翻訳が悪いと難癖ばかりの使えないプログラマーが

659デフォルトの名無しさん2017/03/11(土) 09:11:51.14ID:anHHKoFL

660デフォルトの名無しさん2017/03/11(土) 09:35:39.28ID:PkZJ5MPX
和田英一訳さないかな?

661デフォルトの名無しさん2017/03/11(土) 10:14:52.21ID:bAyT8ysx
vimの和訳よりはましだよ
あっちは英語出来ない人がgoogle翻訳使ってマージしてるから

662デフォルトの名無しさん2017/03/11(土) 11:21:17.33ID:l7ncF0gw
>>646は見識が広まって良かったね

663デフォルトの名無しさん2017/03/11(土) 11:26:17.05ID:ERGKVRiV
えらすとてねすの篩をpythonで書くとどうなります?

664デフォルトの名無しさん2017/03/11(土) 11:28:19.55ID:36z8PDHE
print "えらすとてねすの篩"

665デフォルトの名無しさん2017/03/11(土) 12:47:14.58ID:xuFZEUQC
い…筏

666デフォルトの名無しさん2017/03/11(土) 12:55:48.69ID:JsoExgwj
>>656
ほんそれ

667デフォルトの名無しさん2017/03/11(土) 12:56:01.36ID:JsoExgwj
>>661
ひどいな

668デフォルトの名無しさん2017/03/11(土) 13:09:46.26ID:l7ncF0gw
く・・・櫛

669デフォルトの名無しさん2017/03/11(土) 13:18:12.84ID:l7ncF0gw
翻訳おかしいと思って原文みたら、結局は妥当な翻訳かなってなるんよね

670デフォルトの名無しさん2017/03/11(土) 13:30:29.94ID:6BNQXKpF
>>663
かなりテキトー
http://ideone.com/wFlLXl

671デフォルトの名無しさん2017/03/11(土) 13:31:00.02ID:BuFLSVmP
メソッドが破壊的かどうか区別できるセマンティクスを知らないのはいいけど
意訳で直訳を批判するならその根拠を出すべきだと思う

672デフォルトの名無しさん2017/03/11(土) 13:37:21.71ID:ERGKVRiV
>>670 ナンパイ使うと何やってるかさっぱりですが ありがとうございました😊

673デフォルトの名無しさん2017/03/11(土) 13:49:18.59ID:JsoExgwj
>>670
tupleにする意味無くね?

674デフォルトの名無しさん2017/03/11(土) 13:50:51.92ID:6TyVoHd3
numpyの配列で全要素が0以上ならtrueを返すというのがやりたいのですがどうやればいいでしょうか

675デフォルトの名無しさん2017/03/11(土) 14:01:15.66ID:qCTmGWaI
pandas使ったらさあ、ちょっと前なのにパラメータがrows, colsからindexとcolumnに変わってたりと
大して意味のない気まぐれな変更多くて修正めんどくさくて大変だった。
いったん決めたインターフェースは簡単に変えるなよ

676デフォルトの名無しさん2017/03/11(土) 14:06:13.79ID:JsoExgwj
> . 675
またおまえか

677デフォルトの名無しさん2017/03/11(土) 14:28:55.88ID:PdJucnY4
>>676
なんか必死そうで笑えるw

678デフォルトの名無しさん2017/03/11(土) 16:42:08.91ID:pb1mdVVd
関数内でグローバル変数の書き換えには宣言が必要なはずですが、リストや辞書の場合、x[0]+= 1のような操作が可能なのは何故ですか?

679デフォルトの名無しさん2017/03/11(土) 17:08:24.87ID:JsoExgwj
参照が先だからじゃね

680デフォルトの名無しさん2017/03/11(土) 18:06:36.27ID:HkKeM3nW
俺も不思議に思ってた
参照だからってglobal宣言もなしにグローバル変数書き換えできるって整合性が取れてないんじゃないの

681デフォルトの名無しさん2017/03/11(土) 18:15:26.35ID:BuFLSVmP

682デフォルトの名無しさん2017/03/11(土) 18:16:42.55ID:JsoExgwj
>>680
「参照だから」
ではなく
「参照が先に実行されてるから」
ということが重要

683デフォルトの名無しさん2017/03/11(土) 18:26:16.40ID:sUFiWX+J
参照を書き換えてるんじゃなくて
参照先の値を書き換えてるからだろ

参照が先に実行されてるってどゆこと?

684デフォルトの名無しさん2017/03/11(土) 18:48:02.84ID:aLw+/MXn
これ怖いなあ
自分はケチだから変数名は基本一文字なんだけど
今まで作ったもののうちどこかでバグってるものがあるかもなあ

685デフォルトの名無しさん2017/03/11(土) 19:01:29.57ID:HkKeM3nW
いやいや、俺が言ってるのは整合性の話
関数内でグローバル宣言しない限りローカルと見做されるわけなんだから
関数内で x[0]=1 ってやったら NameError: name 'x' is not defined になったほうが整合性がとれるんじゃないかと

>>680
参照が先に実行されてるってどゆこと?

686デフォルトの名無しさん2017/03/11(土) 19:17:07.88ID:JsoExgwj
自身にレスするとか
いつもの自演ですか

687デフォルトの名無しさん2017/03/11(土) 19:18:11.96ID:gqEvvPBC
>関数内でグローバル宣言しない限りローカルと見做される

この認識が間違いだっつー話

688デフォルトの名無しさん2017/03/11(土) 19:19:03.12ID:sFjld79D
>>685
>関数内でグローバル宣言しない限りローカルと見做される
前提を端折るでない、関数内で代入していたら、だよ
代入してなけりゃ暗黙的にグローバルだ

689デフォルトの名無しさん2017/03/11(土) 19:25:32.26ID:7t46mzeU
x[0]=1 は x.__setitem__(0, 1) だからxを参照してるだけ

690デフォルトの名無しさん2017/03/11(土) 19:29:44.70ID:HkKeM3nW
>>686
アンカ間違えただけじゃないw
で、参照が先に実行されてるってどゆこと?
>>687
どういうこと?
https://docs.python.jp/3/faq/programming.html#what-are-the-rules-for-local-and-global-variables-in-python
>>688
たしかに言葉足らずでしたね
でも代入しちゃってグローバル変数書き換えられちゃってるんですよ
変だと思いませんか?

691デフォルトの名無しさん2017/03/11(土) 19:45:32.67ID:7t46mzeU
アクセス保護が目的ではなく
構文解析機にローカル変数/グローバル変数どちらとして扱うべきかを明示するための構文

692デフォルトの名無しさん2017/03/11(土) 19:51:59.26ID:BuFLSVmP
「意図しない副作用」って単純に名前衝突でのことだと思ってたけど
まあ広義に捉えられなくもないか

693デフォルトの名無しさん2017/03/11(土) 20:03:52.38ID:sFjld79D
>>690
意味が分からない、それは参照先メンバに対する変更だし、変数自体への代入ではない
今のスコープになければ外のスコープを参照するのは至って普通、メンバへはカプセル化の話になる
実装元のCだってローカル宣言なければグローバル参照だし、ローカル宣言の代わりが変数代入ってだけでしょ

694デフォルトの名無しさん2017/03/11(土) 20:38:31.56ID:sUFiWX+J
>>690
>でも代入しちゃってグローバル変数書き換えられちゃってるんですよ
書き換えられちゃってません
言いたいことはわからなくもないんだけどね

695デフォルトの名無しさん2017/03/11(土) 21:06:34.59ID:HkKeM3nW
ああなるほど、確かに変数への代入じゃないですね
>グローバル変数書き換えられちゃってるんですよ
我ながらひどい表現だと思いましたw
変数名とかスコープとか参照の理解が少しだけ深まったような気がします
付き合ってくれてありがとう

696デフォルトの名無しさん2017/03/11(土) 21:48:30.25ID:pb1mdVVd
解答ありがとうございました
根本的な理解が足りてないようなので学習を進めます

697デフォルトの名無しさん2017/03/11(土) 21:55:20.97ID:G4RDUkFD
>>656
読める奴は翻訳しない
読めない奴は翻訳できない

悲しい世界

698デフォルトの名無しさん2017/03/11(土) 22:02:21.44ID:G4RDUkFD
pythonのスコープはガバガバ
なんでこんなビッチ仕様にしてしまったのか?

699デフォルトの名無しさん2017/03/11(土) 22:13:25.94ID:cq7m28T0
グローバル変数を使うと面倒だな→グローバル変数は使わない設計にしよう
これ

700デフォルトの名無しさん2017/03/11(土) 22:18:19.34ID:9ePUQEo0
インタープリター、お手軽仕様だろ

701デフォルトの名無しさん2017/03/11(土) 22:28:35.13ID:qRrPVhhX
>>699
使いにくさを指摘するとこういう主張するpython信者多いよな。
他言語でも似たようなのは見かけるけど、pythonがダントツに多い印象。

702デフォルトの名無しさん2017/03/11(土) 22:33:40.23ID:VPCZQ4CC
それがZen of Pythonだからな

703デフォルトの名無しさん2017/03/11(土) 22:35:13.02ID:G4RDUkFD
>>699
そんなん最初から使えなくていいよね
バカナん?

704デフォルトの名無しさん2017/03/11(土) 22:57:09.76ID:vF75T+Pv
collectionsのnamed tupleってinstance作る時に使う子?
classの定義要らない?

705デフォルトの名無しさん2017/03/11(土) 23:12:01.81ID:bce8XLS9
>>703
高脳が多かった時代は問題なかったが、低脳がいっぱい使うようになって
低脳仕様にしないといけなくなった。

706デフォルトの名無しさん2017/03/12(日) 00:39:17.69ID:T4N3k6YJ
誰が書いても同じようになるようにっていう考え方自体が低脳仕様だと思うんだが
良し悪しは別にして

707resumi2017/03/12(日) 01:03:40.10ID:f0Kjw9v5
これ普通にショックだね。。
本当なの??
https://goo.gl/RB0asw

708デフォルトの名無しさん2017/03/12(日) 01:08:07.94ID:S7hZubyl
コードの貼り付けはこれでいいのかな?
https://gist.github.com/anonymous/89aee831d0f744e2c7a97f41489d4174
例外の種類で戻る位置を変えたりという、gotoとかジャンプ的な動きのできる多重ループを作りたいんですが
素人すぎて上記のようなバカ正直っぽいのしか分かりません。普通はどういう書き方するんでしょうか

709デフォルトの名無しさん2017/03/12(日) 01:15:37.69ID:2xIVaz8I
>>704
collections.namedtuple自体は関数で、呼び出すととサブクラスを定義して返してくれる
そのサブクラスを使ってインスタンスを生成する

710デフォルトの名無しさん2017/03/12(日) 01:18:08.87ID:AQn8N+kp
低脳仕様だから科学者から支持されてるんだぞ
愛用しているFortranの仕様すら抑えてない科学者は多い

711デフォルトの名無しさん2017/03/12(日) 01:23:38.06ID:2xIVaz8I
>>704
>>> # Basic example
>>> Point = namedtuple('Point', ['x', 'y']) #namedtupleを使って、Pointというサブクラスを定義する
>>> p = Point(11, y=22) #そのサブクラスPointを使って、pというインスタンスを作る
(http://docs.python.jp/3/library/collections.html#collections.namedtuple)

712デフォルトの名無しさん2017/03/12(日) 01:26:45.33ID:T4N3k6YJ
>>708
普通は関数化してそれを呼び出すんじゃないかな
多重ループをサクッと抜ける方法はないかも

ところでhots[]はなんで入れてるの?

713デフォルトの名無しさん2017/03/12(日) 01:46:26.39ID:m/AGujgk
>>709
>>711
はいはいnamedtuple自体がクラスを定義する関数なんですか、なるほど

継承してオーバーライドすればmethodを使うこともできるんですね

714デフォルトの名無しさん2017/03/12(日) 02:13:50.47ID:S7hZubyl
>>712
hots[]は最初のinputがターゲットのリスト(food[])に存在するか、の答え合わせにつかってます。10行目〜12行目くらいです

ちなみに、多重ループは関数化して〜、というのはググると結構出てくるんですが
具体的にどこを関数化するんでしょうか…?
全体?それとも、ごちゃごちゃしたとこを関数化してコンパクトに見えるようにする、という意味ですか?
(上記のでいうと、3カ所のif depthブロック単位で関数化するみたいな)

715デフォルトの名無しさん2017/03/12(日) 02:34:31.65ID:2xIVaz8I
>>708
注文を受けたか、注文は有効か、確認済みかどうかをプロパティに持って、それを操作する関数を持つクラスを実装するのがいいと思う
あと、例外っていう言葉は例外処理がまず浮かぶから、条件分岐の時には使わんといて

716デフォルトの名無しさん2017/03/12(日) 11:04:47.14ID:zE2Y9N2c
windows10でpython3.5.2使ってます
python -p 9999 pydoc.py
でローカルにpythonドキュメントのwebサーバーが立ち上がりますが一緒に出てくるコマンドプロンプトが

Server ready at http://localhost:9999/
Server commands: [b]rowser, [q]uit
server>

と出て入力待ちの状態です
動作に問題はないんですが目障りで邪魔で気分がよくないです
コマンドプロンプトを表示させずに実行する方法はないでしょうか
pythonw.exeで試したけれどだめでした

717デフォルトの名無しさん2017/03/12(日) 11:11:33.98ID:zE2Y9N2c
python pydoc.py -p 9999の間違いです
pythonw pydoc.py -p 9999はダメでした

718デフォルトの名無しさん2017/03/12(日) 11:26:02.43ID:j2SMNxxS
>>710 なんでこんなのgoogleこんなの使っているの?

719デフォルトの名無しさん2017/03/12(日) 11:44:40.61ID:gSAHEv2e
>>674お願いします

720デフォルトの名無しさん2017/03/12(日) 11:49:17.73ID:OGxRMYSq
>>716
from subprocess import *
Popen("python -m pydoc -p 9999", shell=True, stdin=PIPE).wait()
をpythonwで

721デフォルトの名無しさん2017/03/12(日) 12:10:01.45ID:2xIVaz8I

722デフォルトの名無しさん2017/03/12(日) 12:20:44.85ID:OGxRMYSq
numpy.arrayなら.min()を使う方が速いかもね

723デフォルトの名無しさん2017/03/12(日) 12:25:11.64ID:2xIVaz8I
>>722の方がいいな
minの存在忘れてた

724デフォルトの名無しさん2017/03/12(日) 12:25:39.80ID:gi0lLEKK
np.all(ary>=0)ではいかんのけ?
np.min(ary)>=0のほうが確かに速そうだけど

725デフォルトの名無しさん2017/03/12(日) 12:41:49.26ID:T4N3k6YJ
>>714
注文を確認したときに”N”の回答を繰り返すとhots[]が
どんどんappendされていくので何か別の意図があるのかと思ったのよ
不要な外部状態への依存は無くしたほうがメソッドとして抽出しやすくて読みやすいコードになる

def is_valid(choice)
return choice in [format(x, 'd') for x in range(len(food))]

726デフォルトの名無しさん2017/03/12(日) 12:42:32.61ID:T4N3k6YJ
>>714
関数化するってのは処理の塊に名前を付けてそれを呼び出すようにするっていう意味と
塊ごとのループのネストを浅くするっていう意味と両方
例えばこんな感じ

order = Order()
while not order.placed:
ask(order)
confirm(order)
if not order.confirmed:
continue
place(order)

727デフォルトの名無しさん2017/03/12(日) 12:51:04.90ID:T4N3k6YJ
>>714
ただPythonにはラベルもgotoもないしdo-while/do-untilやcase文もないから
こういうどこかへジャンプしたいっていうモデルをプログラミングするときは
標準だとwhile/continue/breakとif-elseで頑張るか例外で代用するかしかない
良くも悪くもそういう制約の強い言語

728デフォルトの名無しさん2017/03/12(日) 13:17:38.37ID:WG9HLLmd
残念だがどこかへジャンプしたいっていうモデルなどない
ヘタクソなモデリングの結果
どこかへジャンプしたいコードを書きたくなるのだよ

729デフォルトの名無しさん2017/03/12(日) 13:26:46.87ID:1AEjxjTb
beginとendのログを書きたがるジャップソフトハウスだとよくある光景

730デフォルトの名無しさん2017/03/12(日) 13:26:59.89ID:zE2Y9N2c
>>720
できました、ありがとうございます!
シェルを通してpydocを実行してstdinを接続した子プロセスを作ってその終了を待つという
スクリプトを窓のでないpythonwで実行するという解釈であっているでしょうか?

731デフォルトの名無しさん2017/03/12(日) 13:29:19.02ID:RdGtMQ3H
>>728
どこにジャンプするんだw

732デフォルトの名無しさん2017/03/12(日) 13:38:05.72ID:q89zFEcE
水平線の彼方へさ

733デフォルトの名無しさん2017/03/12(日) 13:43:42.94ID:WG9HLLmd
プログラマーのジャンプする先は彼岸に決まってんだろ
dive into heavenだよ

734デフォルトの名無しさん2017/03/12(日) 14:08:40.77ID:S7hZubyl
>>715
>>725-727
詳しくありがとうございます
参考にしながら、書き直してみます

735デフォルトの名無しさん2017/03/12(日) 14:31:17.78ID:T4N3k6YJ
>>728
どうモデリングするかは人の自由だよ
一般的な業務プログラミングではそういうのはないだろうけど
ゲームブックみたいに何ページに行くってのが頻出するやつはジャンプするモデルのほうが自然
言語の制約で思考が凝り固まるのが良い場合もあれば悪い場合がある

736デフォルトの名無しさん2017/03/12(日) 14:35:02.33ID:T4N3k6YJ
>>734
>>726の例だけどcontinueよりも
whileをネストさせたほうが意図が伝わりやすくていいかもね

while not order.placed:
____while not order.confirmed:
________ask(order)
________confirm(order)

____place(order)

737デフォルトの名無しさん2017/03/12(日) 14:46:32.11ID:B7xQW+GI
>>733 3月20日は彼岸の中日。

738デフォルトの名無しさん2017/03/12(日) 15:40:33.95ID:WG9HLLmd
>>735
なに意地張っちゃんてんのw可愛いのうw
そういうのはモデリングとは言わんのだよヘタクソなコーディングなw
せっかくだし彼岸にダイブでもしてみたら?w

739デフォルトの名無しさん2017/03/12(日) 15:44:16.45ID:58WNQxmr
彼岸じゃなくて涅槃だろ

740デフォルトの名無しさん2017/03/12(日) 15:53:54.89ID:T4N3k6YJ
>>738
最近の言語の実装でもgotoやラベルへのジャンプは普通に使われてるしLinuxのコードなんかgotoだらけだぞ
リーナスより君のほうがコーディングが上手いんだなw
いまだにgotoが常にharmfulだと信じてるのってパイチョンしか知らないやつだけ

741デフォルトの名無しさん2017/03/12(日) 15:56:43.14ID:T4N3k6YJ
このスレはPython使ってる素人の知ったかぶりが痛い

742デフォルトの名無しさん2017/03/12(日) 16:08:26.12ID:PMaU+xiL
そして、高度な事を聞かれると沈黙する

743デフォルトの名無しさん2017/03/12(日) 16:09:23.02ID:1AEjxjTb
休みの日にID真っ赤にして9回も書き込んでる奴ほどではないさ

744デフォルトの名無しさん2017/03/12(日) 16:47:28.12ID:OGxRMYSq
>>730
うん
shell=Trueなのはコマンド書式のため

745デフォルトの名無しさん2017/03/12(日) 17:25:31.13ID:NGwa4vbi
>>708
実質的にはgotoをやっている書き方もできるよ
http://codepad.org/sGSrAUmZ

746デフォルトの名無しさん2017/03/12(日) 17:35:25.52ID:PMaU+xiL
os linux() python2.7.3

マウス操作 クリック及び絶対値によるマウス移動
Kona Linux 2.3 black(LXDE)

どうしたらええの?

747デフォルトの名無しさん2017/03/12(日) 17:45:00.75ID:WG9HLLmd
>>740
ハイハイw最近のガキはどうしてこう素直じゃないかねw
自分の何が間違っているのかも分からんのだろお前w

748デフォルトの名無しさん2017/03/12(日) 17:48:12.69ID:87+SaKG+
goto
ttps://pypi.python.org/pypi/goto-statement/
ttps://github.com/snoack/python-goto/#usage

749デフォルトの名無しさん2017/03/12(日) 18:16:41.37ID:r/LAIW7C
>>739
もうすぐですね

750デフォルトの名無しさん2017/03/12(日) 18:17:25.45ID:87+SaKG+
>>746
ttps://pypi.python.org/pypi/PyAutoGUI/
ttps://github.com/asweigart/pyautogui#example-usage

751デフォルトの名無しさん2017/03/12(日) 18:17:47.60ID:r/LAIW7C
>>742
そう
うかつなレスすると突っ込まれるから
えろいひとが回答するのを待ってる

752デフォルトの名無しさん2017/03/12(日) 18:51:37.38ID:6iMHIBm5
>>745
分かりにくいだけやん...

753デフォルトの名無しさん2017/03/12(日) 19:03:33.93ID:aQjVbvnT
pytz使わずにdatetime.now()でとった現在日時(GMT+9)をGMT-5の時刻に変換するコードをください

754デフォルトの名無しさん2017/03/12(日) 20:33:55.19ID:mNviceIe
>>721-724
ありがとうございます!

755デフォルトの名無しさん2017/03/12(日) 21:32:05.82ID:T4N3k6YJ
>>745
お、おう これはharmfulやね
抽象度ごとのコントロールフローがまとまってないと辛い

756デフォルトの名無しさん2017/03/13(月) 00:02:54.74ID:RYBEx06L
>>745
関数内ループなくしたのは良いが、分かりにくいな
この場合はenum使ったステートマシンでオーダー状態/遷移先を管理したほうが良いのかもな
これCだけど、http://qiita.com/saltheads/items/8331e14f4d3b37f511aa
な感じに

757デフォルトの名無しさん2017/03/13(月) 01:13:39.27ID:Hmz5iRTa
>>745
デバッグした?

758デフォルトの名無しさん2017/03/13(月) 02:47:10.13ID:A9v11X3F
>>753
-16*3600

759デフォルトの名無しさん2017/03/13(月) 03:06:26.63ID:/3oucZHe
>>758
-14

760デフォルトの名無しさん2017/03/13(月) 03:17:09.94ID:A9v11X3F
そういえばサマータイムあるところだっけ

761デフォルトの名無しさん2017/03/13(月) 03:25:50.93ID:/3oucZHe
この場合世界標準時からの差のみだからサマータイムは考慮しなくていい
-9 + -5

762デフォルトの名無しさん2017/03/13(月) 09:25:01.24ID:9DicF29x
>>708
いくらPythonが統一した書き方を強制しやすいと言っても
やはりずば抜けたアホに対しては無力なようだな

763デフォルトの名無しさん2017/03/13(月) 09:59:32.96ID:qHoGQ2gO
くだスレってくだらないスレ?くだまくスレ?

764デフォルトの名無しさん2017/03/13(月) 10:08:55.92ID:5P5C0Ekt
CUDAスレ

765デフォルトの名無しさん2017/03/13(月) 10:28:05.73ID:PY1C8/Xh
GOTOは悪だとおもってるくだらない奴のスレ

多重ループ抜けられない、多重ループかけないって致命的じゃね

766デフォルトの名無しさん2017/03/13(月) 10:37:26.98ID:aew42WlW
多重ループする状況でPythonみたいな遅い言語使うな

767デフォルトの名無しさん2017/03/13(月) 11:07:19.72ID:W+gruSmy
例外投げて抜けるんだろ

768デフォルトの名無しさん2017/03/13(月) 11:23:13.57ID:7VMyUxLV
それならreturnで抜けたほうがいいだろ

769デフォルトの名無しさん2017/03/13(月) 13:40:55.09ID:N3DmujAP
どっちでもin

770デフォルトの名無しさん2017/03/13(月) 17:38:51.44ID:WQPH0UXu
breakさん「」

771デフォルトの名無しさん2017/03/13(月) 18:55:41.02ID:BnQlNWII
for i in range(5):
_for j in range(5):
__break
_print(i, j)
print(-1)

親のforも込みでbreakの部分でループを抜ける方法を教えてください
下のようにフラグを用意して親forのスコープでbreakを実行するやりかたはNGです
for i in range(5):
_for j in range(5):
__f = 1
__break
_if f:
__break
_print(i, j)
print(-1) 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)

772デフォルトの名無しさん2017/03/13(月) 18:57:42.02ID:BnQlNWII
グローバルなスコープでforを使います
関数の中じゃないので次のコードもNGです
def f():
_for i in range(5):
__for j in range(5):
___return
__print(i, j)

773デフォルトの名無しさん2017/03/13(月) 19:05:35.74ID:WQPH0UXu
まぁ無理だから他の方法考えろと言うしかないけど、お前さんがbreak嫌いってことはよく分かったわ
一発で多重ループ抜けするようなコードになるならもっと良いやり方が存在する可能性が高いぞ

774デフォルトの名無しさん2017/03/13(月) 19:12:53.60ID:voNf4d3r
まぁ正道のelse: continue; break…もスコープ的にダメって言いそうだし
例外ジャンプは邪道やろし、break 2のような物は無いものな

775デフォルトの名無しさん2017/03/13(月) 19:42:59.99ID:xj6UKIPj
for i in range(5):
_for j in range(5):
__break
_else:
__break
_print(i, j)
print(-1)

776デフォルトの名無しさん2017/03/13(月) 19:45:17.95ID:xj6UKIPj
逆か
for i in range(5):
_for j in range(5):
__break
_else:
__print(i, j)
print(-1)

777デフォルトの名無しさん2017/03/13(月) 19:50:16.50ID:WfgCl99Q
俺的には labeled break ぐらいとっとと実装しろよって思うけどなぜか却下されてるんだよな
https://www.python.org/dev/peps/pep-3136/

778デフォルトの名無しさん2017/03/13(月) 20:08:29.57ID:tf/p3QRT
ラベルドブレイク!
技名みたいでかっこいいな

779デフォルトの名無しさん2017/03/13(月) 20:12:38.89ID:7VMyUxLV
return使えって書いてるな
まあそのほうがいいわな

780デフォルトの名無しさん2017/03/13(月) 21:33:20.30ID:N714JDKq
for i,j in ((i,j) for i in range(5) for j in range(5)):
_break

781デフォルトの名無しさん2017/03/13(月) 22:02:17.64ID:h57/U2+3
>>771
一段階ずつbreakするか関数にしてreturnを使うか例外を使うかの3択
どれもキレイなコードにはならないから自分の表現したい内容に一番近いのを選ぶほかない

782デフォルトの名無しさん2017/03/13(月) 22:12:24.08ID:0Fbbs/T/
こういう奴にはPHPでもPerlでもお勧めしとけ

783デフォルトの名無しさん2017/03/13(月) 22:18:43.04ID:gT7cCjLG
いやいや勧めるのはC++だろ

784デフォルトの名無しさん2017/03/13(月) 23:18:55.60ID:wkEXVPnf
>>771
いろいろと度外視したもの、見た目よくないし邪道でくだらないし俺は責任取れない
http://pastebin.com/KDvc0c4F

785デフォルトの名無しさん2017/03/14(火) 02:04:14.08ID:vIMzEjCF

786デフォルトの名無しさん2017/03/14(火) 05:37:50.88ID:bQth80Jl
>>785 なんで、tf gotoで書けないだろう。

787デフォルトの名無しさん2017/03/14(火) 10:23:07.89ID:vbV/Jpv3
for に else とか変態仕様やろ

788デフォルトの名無しさん2017/03/14(火) 12:20:17.99ID:UFDW2I+S
for elseは非推奨だっけ?

789デフォルトの名無しさん2017/03/14(火) 12:24:23.70ID:iJqYjMUp
変態てのはお前が知らない馴染みがないって意味じゃないよ

790デフォルトの名無しさん2017/03/14(火) 12:42:15.09ID:Bmc3j2Q1
知ってても書いたことはない筆頭がfor~else
フォーラムで「何のしがらみもなく構文を一つ削除してよいのなら何を削除する?」って聞いたら上位に来そう

791デフォルトの名無しさん2017/03/14(火) 12:58:29.09ID:EHnwNQwM
多少ツッコミどころがある仕様の方が面白いからセーフ
いつか難解コードを書きたくなる時があったらきっと使うでしょ

792デフォルトの名無しさん2017/03/14(火) 15:32:18.71ID:5xEA7Y6K
for elseは一回もループしなければとかならまだ使い道あったのに

793デフォルトの名無しさん2017/03/14(火) 19:24:17.42ID:qHSOlZCd
for else 普通に便利だと思うけどなあ
http://python.civic-apps.com/else-loop/

794デフォルトの名無しさん2017/03/14(火) 19:47:08.71ID:EHnwNQwM
他の言語にも手を出すつもりならfor elseはあまり多用しない方がよさそう

795デフォルトの名無しさん2017/03/14(火) 19:49:28.11ID:CJRugdQQ
ボク頭が弱いから使いどころがイマイチわかんないっす!(意訳)

796デフォルトの名無しさん2017/03/14(火) 19:59:36.65ID:EHnwNQwM
大体あってる
俺と同じような低脳が沢山いるからできるなら使わない方が良いってなるんだが

797デフォルトの名無しさん2017/03/14(火) 20:13:15.76ID:SxrvnFMh
戻り値の概念がいまいち理解できずに困っています

def gauss(n):
sum = 0
for i in range(1, n+1):
sum += i
return sum

print (gauss(100))

とするじゃないですか。そうすると1〜100の和の5050が返ってきますよね
でもreturn使う理由がよく分からないんですよ。関数に引数入れたときの計算結果は一つに定まってるじゃないですか
だからreturnなんか使わなくてもgauss(100)と入力すれば5050が出るんじゃないかと。でも出ないんですよね

798デフォルトの名無しさん2017/03/14(火) 20:37:27.43ID:hCSBa/z+
数学の関数とは違う。結果が一つに定まるとは限らない、例えばinput関数
input('何か適当に入力しろよ>')

799デフォルトの名無しさん2017/03/14(火) 20:44:36.81ID:JZnTb5HD
関数ってファイル処理だけさせたりもするから
返り値なんてなくても・・・

800デフォルトの名無しさん2017/03/14(火) 20:47:50.22ID:ZhDhc0/i
>>795-796
Pythonは高脳をターゲットに開発された言語だからな。
低脳にはfor elseの素晴らしさは理解不可能

>>797
あとdef gauss(n)
もnつけなくて正しく動作する気がするよね
def gaussでOKだよね

801デフォルトの名無しさん2017/03/14(火) 20:53:57.47ID:gIyZXesU
>>800
guidoは今後のPython初学者のために複雑性を増やしたくないって言ってんだろがゲロカス
板橋まで走って逃げるな死ね
https://www.python.org/dev/peps/pep-3136/

802デフォルトの名無しさん2017/03/15(水) 13:06:43.36ID:kWoiZWut
パイソンは超ヌーブなんですけど
アナコンダ入れるかパイソンそのまま入れるかどっちがオススメですか??

803デフォルトの名無しさん2017/03/15(水) 13:18:54.12ID:1B/djtP8
>>802
どういう環境を構築したいか書いてくれないと答えようがない

804デフォルトの名無しさん2017/03/15(水) 13:36:37.62ID:7YWEdixI
太いのが好き

805デフォルトの名無しさん2017/03/15(水) 13:42:28.24ID:kWoiZWut
>>803
テンソルフローとかいうのを触ってみようと思います

806デフォルトの名無しさん2017/03/15(水) 13:55:07.15ID:1B/djtP8
>>805
公式のインストールに関するドキュメントは読みましたか?
https://www.tensorflow.org/install/install_windows

807デフォルトの名無しさん2017/03/15(水) 14:03:28.57ID:mmE2Q0nO
>>802 アナコンダ入れた方がいいだろう。

808デフォルトの名無しさん2017/03/15(水) 14:04:23.54ID:1B/djtP8
個人的には

#Python3.5.3入れる
https://www.python.org/downloads/release/python-353/

#仮想環境をつくり、アクティベートする
python -m venv tf
tf\Scripts\activate.bat

#tensor flowを入れる
pip3 install --upgrade tensorflow

がいいっと思います

809デフォルトの名無しさん2017/03/15(水) 15:27:54.58ID:kWoiZWut
>>807
なんか上の方で、アナコンダ入れるとなんかあった時に大変みたいなのを見たのですか大丈夫ですかね・・?
>>808
ありがとうございます、
2ブロック目の仮想環境を作り、アクティベートのところですが、ここの役割は何でしょうか??これがないと動かないのでしょうか?

810デフォルトの名無しさん2017/03/15(水) 16:22:40.13ID:71YRh3pu
超ヌーブならアナコンダ一択やろ

811デフォルトの名無しさん2017/03/15(水) 16:51:50.83ID:D4lD2LgX
逆でない?
判ってる人とかお試しで触る程度ならanacondaでいいだろうけど
python自体が初めてでanacondaから入ると後々苦労するのが目に見えるが

>>808のやり方ならそんなに手間変わらんのだから
そっちの方がいいと思う

812デフォルトの名無しさん2017/03/15(水) 17:02:57.88ID:kWoiZWut
なるほど、 仮想環境のアクティベートはおまじないと思ってやっちゃった方がよかですか?

813デフォルトの名無しさん2017/03/15(水) 17:13:13.53ID:nVuVQrDL
うん、イイヨー
anacondaはちゃんと最新版のを煎れるようにね

814デフォルトの名無しさん2017/03/15(水) 17:15:06.68ID:kWoiZWut
え、この流れやとアナコンダはダメなのでは・・・?どっちが正しいと?

815デフォルトの名無しさん2017/03/15(水) 17:29:32.79ID:rl+wZjWB
まずpythonを学ぶべきだ
こんなクソクエスチョンするようなカスがいきなりtensorflowなんて使えるかよ

816デフォルトの名無しさん2017/03/15(水) 17:32:02.39ID:D4lD2LgX
混乱させてすまんね

pythonで今後もやってく人 = >>808
機械学習メインでpythonメインでない人 = anaconda

みたいなイメージ?

python今後もやってくなら基本的な環境の作り方ぐらい知らないと苦労するから
俺はどうせやるならちゃんとやった方がいいよねーって思ってんだけど
機械学習をやるのが目的でpythonは手段でしかないならanacondaは
お手軽だよねーって思う人もいる

やれる事は変わらんからお好きな方で

817デフォルトの名無しさん2017/03/15(水) 17:33:21.58ID:kWoiZWut
ごめんなさい。。超初心者って書いてるけん許されるかと思いました。。

818デフォルトの名無しさん2017/03/15(水) 17:35:58.71ID:kWoiZWut
>>816
なるほど!分かりやすかったですー!
ホントはテンソルフロー動かせたらいいのだけど、パイソン出来たらいろいろ便利そうなのでこの機会にちゃんとしてみようと思います!ありがとうございます!

819デフォルトの名無しさん2017/03/15(水) 17:38:18.14ID:lNG1lg3A
いや初心者ほど環境を気にせず使えるanacondaにすべき
嘘教えるな

820デフォルトの名無しさん2017/03/15(水) 17:44:17.93ID:AGhEyNXo
とりあえず初心者は動かしてみて遊ぶべき
環境構築はその後で問題はない

821デフォルトの名無しさん2017/03/15(水) 17:52:06.03ID:3u79xgLU
動かした所で使い道がない事に気づく

822デフォルトの名無しさん2017/03/15(水) 17:58:44.65ID:1Y+2q/Q/
今ってウェブ上でコード書いてそのまま実行できるサービスもある環境だからまず最初はそう言うサービスを利用するのをオススメするかな
しばらく遊んでりゃ大体文法も把握できるからそこから環境整えてサイトやら参考書見てお勉強

823デフォルトの名無しさん2017/03/15(水) 18:03:59.74ID:3u79xgLU
初心者の頃とかは公式ドキュメント見てたら4日過ぎてました
とか、良くある事なので

1日4〜5時間は寝た方が良いよ
  (むしろ、眠れなくて草生える)

824デフォルトの名無しさん2017/03/15(水) 18:08:01.29ID:1B/djtP8
サードパーティ製のものを使うより、できる限り公式なもので環境構築できるようにしておいた方がいいよ
ていうか、インストーラでPython入れて、pipでtensorflow入れるだけやん
手間かわらん

仮想環境を使う理由はグローバルな環境にゴチャゴチャ突っ込むのが好きじゃないから
別に構わないなら、Pythonインストールしてpipでtensorflow入れるだけでいいよ

825デフォルトの名無しさん2017/03/15(水) 18:17:10.79ID:lNG1lg3A
>>823
すげえな
公式ドキュメント見てたら4〜5分で寝れるわ

826デフォルトの名無しさん2017/03/15(水) 18:30:32.51ID:nVuVQrDL
>>819
初心者がいま普通にanaconda入れるとtensorflow動かない(もうfixされたのかな?

827デフォルトの名無しさん2017/03/15(水) 19:35:03.95ID:mGKxIZbB
初心者なんか罠踏んで爆発して死んだらええねん
生き残った奴こそ素質がある

828デフォルトの名無しさん2017/03/15(水) 19:45:59.62ID:1B/djtP8
>>827

829デフォルトの名無しさん2017/03/15(水) 20:28:31.96ID:IsHCJowS
>>827
死んだのにまだ未練残してるんですね
一刻も早く成仏出来ることをお祈りしています

830デフォルトの名無しさん2017/03/15(水) 20:55:46.33ID:KVS3OOCo
print([i * 10for i in range(2)])
これがエラーにならないって糞なパース処理だな

831デフォルトの名無しさん2017/03/15(水) 20:55:53.65ID:dhTQXuE0
機械学習やるんならいきなりライブラリ使うんじゃなくて
最低でも線形回帰,主成分分析,NNあたりはフルスクラッチできるようになってからの方がいいと思う

832デフォルトの名無しさん2017/03/15(水) 20:56:59.45ID:KVS3OOCo
こうかくとちゃんとエラー出してくれるのに
print([i * 0xafor i in range(2)])
もちろんこうかけばエラーはでない
print([i * 0xa for i in range(2)])

833デフォルトの名無しさん2017/03/15(水) 21:31:48.90ID:XYUUle5Y
パイソンをインストールしたんだけど、VSみたいにデバッグできると便利だなと思うんだけど、どしたらええかな?
今はコマンドプロンプトから実行してるんだけど、どこでなぜエラーしてるかとかさっぱり分からない

834デフォルトの名無しさん2017/03/15(水) 21:52:20.25ID:1B/djtP8
>>833
VS+PTVSで開発する
仮想環境の構築もpipからのインストールもVSでできる

835デフォルトの名無しさん2017/03/15(水) 22:41:22.15ID:HXSORuM9
標準で付いてくるIDLEでいいんじゃない

836デフォルトの名無しさん2017/03/17(金) 00:45:53.48ID:cvnYh8La
import curses
def f(screen):
pad = curses.newpad(2, 2)
pad.addstr(0, 0, 'a')
pad.addstr(1, 0, 'b')
for i in range(2):
pad.refresh(0, 0, 0, 0, 1, 2)
pad.getkey()
pad.refresh(1, 0, 0, 0, 1, 2)
pad.getkey()
curses.wrapper(f)

キーを押した時にリフレッシュして
a
b

b
と繰り返して表示されるようにしたいのに
a
b

b
b
ってなってしまいます。
リフレッシュしてbだけ表示したいときに2行目に表示されるbが消えません
これは何でですか?

837デフォルトの名無しさん2017/03/17(金) 11:12:56.54ID:is7goi9i
>>708
https://gist.github.com/anonymous/0e784ef30407afdba925627e4a459e75
流石にもうちょいマシな書き方があるだろうと思って書いてみた
ただ仕様がもうちょい複雑になるとコードが煩雑になりそうだけど

838デフォルトの名無しさん2017/03/17(金) 13:11:57.91ID:W1rhDyUi
これ以上に複雑なときは、もう変数ジャンプ組み込む方がまだマシと思う

839デフォルトの名無しさん2017/03/17(金) 13:36:34.43ID:YJtvdDES
set_jmp

840デフォルトの名無しさん2017/03/17(金) 18:19:46.14ID:4a5+BdOt
>>837
これってよく使われるパターンなの?
def order():
…return order()

このくらいの長さのメソッドになるともう分かりにくいなって感じるんだが

841デフォルトの名無しさん2017/03/17(金) 19:41:57.57ID:dpI1G6OF
>>837
俺ならこうかな
foods = ['和食', '洋食', '中華']
def choiceInput(prompt, choices):
 while True:
  print(prompt)
  choice = input('>')
  if choice in choices:
   return choice
  print('入力エラー')

def order():
 while True:
  print('和食, 洋食, 中華')
  choice = choiceInput('どれを食べますか (0/1/2)', ['0','1','2'])
  yesNo = choiceInput(f'{foods[choice]}で本当にいいですか(Y/N)', ['Y', 'y', 'N','n'])
  if yesNo in ['Y', 'y']:
   return choice

842デフォルトの名無しさん2017/03/17(金) 20:25:35.68ID:is7goi9i
>>840
これくらいだったら分かりにくくならないかと思ったけどやっぱり分かりづらいか

>>841
なるほど
そっちの方がシンプルでいいな

843デフォルトの名無しさん2017/03/17(金) 20:42:07.88ID:SRILy9AU
無限ループでwhile Trueを書いていいのはゲームプログラミングぐらいです
このように書くべきです
def choiceInput(prompt, choices):
 print(prompt)
 choice = input('>')
 while choice not in choices:
  print('入力エラー')
  print(prompt)
  choice = input('>')

whileの横に条件式を書くことで第三者が見てもわかりやすいリーダブルコードになります

844デフォルトの名無しさん2017/03/17(金) 20:45:06.83ID:by7KsFNN
シンプルだけど一瞬え?ってなる

845デフォルトの名無しさん2017/03/17(金) 21:25:30.72ID:4a5+BdOt
>>843
こっちはちょっと冗長な気がするけどdo-whileとかdo-untilがないから致し方ないね

846デフォルトの名無しさん2017/03/17(金) 21:54:06.09ID:1b+nwuRS
>>843
>無限ループでwhile Trueを書いていいのはゲームプログラミングぐらいです
どういう理由でそうなんですか?

847デフォルトの名無しさん2017/03/17(金) 21:56:06.37ID:8d4DwhQ0
def choiceInput(prompt, choices):
 choice = -1
 while choice not in choices:
  print(prompt)
  choice = input('>')
if choice not in choices:
   print('入力エラー')

こうじゃいかんの?

848デフォルトの名無しさん2017/03/17(金) 23:04:53.49ID:scRdPl5f
書いてあるやん

849デフォルトの名無しさん2017/03/17(金) 23:05:23.72ID:woddruPm
>>843
同じ内容を2回書くのは修正があったときに修正漏れしそうで嫌

850デフォルトの名無しさん2017/03/17(金) 23:19:30.39ID:AOLqOhzC
def choiceInput(prompt, choices):
  choice = None
  while choice not in choices:
    if choice is not None:
      print('入力エラー')
    print(prompt)
    choice = input('>')
  return choice

851デフォルトの名無しさん2017/03/18(土) 10:25:09.78ID:nckgi/Sy
>>849
同じ内容を関数にまとめるのは常識

852デフォルトの名無しさん2017/03/18(土) 10:27:37.34ID:iWX2QE0o
>>850
これが一番しっくりきた

853デフォルトの名無しさん2017/03/18(土) 11:33:37.63ID:1jN6Nl4i
>>851
それは >>843 に言って欲しいし
あの程度の奴でいちいち関数化するのもどうかと思う

854デフォルトの名無しさん2017/03/18(土) 11:59:15.66ID:njmdr4yw
>>845
横だけどご存知なら教えて下さい
do〜系の処理系を持たないのはpythonのポリシーか何かですか?

855デフォルトの名無しさん2017/03/18(土) 12:55:48.59ID:1jN6Nl4i
>>854
Do
 ...
Loop
って言うのが構文的に難しいからでしょ

856デフォルトの名無しさん2017/03/18(土) 14:20:38.66ID:IfcuZKcb
>>854
https://mail.python.org/pipermail/python-ideas/2013-June/021610.html
Guidoが「馬鹿にはあまりに高度すぎる機能だから拒否する」と述べたので入っていない

プログラミング言語のデザインにポリシーなんて高度なものはなく、基本的に開発者の腹具合だけである
思想というほど成熟したものでもない
俺は嫌いだと言われたら入らない

857デフォルトの名無しさん2017/03/18(土) 14:31:30.97ID:IfcuZKcb
そうじゃない言語はどれかというとC++とかJavaとか
あれらは委員会による設計をしている
(Javaは怪しいが)独裁者に振り回されることは減る
一方で自分の提案を通そうとするための馴れ合い
仕様の肥大化、策定の長期化を招く

858デフォルトの名無しさん2017/03/18(土) 18:40:35.06ID:vEldA4mj
python3のクラスで
import unittest
class TestCap(unittest.TestCase):
def test_one_word(self):
text = 'Duck'
self.assertEqual(text, 'Duck')

の場合self.assertEqualはsuper()で呼び出しちゃダメなの?
そもそもどうしてselfが出てくるの?

859デフォルトの名無しさん2017/03/18(土) 20:20:43.59ID:IfcuZKcb
宗教的な理由のため

860デフォルトの名無しさん2017/03/18(土) 21:48:13.72ID:G3oyudm3
まあOO自体が一つの宗教
誰が書いても同じようになるというPythonの売りが
OOで見事に消し潰されているのは罪深いことだ

861デフォルトの名無しさん2017/03/18(土) 22:02:42.41ID:vEldA4mj
つまりどういうことだ

862デフォルトの名無しさん2017/03/18(土) 22:27:57.82ID:NEZ4wluv
>>861
つまり、そんなこと気にすんなってこと
test ができればオケ

863デフォルトの名無しさん2017/03/19(日) 09:28:19.12ID:CiiadJVM
>>855
>>856
ありがとう、そうむずかしい構文とは思わなくも思惑は思惑だから仕方ない

>>856
Ritchieにも聞かせたい言葉だな

864デフォルトの名無しさん2017/03/19(日) 10:28:59.82ID:IinMJCLx
>>863
Python の構文は('_' は空白のつもりね)
1: aaaa
2: __bbbb
3: __cccc
4: dddd
となっていたら 1〜3 をブロックと認識するからブロックの終端の記述がない
なので Do〜While みたいに終端に条件を書かないといけない構文は難しいって話
他の言語は終端があるからそう言う問題は発生しない

865デフォルトの名無しさん2017/03/19(日) 12:32:09.54ID:xRIvmzBZ
"2017/03/19"みたいな日付とその日の値段が記録されたcsvをパースしてmatplotlibでグラフにしたいんだけど
日付の部分をstrじゃなくて時間の軸として扱うにはどうすればいい?

866デフォルトの名無しさん2017/03/19(日) 12:42:04.00ID:LWm6dPWw
>>865
strからdatetimeに

867デフォルトの名無しさん2017/03/19(日) 12:59:35.56ID:xRIvmzBZ
>>866
datetimeのオブジェクトならそのままx軸につっこめる?

868デフォルトの名無しさん2017/03/19(日) 13:13:33.92ID:LWm6dPWw
>>867
できる

869デフォルトの名無しさん2017/03/19(日) 13:27:30.74ID:xRIvmzBZ
>>868
ありがとう、strptimeメソッドを使えば文字列から変換できるのね

870デフォルトの名無しさん2017/03/19(日) 14:27:32.69ID:zGHcaEct
tzに注意

871デフォルトの名無しさん2017/03/19(日) 22:28:25.85ID:Lj5IhMr8
>>864
if-elseと同じじゃない?

872デフォルトの名無しさん2017/03/19(日) 23:52:17.84ID:W8FwC9AB
print(' '.join(map(str, sorted(set(tmp)))))
#tmp = [3, 4, 2, 1,...N]
#重複削除、並び替え、文字列に変更、つなげて出力


上のようなコードがあるとして、
()のネストはどの位までが許容範囲ですか?

873デフォルトの名無しさん2017/03/20(月) 00:02:48.06ID:G9+XvfW+
括弧2つまで
toolz.functoolzのpipeとか使う

874デフォルトの名無しさん2017/03/20(月) 00:05:54.26ID:sXp84j6l
>>872
人それぞれ、ただスタイルガイドには一行は79文字までというのはあるから長すぎるとアウト

875デフォルトの名無しさん2017/03/20(月) 00:14:08.40ID:3ZZI/KAX
()の数を減らしつつ変数も無いの良いですね!
標準ライブラリとかでも同じ事可能ですか?

876デフォルトの名無しさん2017/03/20(月) 00:26:32.61ID:G9+XvfW+
>>875
pipeのこと? 自分でpipeメソッドとかpipeオペレータみたいの作ればできるよ
toolz.functoolzのpipeのソース
http://toolz.readthedocs.io/en/latest/_modules/toolz/functoolz.html#pipe

>>872のコードはこんな感じに
pipe(tmp, set, sorted, partial(map, str), ' '.join, print)

877デフォルトの名無しさん2017/03/20(月) 08:41:28.66ID:A6CX4sNJ
A= 1:a 2:b 3:c 1:d
B= 1:e 2:f
C= 1:a:e 2:b:f 3:c 1:d:e

Aの数字部分をBの数字で検索して
該当する数字があったらBのアルファベットをAに追加して
Cのような結果を得たいのですが
Aの数字が重複していて辞書が使えなくて
どうすればいいのかわかりません。
ご指導よろしくお願いします。
python2.7です。

878デフォルトの名無しさん2017/03/20(月) 10:20:35.47ID:Ia6BH4Hf

8798542017/03/20(月) 10:42:07.11ID:nRwuUvF6
>>864
そうか、インデントに意味ある言語でしたっけ
ブロック構造の明示って結構悩ましいですね
重ねてありがとう

880デフォルトの名無しさん2017/03/20(月) 11:01:45.40ID:6RAbChbA
>>871
else は else ブロックの開始だから終端ではないでしょ

>>879
やってやれなくはないと思うけど見易さとの両立は簡単じゃないと思う

881デフォルトの名無しさん2017/03/20(月) 13:35:45.83ID:4V6fNJEd
>>877
Aをいっこずつの辞書たちで作ってマージ

882デフォルトの名無しさん2017/03/20(月) 17:16:42.51ID:l4MXbYf5
>>877
https://gist.github.com/anonymous/c6225d9299726b47ae4e03189ad8ad0f
一応動くものはできたけどけっこう面倒くさいな
python2.7.13で動作確認

883デフォルトの名無しさん2017/03/20(月) 17:22:42.32ID:c+tYojiZ
素直に改行した方が見やすいと思う

print(' '.join(
  map(str, sorted(
    set(tmp)))))

884デフォルトの名無しさん2017/03/20(月) 17:27:48.11ID:G9+XvfW+
>>880
>else は else ブロックの開始だから終端ではないでしょ

do-untilにしてuntilブロックの開始として認識しても同じことじゃない?
untilはその後にインデントされたブロックを受け取らないっていうルールを課せばいいだけで
インデント記法の言語だからってdo-while系の実装が他言語より難しいってのは理解できない

885デフォルトの名無しさん2017/03/20(月) 17:43:29.84ID:XdgtrFwn

886デフォルトの名無しさん2017/03/20(月) 18:33:03.42ID:LcNjV7jZ
>>884
いや、だからできないって話じゃなくて
> untilはその後にインデントされたブロックを受け取らないっていうルールを課せばいいだけ
と言うような特殊ルールが必要でしょって話
実際の見た目も...
1: do
2: __aaaa
3: __bbbb
4: until ...
5: while ...
6: __cccc
7: __dddd
8: if ...
9: __eeee
人によるんだろうけど俺には6行目が until ブロックの始まりのように見えてしまう

887デフォルトの名無しさん2017/03/20(月) 18:35:52.50ID:sXp84j6l
まあGuidoは心の中で普通のwhileで十分やろとか思ってそうだな

888デフォルトの名無しさん2017/03/20(月) 18:58:19.86ID:MXp+WHcu
1: do
2: __aaaa
3: __bbbb
4: __until ...

なら、そう不自然でもないでしょ。関数のdef~returnと似た感じで。
まあ必要だとは思わんが。

889デフォルトの名無しさん2017/03/20(月) 19:03:55.76ID:sXp84j6l
untilがブロックの中にあるのはキモすぎるなと、主観だけど

890デフォルトの名無しさん2017/03/20(月) 19:10:07.12ID:MXp+WHcu
じゃあキーワードを breakif にするとか。

891デフォルトの名無しさん2017/03/20(月) 19:57:03.67ID:LcNjV7jZ
>>890
それなら
while True:
__aaaa
__if condition:
____break
で充分なような気がする

892デフォルトの名無しさん2017/03/20(月) 20:18:16.81ID:A6CX4sNJ
>>881 >>882 >>885
みなさん
ありがとうございます!
勉強しながらトライしてみます。

893デフォルトの名無しさん2017/03/20(月) 20:38:40.38ID:MXp+WHcu
>>891
だから、それ必要ないってポリシーなんでしょ。構文的に難しいって理由じゃなくて。

894デフォルトの名無しさん2017/03/20(月) 20:42:18.91ID:G9+XvfW+
>>886
インデントされたブロックを受け取らない文なんてPython書いてればいくらでも使うじゃん 特殊じゃないよ
それにuntilの下に必ず空行入れるから6行目がuntilブロックの始まりに見えるなんてこともまずないでしょ

俺は>>888のほうが不自然に感じるかな
for-elseやif-elseを考えるとuntilだけブロック内ってなんか違う気がする

895デフォルトの名無しさん2017/03/20(月) 20:57:25.03ID:kRRsPMR+
プログラムの先頭でimportしたモジュールを使うクラスをほかのプログラムから呼ぶ時って
呼び出す側のプログラムでもimportしなきゃならないの?

896デフォルトの名無しさん2017/03/20(月) 21:09:14.26ID:6EO7QiL7
試せよと言いたいが結論から言えばimportしなくていい

897デフォルトの名無しさん2017/03/20(月) 21:09:25.37ID:LcNjV7jZ
>>894
> インデントされたブロックを受け取らない文なんてPython書いてればいくらでも使うじゃん 特殊じゃないよ
具体的によろしく

8988542017/03/20(月) 21:10:05.29ID:nRwuUvF6
>>882
w(゚∀゚)
殿下は永遠だ

8998542017/03/20(月) 21:15:18.73ID:nRwuUvF6
>>888-891
機能としての繰り返し構造で「一度は処理する」流れはある!
あるにはあるが、コーディング上の特質まで拘る言語だと存在が難しいかもしれない
アセンブラ時代では普通に処理・判断・分岐の流れで繰り返す事があったが
pythonの見栄えを含めたルールに今ひとつしっくり来ないね

言語って難しいと別な意味で思う

900デフォルトの名無しさん2017/03/20(月) 21:28:14.72ID:6EO7QiL7
どうでもいい
話してる暇があったら僕の考えた最強の言語でも作ってみろ
誰もお前の妄想なんか体現してやらねーよ

901デフォルトの名無しさん2017/03/20(月) 21:54:45.70ID:G9+XvfW+
>>897
print(“foo”)
__print(“bar”)

902デフォルトの名無しさん2017/03/21(火) 12:53:28.65ID:l9q4915F
クラスに実装したメソッドが増えすぎて読みづらくなってきたので、C++のように別ファイルに分割しようとおもうのですが、Pythonだとどうやるのが一般的なのでしょうか?

903デフォルトの名無しさん2017/03/21(火) 13:00:44.91ID:RBsv5qkl
>>901
そうか、
(制御フロー文で)インデントされたブロックを受け取らない文
って書いてないとダメな人もいるのね...

904デフォルトの名無しさん2017/03/21(火) 13:54:42.63ID:Z6nDRQUG
>>902
できない
Pythonにおいては一般的ではない

905デフォルトの名無しさん2017/03/21(火) 14:09:34.83ID:6WWBsw/3
>>899
while True:
..hoge
..fuga
..if until==False: break

906デフォルトの名無しさん2017/03/21(火) 14:11:41.64ID:ymW1yDlu
>>902
---file hoge.py---
class Hoge:
...method1

---file fuga.py---
class Fuga(Hoge):
...method2

---file hage.py--
class Hage(Fuga):
...method3

907デフォルトの名無しさん2017/03/21(火) 14:32:22.05ID:l9q4915F
>>904,906
レスありがとうございます。
別のオブジェクトからコマンドを受けて、各コマンドに対応したメソッドで処理をするコマンドプロセッサのようなクラスを作っています。
同じ階層の機能を実装したメソッドが増えすぎた場合というのはどのような形で管理するのでしょうか?

908デフォルトの名無しさん2017/03/21(火) 14:37:22.69ID:6WWBsw/3
各コマンドに対応したメソッドを定義したオブジェクトを作って call かな
そのオブジェクトはメソッドごとに違うクラスで
全て共通の抽象クラスから派生したものにするとかね

909デフォルトの名無しさん2017/03/21(火) 15:47:09.08ID:U/W71QG6
あのすいません、hogeとは何ですか?
調べても意味が分かりませんでした。

910デフォルトの名無しさん2017/03/21(火) 15:50:43.25ID:uzSvvu2S
>>909
メタ構文変数と言って特に意味はない、名前付けに困ったらとりあえずあてはめておくもの

911デフォルトの名無しさん2017/03/21(火) 16:28:28.16ID:F9uzFhK1
>>909
穴がほげる事

912デフォルトの名無しさん2017/03/21(火) 16:28:49.49ID:F9uzFhK1
穴=セキュリティホールな
つまり脆弱性が出来る事をhogeという

913デフォルトの名無しさん2017/03/21(火) 16:58:01.02ID:jV0Y+t/Y
>>902
モジュールに分割
次点でMixin
Single Inheritanceで継承構造を深くするのはオススメしない

914デフォルトの名無しさん2017/03/21(火) 17:32:09.44ID:jV0Y+t/Y
>>903
インデントは字句解析のレベル
インデントされたブロックを受け取らないかどうかは構文解析のレベル

インデントされたブロックを受け取らないかどうかは
制御フロー文かどうかとは全く関係なく決められるルール

結局>>864の主張には全く根拠がない

915デフォルトの名無しさん2017/03/21(火) 19:12:46.26ID:72kEtT2Q
>>914
> 見易さとの両立は簡単じゃないと思う
の意味が理解できてないのかなぁ
まあ、感覚的なものだから俺はそうは思わないって言うんだろうな
もう引っ込みつかなくなってるみたいだし

916デフォルトの名無しさん2017/03/21(火) 19:31:01.92ID:l9q4915F
>>908
やはりそうなりますよね。
ちなみになんですが、私、オブジェクト指向を始めたばかりでそのようなオブジェクトやクラスを呼ぶ名称がとんと見当がつかないのですが、
抽象クラスやその具象クラス、オブジェクトにつける名前と言うのはどういった名前になるのでしょうか……
少し例を教えていただけると有り難いです。

>>913
Mixinというのは初めて知りました。これは何故次点なのですか?
またモジュールに分割というのは>>908と同じような作り方でしょうか?

917デフォルトの名無しさん2017/03/21(火) 19:47:37.03ID:2crVP7Yr
hogeって書くとジジィ扱いされるよな。。実際、ジジィなんだけど。

918デフォルトの名無しさん2017/03/21(火) 19:59:09.85ID:3q/SWegZ
こんなのどうかな
do:
  aaa
  bbb
:until ccc == ddd
while True:
  eee
  fff

919デフォルトの名無しさん2017/03/21(火) 20:02:36.48ID:zOC6lCjq
hooとかfooはノリノリな感じがして好き

920デフォルトの名無しさん2017/03/21(火) 20:10:29.82ID:Wm5e28fx
私「フッ、こういうのはメタ構文変数と言って、ノリノリな感じが語源になったわけではないのだよ」
私「どれWikipediaで調べてからマウンティングするか」

https://ja.wikipedia.org/wiki/メタ構文変数
>プログラミング言語Pythonでは、メタ構文変数に spam, ham, eggs などを使う。

私「!?」

921デフォルトの名無しさん2017/03/21(火) 20:11:48.49ID:Abf9RIR5
Pythonを使う前に空飛ぶモンティパイソンを100回見よう!

922デフォルトの名無しさん2017/03/21(火) 20:12:00.13ID:uzSvvu2S
hage

923デフォルトの名無しさん2017/03/21(火) 20:40:10.13ID:wMSmjxpw
>>916
Rubyは多重継承できない単一継承モデルだから、親クラスは1つのみ。
継承関係にない、便利な関数・utilityなどは、横からmixinする。
mixinされたモジュールも、継承チェーンに入れられる

Object ← 親 ← 子
Object ← utility ← 親 ← 子

Pythonでも、調べてくれ

924デフォルトの名無しさん2017/03/21(火) 20:51:30.07ID:jV0Y+t/Y
>>915
もう恥ずかしいからやめてくれよ〜
>>888の形式だって>>891とパーサーの処理はそう変わらないんだから何も難しいことなんてないだろ?

indentがブロックの開始でdedentがブロックの終端
そういうルールなだけで括弧やdo/end使ってる言語と基本同じだよ
python使ってるやつはそんなことも知らないのかって思われる

925デフォルトの名無しさん2017/03/21(火) 21:55:47.37ID:kMyYv3zx
なんかKeyErrorってコンパイルしたら出てくるけど考えられる原因って何かある?

926デフォルトの名無しさん2017/03/21(火) 21:57:34.32ID:uzSvvu2S
>>925
辞書型オブジェクトから存在しないキーを取ろうとすると出るエラー、解決策はググれ

927デフォルトの名無しさん2017/03/21(火) 22:02:37.33ID:5glqzG46
while ループ中で最初にa=0という変数を作っての最後でa+=1しても
2周目で0に戻らないためにはどうすればいいですか?

928デフォルトの名無しさん2017/03/21(火) 22:03:59.43ID:uzSvvu2S
>>927
aの宣言をループの外でやるかその目的ならforループに置き換えるのが分かりやすいかなと

929デフォルトの名無しさん2017/03/21(火) 22:11:03.98ID:5glqzG46
>>928
外で宣言してもなぜか0に戻るんですよね

930デフォルトの名無しさん2017/03/21(火) 22:13:18.30ID:uzSvvu2S
>>929
pastebin辺りかこのスレでもいいからソース貼ってみて?

931デフォルトの名無しさん2017/03/21(火) 22:18:12.79ID:72kEtT2Q
>>924
誰もパーサーの処理なんて問題にしてないのに何を必死になってるんだい?
マジで引っ込みつかなくなってるじゃん w

932デフォルトの名無しさん2017/03/21(火) 22:21:21.56ID:5glqzG46
pastebin.com/bmD2DHrn

これでいいです?まだ作りかけだけど

933デフォルトの名無しさん2017/03/21(火) 22:22:46.16ID:jV0Y+t/Y
>>931
インデントがパーサー以外の何に関係してんの?
息吐くように嘘をつくなよホント

934デフォルトの名無しさん2017/03/21(火) 22:32:09.98ID:uzSvvu2S
>>932
ループ内に既に存在するaと変数名が被ってるからどちらかの変数名を変えないと

935デフォルトの名無しさん2017/03/21(火) 22:48:38.55ID:EOakUJK/
いつまでdo-whileの話してんだよ
いい加減死ねよADHD野郎

936デフォルトの名無しさん2017/03/21(火) 23:02:57.79ID:72kEtT2Q
>>933
嘘?
意味わからん
誰も実装の話なんてしてないのに w

937デフォルトの名無しさん2017/03/21(火) 23:07:50.55ID:jV0Y+t/Y
>>916
Mixinが次点なのは一つのクラスにメソッドを定義する必然性を感じなかったから

モジュール分割はこの場合は各コマンドの意味的カテゴリ別にクラスを分割するイメージで書いたけど
>>908の人が書いてるようなコマンドパターン的なやり方もいいと思う
その場合でもある程度のまとまりでモジュールにすることになるんじゃないかと

938デフォルトの名無しさん2017/03/21(火) 23:18:48.13ID:2crVP7Yr
>>920
ファーー!

939デフォルトの名無しさん2017/03/21(火) 23:31:39.75ID:5glqzG46
>>934
動きました。ありがとう

940デフォルトの名無しさん2017/03/22(水) 00:01:29.44ID:hOsz3hmd
>>937
なるほど……。最早スレチかもしれませんが、
「コマンドの処理部を一つのオブジェクトにまとめて、コマンド受付用の公開インターフェイスを用意して内部で各コマンドに対応するメソッドに振り分ける」
みたいな感じで作っていたのですが、pythonというかオブジェクト指向っぽくするにはどうしたら良いのでしょうか?
この辺はもうデザインパターンを学べという感じでしょうか?

941デフォルトの名無しさん2017/03/22(水) 00:34:58.08ID:vhfzvoEm
>>940
その作り方で別にいいと思うけど?
例えばこのサンプルでcat/dog/bearに対応するメソッドが各クラスになってるのが普通に分割するイメージ
https://www.safaribooksonline.com/library/view/python-cookbook-2nd/0596007973/ch04s17.html

こっちはコマンドパターンのイメージ
http://python-3-patterns-idioms-test.readthedocs.io/en/latest/FunctionObjects.html
Undo/Redoとかも必要ならこっちのほうがいいかもね

942デフォルトの名無しさん2017/03/22(水) 00:51:52.54ID:hOsz3hmd
>>941
参考URLありがとうございます。
今のところコマンドパターンが使いやすそうではあるのですが、まだ作り始めたばかりなので一度アプリケーション全体の設計も見直してみようと思います。
遅くまで皆様ありがとうございました。

943デフォルトの名無しさん2017/03/22(水) 17:02:16.91ID:/LjNvXVg
pythonにopencvを入れたいです
VSからc++で使うためにソースからcmakeで前にビルドしたのですが
pythonに入れるにはまた最初から入れ直しですか?
今あるopencvのソース拾って動いてくれたりしませんか??

944デフォルトの名無しさん2017/03/22(水) 17:32:47.40ID:vhfzvoEm
pythonバインディング付きでビルドしてるなら
PYTHONPATHにopencvのパスを追加するかPYTHONPATHが通ってるところに必要なファイルのリンクをはるか

945デフォルトの名無しさん2017/03/22(水) 17:36:21.25ID:/LjNvXVg
ありがとうございます。
バインディングが付いているか調べる方法はありますか??

946デフォルトの名無しさん2017/03/22(水) 17:41:33.53ID:MH0mX7xP
ビルド済みDLL同梱のがあるでしょ

947デフォルトの名無しさん2017/03/22(水) 17:51:32.15ID:/LjNvXVg
DLLだけ拾ってできますか??
opencv自体はもうあるので重複を避けたいです。

948デフォルトの名無しさん2017/03/22(水) 18:27:50.62ID:vhfzvoEm
少し調べればすぐ分かることなんだから
聞く前にまず自分で調べなよ

949デフォルトの名無しさん2017/03/22(水) 20:02:01.65ID:pQEBF+SX
>>947
初心者のくせに欲張りだね君は

950デフォルトの名無しさん2017/03/22(水) 22:12:43.36ID:MH0mX7xP
おそらく数年前の導入方法を引きずってるんでしょう
現在では、パッケージマネージャから簡単にインストールできるのに

951デフォルトの名無しさん2017/03/22(水) 22:18:25.20ID:E3vl/zz6
そのパッケージマネージャをマネージするパッケージマネージャをマネージするパッケージマネージャをマネージするのはパッケージマネージャ?

952デフォルトの名無しさん2017/03/23(木) 02:01:24.38ID:hMrdA28p
もしかして全般的に3.6より2.7の方が速い?

953デフォルトの名無しさん2017/03/23(木) 12:19:32.96ID:JkO5l9za
>>922
hage
hige
mage
を支持します

954デフォルトの名無しさん2017/03/23(木) 12:41:45.82ID:AyyVp0Pm
>>943
>pythonに入れるにはまた最初から入れ直しですか?
>今あるopencvのソース拾って動いてくれたりしませんか??

python用のcvモジュールが「ソースからcmakeで前にビルドした」ときに造ってあればOK

955デフォルトの名無しさん2017/03/23(木) 12:43:03.50ID:39r6GGlR
>>952
プログラミングをする上でよくもこんな糞な質問が出来たな
速いかどうかは自分でベンチマーク取って確かめろ

956デフォルトの名無しさん2017/03/23(木) 13:29:43.51ID:dT4NbpKb
>>953
tingeは?

957デフォルトの名無しさん(霧の向こうに繋がる世界)2017/03/23(木) 18:36:24.71ID:ijnHsh0m
みなさんHTTP/2への対応はお済みですか?
nghttp2がないとHTTP/2が使えないPythonってダメですね
Goにユーザー取られちゃいますよ

958デフォルトの名無しさん2017/03/23(木) 19:04:11.68ID:atuvna0D
使えますが

959デフォルトの名無しさん2017/03/23(木) 19:42:39.16ID:J2eFkRx5
Goは舎弟なので、取られるとか言う間柄にはない

960デフォルトの名無しさん2017/03/23(木) 19:46:18.43ID:qu7cQuqJ
GoもPythonも使ってるけど言語としての性格が根本的に違うのに取られるも何も無いと思うが

961デフォルトの名無しさん2017/03/23(木) 19:51:41.15ID:xoR/oCcH
どう違うんだ?なんなら詳しく聞いてやろうか?

962デフォルトの名無しさん2017/03/23(木) 19:53:19.53ID:10TW5lfi
何様だよ
ご教示くださいかプリーズって言え

963デフォルトの名無しさん2017/03/23(木) 19:57:30.18ID:10TW5lfi
というか本当に新参の半分は引き取って貰えると助かる
機械学習ブームのせいで出来損ないばかり増えすぎだ

964デフォルトの名無しさん2017/03/23(木) 19:58:23.66ID:xoR/oCcH
じゃあ聞いてやるからご教示くださいかプリーズ

965デフォルトの名無しさん2017/03/23(木) 20:15:04.23ID:WvFZIAo6
>>963
すまんな、パイソンのこと何もよう分からんけど見よう見まねでコード書いてるわ

966デフォルトの名無しさん2017/03/23(木) 20:49:30.79ID:Q5D12GoP
>>963
ここは初心者スレ、嫌なら去るのはおまえだ

967デフォルトの名無しさん2017/03/23(木) 20:52:13.77ID:8mLShO/C
>>966 禿同。

968デフォルトの名無しさん2017/03/23(木) 22:29:57.12ID:xoR/oCcH
無能なベテランの俺は居てもいいんか?

969デフォルトの名無しさん2017/03/23(木) 23:03:49.08ID:dT4NbpKb
ええんやで

970デフォルトの名無しさん2017/03/24(金) 18:02:09.03ID:yAGaZT8A
パイソンのプログラムの中で、コマンドを実行したい時
例えばプログラムの中でコンソールを起動してpipを実行したい時はどうすればいいですか?

971デフォルトの名無しさん2017/03/24(金) 18:07:03.42ID:39OHyuzh
>>970
標準ライブラリのsubprocess使う
https://docs.python.jp/3/library/subprocess.html

972デフォルトの名無しさん2017/03/24(金) 18:16:24.02ID:yAGaZT8A
>>971
記入漏れすみません。
使い方としては、別のコンソールを立ち上げてメインプログラムとは別で走らせたいのですが、無理ですか??

973デフォルトの名無しさん2017/03/24(金) 18:22:21.87ID:39OHyuzh
>>972
窓出したいってこと?それとも非同期で走ってればおk?

974デフォルトの名無しさん2017/03/24(金) 18:28:33.70ID:yAGaZT8A
>>973
窓は出来れば出したいです。
メイン起動→サブ呼び出し→同時進行→メイン終了→サブはまだ止まらない→サブ側の窓でctrl-c押された時でサブ終了
という形が理想なのですが。

975デフォルトの名無しさん2017/03/24(金) 19:21:03.39ID:FFzzXdlf
てす

976デフォルトの名無しさん2017/03/24(金) 19:22:46.85ID:FFzzXdlf
>>974
とりあえずこんなもんでどうかな
ttp://pastebin.com/9K6PLv5A

977デフォルトの名無しさん2017/03/24(金) 19:23:24.24ID:FFzzXdlf
長文打ったら何かが規制に引っかかって全俺が泣いた

978デフォルトの名無しさん2017/03/24(金) 19:26:17.69ID:FFzzXdlf
あーそうそう窓を出すって動作が環境依存だからWinでしか動かんよ

9799742017/03/24(金) 19:30:45.29ID:Ixoq+e04
>>976
これです、ありがとうございました!

980デフォルトの名無しさん2017/03/24(金) 19:31:41.62ID:Ixoq+e04
あ、書いてなかったですね、すみません。
winなので大丈夫です、ありがとうござます!

981デフォルトの名無しさん2017/03/24(金) 19:44:11.88ID:FFzzXdlf
>>979
startで別窓出せるから覚えとくといいよ、後こいつcmdの組み込みだからshell=True無いと実行できないから気をつけて

982デフォルトの名無しさん2017/03/25(土) 15:01:15.96ID:dW0T51Nu
pythonのリストで

def dice():
....return (random.randint(1, 601) % 6) + 1

status = []
for lp_0 in range(5):
....status.append(dice())

上記のような方法で関数からのretuen値を5回リストに入れる場合for文でまわさないで書く方法ありますか?

983デフォルトの名無しさん2017/03/25(土) 15:09:28.97ID:5MnOmzEx
np.random.random_integers(1, 6, 5)

984デフォルトの名無しさん2017/03/25(土) 15:38:20.94ID:dW0T51Nu
>>983
random_integersは初めて知りました
ありがとうごさいます

985デフォルトの名無しさん2017/03/25(土) 15:47:29.60ID:5MnOmzEx
私も初めて知りました

986デフォルトの名無しさん2017/03/25(土) 15:54:15.22ID:ZSinSYil
くだすれPython(超初心者用) その33
http://echo.2ch.net/test/read.cgi/tech/1490424742/

987デフォルトの名無しさん2017/03/25(土) 18:23:32.35ID:EmT9w5Dp
rrule(YEARLY, bymonth=(1,7), dtstart=from, until=to)

上記のように明示的に変数に値を入れて渡すタイプの関数について
text = 'bymonth=(1,7), dtstart=from, until=to'として
rrule(YEARLY, text)的なことをやりたいのですがこのままではできず。。
何かできる方法はありますでしょうか?

988デフォルトの名無しさん2017/03/25(土) 18:31:58.35ID:AXTU3a0H
>>987
ちょっと違うけどこれでどう?
http://qiita.com/yoichi22/items/e9e8b7fa8704c3dfd000

989デフォルトの名無しさん2017/03/25(土) 18:40:43.97ID:5MnOmzEx
そういう問題じゃなくて本気でテキストを渡したいみたいなので
jsonとかじゃだめなの?

990デフォルトの名無しさん2017/03/25(土) 18:45:18.29ID:AXTU3a0H
パーサー通して辞書にしちゃえばいける、そのままは無理

991デフォルトの名無しさん2017/03/25(土) 18:46:31.43ID:AXTU3a0H
いや関数側いじれるなら可変長引数使えばできるな

992デフォルトの名無しさん2017/03/25(土) 20:11:45.64ID:++OH//Pd
自分だけで使うプログラムならexecやevalに頼るのもありか
人に使わせるのはやめとけ

993デフォルトの名無しさん2017/03/25(土) 20:12:38.04ID:LRDwX3vu
textをstringで受け取って関数内でsplitする

994デフォルトの名無しさん2017/03/25(土) 20:13:27.03ID:EmT9w5Dp
>>988-991
回答ありがとうございます。

http://www.yoheim.net/blog.php?q=20160609
http://www.yoheim.net/blog.php?q=20160610
色々調べていたのですが、上記の話であっていますでしょうか?
勉強がてらコーディングしています。
もし違う話とかでしたら参考URL教えていただけると助かります。

995デフォルトの名無しさん2017/03/25(土) 20:15:37.56ID:MW++xTd7
>>986
たておつ!

996デフォルトの名無しさん2017/03/25(土) 20:24:08.31ID:EmT9w5Dp
>>988-991
text = {
'bymonth':(1,7),
'dtstart':from_date,
'until':to_date,
}
rrule(freq, **test_text)

上記のようにしたらできました!
色々教えていただいてありがとうございました。勉強になりました。

997デフォルトの名無しさん2017/03/26(日) 13:38:04.98ID:WjbALPaU
うめ

998デフォルトの名無しさん2017/03/26(日) 14:02:36.05ID:eOEOi6dr

999デフォルトの名無しさん2017/03/26(日) 14:10:42.99ID:bcDXrrDg
おかか

10008542017/03/26(日) 14:33:34.16ID:9Nbedpcg
皆よろ昆布1000
次スレ
>くだすれPython(超初心者用) その33
>http://echo.2ch.net/test/read.cgi/tech/1490424742/

10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 50日 3時間 32分 28秒

10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

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

▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。