トップページ⇒tech
1002コメント294KB

くだすれPython(超初心者用) その31©5ch.io

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

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

前スレ
くだすれPython(超初心者用) その30
http://echo.2ch.net/test/read.cgi/tech/1466569767/
関連スレ
Pythonのお勉強 Part51
http://echo.2ch.net/test/read.cgi/tech/1443700103/

◆関連リンク Python の Home Page
ttp://www.python.org/

◆長いコードはこういうところにはってください
ttp://ideone.com/
ttp://codepad.org/
ttp://pastebin.com/
ttp://dpaste.com/
https://try.jupyter.org/

◆まとめwiki
ttp://python.rdy.jp/
0002デフォルトの名無しさん2016/10/12(水) 13:41:29.00ID:CGbCriuU
ネットにはデマ情報がいっぱい残ってるので正しい情報をメモ

cmd で UTF-8 使える方法 (chcp 65001 について)

http://nazochu.blogspot.jp/2011/08/blog-post_26.html
mintty
http://dogmap.jp/2011/11/15/mintty/
mintty
http://tanakh.jp/posts/2011-11-15-windows-terminal.html

↓
色々紆余曲折あったけど Git インスコして GitBash 使うのが一番楽っぽい
https://git-for-windows.github.io/
0003デフォルトの名無しさん2016/10/12(水) 13:45:24.33ID:kYS44Rbd
>1 おつですしおすし
0004デフォルトの名無しさん2016/10/12(水) 13:48:49.40ID:2rCC56eT
いまの IPython って昔の IPython と似ても似つかないものなんだな
0005デフォルトの名無しさん2016/10/12(水) 13:52:21.29ID:qbGrPVrc
◇ Windows 版「Python」における任意の DLL 読み込みに関する脆弱性

■ IPA(独立行政法人情報処理推進機構)セキュリティセンターおよび一般社団法人
JPCERTコーディネーションセンター(JPCERT/CC)は、2015 年 10 月 1 日に
「Windows 版『Python』における任意の DLL 読み込みに関する脆弱性」を、JVN
(Japan Vulnerability Notes)において公表しました。

◆概要
・Python Software Foundation が提供する Windows 版「Python」は、プログラ
ムを実行するためのソフトウェアです。

・Windows 版「Python」は、実行の際に特定の DLL を読み込みます。Windows 版
「Python」には、DLL を読み込む際の検索パスに問題があり、カレントディレ
クトリ内にある readline.pyd という名の意図しない DLL を読み込んでしまう
脆弱性が存在します。

・python.exe が持つ権限で任意のコードを実行される可能性があります。

・以下の回避策を適用することで、本脆弱性の影響を回避可能です。
- python.exe を実行する際、カレントディレクトリ内に readline.pyd という
名のファイルが存在しないことを確認する

◆この脆弱性情報は、2015 年 3 月 18 日に IPA が届出を受け、JPCERT/CC が、
製品開発者と調整を行ない、本日公表したものです。

◆詳細については、こちらをご覧ください
・Windows 版「Python」における任意の DLL 読み込みに関する脆弱性
URL:https://jvn.jp/jp/JVN49503705/index.html
※もしくは、https://jvn.jp/jp/ から「JVN#49503705」を参照
0006デフォルトの名無しさん2016/10/12(水) 14:12:37.41ID:2rCC56eT
関連スレ

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/
0007デフォルトの名無しさん2016/10/12(水) 17:43:09.94ID:bqn+ql9d
ばかはしなないとなおらない
0008デフォルトの名無しさん2016/10/12(水) 17:51:50.53ID:iTXTBuwT
かわいそうな >>7
0009デフォルトの名無しさん2016/10/12(水) 18:19:24.75ID:2rCC56eT
きみら停電大丈夫だったかい?
0010デフォルトの名無しさん2016/10/12(水) 19:14:52.77ID:bqn+ql9d
boostってもう流行らんのかね
0011デフォルトの名無しさん2016/10/13(木) 10:43:35.37ID:Xwk5OgLP
最近はこんな制限あるんだな

>windows版とandroid版があるけど、窓に泥をインストールすればいいやん!
って思ったけど無理みたい
他のOSはインストールできないように対策されてる
http://business.newsln.jp/news/201609211730290000.html
0012デフォルトの名無しさん2016/10/13(木) 14:40:34.37ID:sI3p3GwZ
ノートはmac以外選ぶ余地ねえだろ
メーカーの社員でもなければ
0013デフォルトの名無しさん2016/10/13(木) 14:43:12.26ID:sI3p3GwZ
まあwindows機にlinuxなんか入れるなよ
bash(ubuntu) on windowsで我慢しろってことなんだろうけど
0014デフォルトの名無しさん2016/10/13(木) 22:34:04.94ID:ka1WGkon
>>11
LenovoはLinuxと親和性が良いと昔アピールしてたのにね。
0015デフォルトの名無しさん2016/10/14(金) 08:20:36.86ID:4Dkce5VN
spyder3出たから試してみたけどpython3+pyqt5だとsegvって起動せんわ。
python2かpyqt4なら動くけどバージョン不整合面倒いな。
0016デフォルトの名無しさん2016/10/14(金) 12:17:06.40ID:dGS+DO1u
小さい数字の順に出力する方法を教えて下さいお願いします
0017デフォルトの名無しさん2016/10/14(金) 14:17:33.48ID:7/LUO9Fb
母集団がどのようなデータ構造か位は書こう
情報がなかったらsortって言われてお終いだと思うけど
0018デフォルトの名無しさん2016/10/14(金) 15:34:37.01ID:Wqp+crjm
p次元ベクトルx(変数ベクトル)と同じくp次元の定数ベクトルaを引数にとり
xとaの内積をxi(x=[x1,x2,,,,,xp]とする)で偏微分し、その導関数を出力するにはどういうコードを書けばいいのでしょうか
numpyを使ってx、aを定義し内積を計算するとこまではできるのですが、xを変数とみて内積を偏微分する方法がわかりません
0019デフォルトの名無しさん2016/10/14(金) 15:36:57.47ID:E37+bO6r
sympy
0020デフォルトの名無しさん2016/10/14(金) 15:37:24.26ID:dGS+DO1u
>>17
例えば、このような数字を標準入力で入力してそれを数字の小さい順に出力する方法
5
2
8
19
0021デフォルトの名無しさん2016/10/14(金) 15:38:48.49ID:dGS+DO1u
二週間まえに始めたばかりなのでお手柔らかに
0022デフォルトの名無しさん2016/10/14(金) 15:40:14.11ID:dGS+DO1u
sort()を使ったコードを書いて下さい
0023デフォルトの名無しさん2016/10/14(金) 15:42:22.01ID:Wqp+crjm
>>19
sympy調べても1次元変数の情報しかでてこないのですが、どうやったらp次元変数の定義とi成分による偏微分ができますか?
0024デフォルトの名無しさん2016/10/14(金) 15:48:50.67ID:90qqEm9O
>>23
おなじことだろ
0025デフォルトの名無しさん2016/10/14(金) 15:50:03.93ID:dGS+DO1u
ココは超←初心者用スレなのでそこそこできる方は初心者スレに行って欲しいな
0026デフォルトの名無しさん2016/10/14(金) 15:50:45.19ID:Wqp+crjm
>>24
x=symbols("x")みたいに、xi=symbols("xi")で、i=1〜pまでやる方法がわからないです
0027デフォルトの名無しさん2016/10/14(金) 15:56:14.59ID:edLePn8r
>>22
>>>list = [5,2,8,19]
>>>list.sort()
>>>list
[2,5,8,19]
0028デフォルトの名無しさん2016/10/14(金) 15:59:36.30ID:dGS+DO1u
>>27
それやったけどエラーが出た
0029デフォルトの名無しさん2016/10/14(金) 16:00:36.93ID:dGS+DO1u
並べ替えの方法だ!もしかしてわからんのか!?
0030デフォルトの名無しさん2016/10/14(金) 16:01:20.82ID:dGS+DO1u
ちなみにpython3な!
0031デフォルトの名無しさん2016/10/14(金) 16:02:06.27ID:/U5BG2qh
2chの超初心者おるな
0032デフォルトの名無しさん2016/10/14(金) 16:07:20.26ID:dGS+DO1u
fo i in range()#rangeに取得した整数が入る
  n = input()
  list = [n]
list.sort()
print(list)
これでコードあってる?
0033デフォルトの名無しさん2016/10/14(金) 16:08:16.85ID:edLePn8r
>>>sorted([5,2,8,19])
[2,5,8,19]
>>>list = [5,2,8,19]
>>>sorted(list)
[2,5,8,19]
0034デフォルトの名無しさん2016/10/14(金) 16:12:58.50ID:dGS+DO1u
n=5 3 8 1 15の整数が入っている、それを標準入力でinputして
range関数にぶち込む、そしてその整数を数字の小さい順に並べ替える方法だ!
0035デフォルトの名無しさん2016/10/14(金) 16:15:27.85ID:dGS+DO1u
わからんらしいな…
0036デフォルトの名無しさん2016/10/14(金) 16:16:14.28ID:edLePn8r
なぜinputしてrangeにぶち込むのか・・・
0037デフォルトの名無しさん2016/10/14(金) 16:19:20.04ID:dGS+DO1u
>>36
冷やかしはいいから教えてくれる?
0038デフォルトの名無しさん2016/10/14(金) 16:20:07.36ID:dGS+DO1u
超初心者だからに決まってるだろ!?頭悪いな貴様等はw
0039デフォルトの名無しさん2016/10/14(金) 16:20:13.85ID:tlULFick
だってお前が冷やかしなんだもん
0040デフォルトの名無しさん2016/10/14(金) 16:21:15.52ID:edLePn8r
list = []
for i in range(5):
n = int(input()) #5 enter 3 enter 8 enter 1 enter 15 enterの順に入力
list.append(n)
list.sort()
print(list)
此れで動くだろ・・・
0041デフォルトの名無しさん2016/10/14(金) 16:22:09.87ID:edLePn8r
n = int(input()) #5 enter 3 enter 8 enter 1 enter 15 enterの順に入力
list.append(n)
この部分の前には空白入れる
0042デフォルトの名無しさん2016/10/14(金) 16:22:10.29ID:dGS+DO1u
わかんないなら素直に
0043デフォルトの名無しさん2016/10/14(金) 16:24:14.07ID:dGS+DO1u
>>40
それはダメなんだよ!入力した人しかわからない使用だから、だからrangeの数は特定してはダメなんだ!
0044デフォルトの名無しさん2016/10/14(金) 16:26:42.97ID:u1MNqwWP
後だしジャンケンかよ
0045デフォルトの名無しさん2016/10/14(金) 16:27:00.28ID:edLePn8r
入力の個数は入力者次第はわかったんだが
入力が終わったという判断材料はなんかないの?
0046デフォルトの名無しさん2016/10/14(金) 16:30:36.14ID:u1MNqwWP
空文字列で判定とかでいいんじゃないの
0047デフォルトの名無しさん2016/10/14(金) 16:32:41.56ID:dGS+DO1u
>>45
だからrange関数を使うのでは?
0048デフォルトの名無しさん2016/10/14(金) 16:32:53.65ID:edLePn8r
じゃあwhile True:で回して
if文使って空文字きたらbreakで抜ければいいんじゃね
0049デフォルトの名無しさん2016/10/14(金) 16:33:57.13ID:dGS+DO1u
間違えたforを使う
0050デフォルトの名無しさん2016/10/14(金) 16:34:30.03ID:edLePn8r
rangeにそんな使い方はない
0051デフォルトの名無しさん2016/10/14(金) 16:36:29.94ID:edLePn8r
forもきめられた回数でしか回らん
今回の用途的にはforじゃなくwhileでいいだろう
0052デフォルトの名無しさん2016/10/14(金) 16:40:34.16ID:edLePn8r
これでいけるだろ
list = []
while True:
n = input()
if not n:break
list.append(int(n))
list.sort()
print(list)
0053デフォルトの名無しさん2016/10/14(金) 16:41:25.99ID:edLePn8r
n = input()
if not n:break
list.append(int(n))
この部分の前には空白入れてくれwhileの中身だから
0054デフォルトの名無しさん2016/10/14(金) 16:42:41.29ID:dGS+DO1u
ちなみにこの問題はあるサイトにある練習問題だ!最低ランクDの問題、経験者なら直ぐ解けないとヤバいやつ、だが正解率は68%だった…
0055デフォルトの名無しさん2016/10/14(金) 16:43:58.18ID:dGS+DO1u
>>52
ありがとうやってみる!
0056デフォルトの名無しさん2016/10/14(金) 16:44:16.68ID:edLePn8r
5 enter 3 enter 2 enter enter なら 235
5 enter 3 enter 2 enter 9 enter enter なら 2 3 5 9
4 enter 2 enter 1 enter 5 enter 3 enter enter なら 1 2 3 4 5
何も入力せずにenter押せばその時までの数字をソートして出す
0057デフォルトの名無しさん2016/10/14(金) 16:44:18.43ID:dGS+DO1u
>>53
ありがとうやってみる!
0058デフォルトの名無しさん2016/10/14(金) 16:46:14.60ID:C/hfrb5c
>>54
経験者はランクDの問題やらない人多いと思う
0059デフォルトの名無しさん2016/10/14(金) 16:54:05.51ID:edLePn8r
https://paiza.jp/learning/sort-number
これか・・・ならprint(list)を代えて
なんかいい感じにforでまわしたりして出力すれば期待通りの出力が得られるんじゃね
0060デフォルトの名無しさん2016/10/14(金) 16:58:11.94ID:edLePn8r
つかよく見たら最初に数字の個数与えられるやんけ・・・草はえたわ
0061デフォルトの名無しさん2016/10/14(金) 18:08:13.64ID:E9wFZVCw
問題文を正しく理解する能力
相手に物事を正しく伝える能力

が、小学生レベルなんですかね
0062デフォルトの名無しさん2016/10/14(金) 18:08:23.53ID:dGS+DO1u
>>60
ん?どういうこと??
0063デフォルトの名無しさん2016/10/14(金) 18:09:30.60ID:E9wFZVCw
できました
2分弱
0064デフォルトの名無しさん2016/10/14(金) 18:14:03.15ID:dGS+DO1u
だから「超」初心者だって言っとるだろが!!頭大丈夫ですか?
0065デフォルトの名無しさん2016/10/14(金) 18:14:36.79ID:dGS+DO1u
>>59
そう!それ!
0066デフォルトの名無しさん2016/10/14(金) 18:15:28.67ID:E9wFZVCw
プログラミング初心者なのは理解してるけど
人間初心者だとは思ってないもの…
0067デフォルトの名無しさん2016/10/14(金) 18:17:18.59ID:dGS+DO1u
>>66
意味不明、茶化すならプロ通しで茶化せよ!素人を茶化してもなんにもならんぞ?
0068デフォルトの名無しさん2016/10/14(金) 18:18:42.66ID:E9wFZVCw
悪いけどわたしアマチュアよ
まだ学生ですし
0069デフォルトの名無しさん2016/10/14(金) 18:26:24.45ID:dGS+DO1u
ぜんぜん出来ねえしwww
0070デフォルトの名無しさん2016/10/14(金) 18:27:17.22ID:dGS+DO1u
ここはなんちゃってプログラマの集まりなのか?w
0071デフォルトの名無しさん2016/10/14(金) 18:58:38.57ID:xYyPUYu/
>>26
p次元変数を一次元でp個の変数と考える
0072デフォルトの名無しさん2016/10/14(金) 19:58:16.29ID:qwZLXobz
人生初心者かな?
0073デフォルトの名無しさん2016/10/14(金) 20:51:25.62ID:PbeqszzR
>>70
N=int(input())
num=[int(input()) for x in range(N)]
num.sort
[print(x) for x in num]
0074デフォルトの名無しさん2016/10/14(金) 21:29:42.87ID:B01WZYmm
print("こんにちは")
ソースコードにこんにちはって書かずにこんにちはって出力する方法を教えてください
0075デフォルトの名無しさん2016/10/14(金) 21:42:04.79ID:edLePn8r
>>74
ソースコードに書きたくないならそれこそinputで文字列としてこんにちはをうってもらうか
テキストにこんにちはって書いておいてそれをファイルで読み込んで出力するか
0076デフォルトの名無しさん2016/10/14(金) 22:07:38.85ID:lmebjM9j
ソースコードに書けないならソースファイルをこんにちは.pyにして取得すればいいじゃん
0077デフォルトの名無しさん2016/10/14(金) 22:24:13.40ID:7CIQwa03
Unicodeのコードページで書くとか
0078デフォルトの名無しさん2016/10/14(金) 23:38:03.37ID:tH2wG9L7
文字列内の空白文字を削除するにはどうすればいいのでしょうか
アンダーバーが空白文字
_A___B__C_
strip()すると前後の文字は消える
A___B__C
したいのは
ABC
のようにしたいのですが
0079デフォルトの名無しさん2016/10/14(金) 23:48:55.37ID:Da3Cuw9U
''.join(item for item in string if item != '_')
ってやればできるけどもっとうまいやり方ある気がするな
0080デフォルトの名無しさん2016/10/14(金) 23:58:14.49ID:Da3Cuw9U
''.join(string.split())
こっちの方がいいか
0081デフォルトの名無しさん2016/10/15(土) 00:10:50.61ID:xu+P59Vi
str.replace(
0082デフォルトの名無しさん2016/10/15(土) 00:11:33.26ID:xu+P59Vi
srt.replace(' ', '')
0083デフォルトの名無しさん2016/10/15(土) 05:16:57.41ID:WsUkBpqj
lambdaって可読性悪くならないか?
書籍参考にすると再帰処理の時には lanmda 使ってることが
多いみたいだけど、引数がゴチャゴチャしてると理解しにくい
からlanmba 苦手だわ
0084デフォルトの名無しさん2016/10/15(土) 06:30:12.19ID:CoOvRM84
再帰にlambda使うって不動点コンビネータ?
0085デフォルトの名無しさん2016/10/15(土) 09:47:04.64ID:D5oKF7li
Pythonのラムダは糖衣構文もないし普通に使いにくい
0086デフォルトの名無しさん2016/10/15(土) 10:26:10.80ID:6JwhLG8o
python学習の大きな山場がこのランバダだなら
0087デフォルトの名無しさん2016/10/15(土) 12:34:58.15ID:E+cYT6dS
ラムダなしじゃてどうやって書くの?普通にその場でdefでかけってこと?
0088デフォルトの名無しさん2016/10/15(土) 13:05:46.28ID:+PxnxnnH
ラムダ俺も嫌いだ。読みにくいと思う。
kotlinとかほかの言語見るとラムダが今時の書き方なのかもしれんけど。
0089782016/10/15(土) 13:19:42.22ID:2HxqnLhy
>>79,80
空白文字で分解して再度結合するんですね

>>82
空白ではないので正規表現の\sで置換する方法でもできました。

ありがとうございました。
0090デフォルトの名無しさん2016/10/15(土) 13:22:27.76ID:5kX/FrWC
>>83
理解しにくいとは思わないが
lambda 中に文を書けないのは辛い
0091デフォルトの名無しさん2016/10/15(土) 13:23:42.06ID:5kX/FrWC
>>86
それはない
ジェネレーターとか
凸れーたーの方が山
0092デフォルトの名無しさん2016/10/15(土) 16:30:07.55ID:bzE+ASVR
unittestモジュールを使ったテストでパスしたテストを表示することはできますか?
またunittestの結果をコマンドラインでパイプして加工する方あれば法教えて下さい
0093デフォルトの名無しさん2016/10/15(土) 17:53:52.00ID:CoOvRM84
>>92
-vオプションを付ける、discoverでテストを探す場合はdiscoverより後ろに付ける
$ python3 test_case.py -v
$ python3 -m unittest -v test_case
$ python3 -m unittest discover -v test_case_dir

結果に対してなんらかの加工をしたいときはstdoutにリダイレクトしてパイプにつなぐ
$ python3 test_case.py -v 2>&1 | grep -F "... ok"
0094デフォルトの名無しさん2016/10/15(土) 18:39:23.02ID:bzE+ASVR
>>93
ありがとうございます 
-v オプションですか 全部の結果が出ました
"2>&1 ∣ "というオプションは標準エラー出力と標準出力の両方を合わせてパイプするということですね
0095デフォルトの名無しさん2016/10/15(土) 19:57:37.39ID:rbY41A5I
>>83
可読性悪くならない範囲で使う。
可読性が心配なら普通にその場で名前付けて関数定義するから。
0096デフォルトの名無しさん2016/10/16(日) 22:30:17.94ID:ZVqg5jNk
a = re.search(r"\d(\d)", 42A3B4C))
a.group()が42になるんですが2でないのはなぜですか?
0097デフォルトの名無しさん2016/10/16(日) 22:44:15.34ID:2HJFaHa2
group(1)にすれば"2"が得られるよ
group()はマッチ全体を示す。キャプチヤではない
0098デフォルトの名無しさん2016/10/16(日) 23:40:23.77ID:ZVqg5jNk
>>97
ありがとうございます
できました
0099デフォルトの名無しさん2016/10/18(火) 11:56:29.48ID:BJnXTcic
超初心者スレということで質問させてもらいます。
初心者以前にこれからpython触ろうと思っているのですが、pythonではversion3はあまり評価が良くないみたいな記事をよく目にします。2.xを使うべきでしょうか?大きな違いはなんでしょうか?
またこれからpython学習するにあたってオススメの入門書を教えていただけますか?
0100デフォルトの名無しさん2016/10/18(火) 12:38:49.33ID:f+/JDd8Q
今からやるのに2系とか狂気の沙汰
0101デフォルトの名無しさん2016/10/18(火) 12:40:11.99ID:EPF+VHJ5
python2は2020までしかサポートされない
0102デフォルトの名無しさん2016/10/18(火) 12:59:41.46ID:xuoB+sig
ごく当たり前のレベルの頭なら、python3が使えるようになれば、python2も使える

まれに頭の記憶容量が1ビットしかない奴らがいて、そいつらはpython2かpython3しか記憶できないので、python2を選ぶのだ
0103デフォルトの名無しさん2016/10/18(火) 13:51:03.23ID:WzTldbdw
↑ドヤ顔で気の利いた事言ったつもり
0104デフォルトの名無しさん2016/10/18(火) 14:28:46.58ID:5DWUgM+U
python初心者未満です
pythonで書かれたプログラムをHTTP上で動かしたいとき、どうするのが普通でどんな手があるんでしょうか

mod_pythonで.py自体を動かす?
#!/path/to/python って書いてcgiとしてに動かす?
cherrypyでサーバとして動かす(再起動時とかどうするんだろう)?
0105デフォルトの名無しさん2016/10/18(火) 16:26:26.85ID:q3gbqcrC
brython
0106デフォルトの名無しさん2016/10/18(火) 17:21:10.85ID:Rangr8w1
プロトコルとは何かね?
0107デフォルトの名無しさん2016/10/18(火) 19:19:24.18ID:mt4PA0vh
dict = {"data_a": {"data_1": "100", "data_2": "200"}, "data_b": {"data_1": "101", "data_2": "201"}}
こういうのからdata_aのdata_1の値を直接取り出すにはどういう風に書いてやればいいんでしょうか?
0108デフォルトの名無しさん2016/10/18(火) 19:25:37.97ID:4aavEEUm
dict['data_a']['data_1']
でいいでしょ
0109デフォルトの名無しさん2016/10/18(火) 19:38:08.25ID:Za/J1KU+
やばい、変数名についてめっちゃ問い詰めたい
0110デフォルトの名無しさん2016/10/18(火) 19:40:46.00ID:4Ny7N2e6
変数名とかあまりこだわらん方がいいぞ
0111デフォルトの名無しさん2016/10/18(火) 20:03:39.39ID:Za/J1KU+
>>104
mod_pythonはもう死んでるから今使うならmod_wsgi
0112デフォルトの名無しさん2016/10/18(火) 20:09:11.41ID:cpqSuFd9
998 名前:デフォルトの名無しさん[] 投稿日:2016/10/14(金) 12:15:05.58 ID:dGS+DO1u [1/2]
小さい数字の順に出力する方法を教えて下さい

999 名前:デフォルトの名無しさん[sage] 投稿日:2016/10/14(金) 12:17:19.08 ID:edLePn8r
>>998
sort使えばいいのでは・・・

1000 名前:デフォルトの名無しさん[] 投稿日:2016/10/14(金) 12:32:25.40 ID:dGS+DO1u [2/2]
>>999
できませんでした


くっすれpython超初スレでも歴代屈指の無能
情けない
0113デフォルトの名無しさん2016/10/18(火) 20:13:03.25ID:cpqSuFd9
こんなのが1000って・・・ええんかお前ら…
0114デフォルトの名無しさん2016/10/18(火) 20:20:28.85ID:Za/J1KU+
むしろ回答者さんサイドを問題視していくぐらいの気概でいこう
0115デフォルトの名無しさん2016/10/18(火) 21:54:16.57ID:g+sGVD/r
>>99です
有難うございます
0116デフォルトの名無しさん2016/10/18(火) 21:56:24.76ID:cpqSuFd9
いいってことよ
0117デフォルトの名無しさん2016/10/19(水) 00:09:12.49ID:OiCCOICb
>>99
みんなのPython 第3版、が定番

>>104
Django などのフレームワークを使う
0118デフォルトの名無しさん2016/10/19(水) 00:52:59.82ID:+cZk708z
メソッド名とかで、アルファベットは同じ単語なんだけど、
大文字小文字とか微妙に違ってたり キャメルケースと
スネークケースの違いが当たり、クォートがダブルとシングル
が違っていたり、自分の知っているメソッド名指定と書籍の書き方
が微妙に違っていたりする時書籍に合わせようか自分のスタイル
で統一しようかすごく迷う。
一例で言うと、メソッド名じゃないけど utf-8 と UTF-8 みたいな。

こういうメソッド名のシノニム衝突っていうのかな、ってどんな
書き方でもある程度同じものが呼べるように複数パターン定義されて
たりするのかな?
0119デフォルトの名無しさん2016/10/19(水) 01:22:08.79ID:mVlV6pyO
>>104
これなんかどうだろう?

『nginx + uWSGI + Python3 + bottle でHello Worldまで』

ttp://inari.hatenablog.com/entry/2016/03/30/232032
0120デフォルトの名無しさん2016/10/19(水) 01:31:07.07ID:KohW50nB
>>118
コーディングスタイルはPEP 8に従うのがPythonでの作法
従ってないコードは、他の言語由来、Pythonに習熟してない人が書いた、無精者が書いた、のどれか
0121デフォルトの名無しさん2016/10/19(水) 19:59:17.74ID:pj/FZGk/
>>117
>>99です。有難うございます
0122デフォルトの名無しさん2016/10/20(木) 00:06:12.30ID:XgNi879y
pypyって何て読むんですか?

私女子高生なんですけど、人前でパイパ・・・ってゆうのはちょっと困ってしまいます。
0123デフォルトの名無しさん2016/10/20(木) 00:07:37.62ID:wwitTU76
パイパイはパイパイだからパイパイって言えばいい
0124デフォルトの名無しさん2016/10/20(木) 00:09:05.93ID:uOjaASwy
おっさん、暇なら寝ろ
0125デフォルトの名無しさん2016/10/20(木) 01:30:39.23ID:zjT8WczX
python入門者ですらないのですが、パソコンなんって全く知らないって人がプログラミングやろうと思ったら、プログラミングの前にパソコンの基礎知識についてこのサイト、本読んどけとか、タイピングの速さは最低でもこのくらいはあった方がいいとかはありますか?
0126デフォルトの名無しさん2016/10/20(木) 01:59:43.25ID:9AXeF6rN
タイピングはまあまあ打てればいいと思う
近くにメンターとなる人がいるならPCの基礎知識はそこそこでいいと思うけど
独学で全部学ぶなら基本情報をやっておくと学習速度が速いかも
0127デフォルトの名無しさん2016/10/20(木) 03:44:08.20ID:YICbRhTq
プログラミング初心者がpygame使いつつpython学ぼうっていうのは無謀過ぎますかね?
大人しく参考書読むべきだと思うのですがどうもモチベーションが上がらなくて...
ゲームといわゆる役立つプログラミングは別ですかね

pip installで.whl入れれなくてpython3系で起動しないからわざわざpython2.7使ってる無能なんですけど
0128デフォルトの名無しさん2016/10/20(木) 04:55:49.72ID:dynDsHp/
Pygameよりも、Godotをやれば?

Godot(ゴドー) Engineではじめるゲーム制作、天沢(あまさわ)らせん、2015

OSS・MITライセンスで、マルチプラットフォーム(iOS/Android/HTML5)、
Python風のGDScriptで書く

2D/3D用だが2D中心で、物理シミュレーションも搭載。
インストール不要で、サイズは20MB
0129デフォルトの名無しさん2016/10/20(木) 06:46:18.10ID:lYRbQ9nh
>>128
調べたらgodot良さそうですね
ありがとうございます

ゲームからざっくり学んでも特に問題無いという認識でいいですかね
頑張ります
0130デフォルトの名無しさん2016/10/20(木) 06:55:14.34ID:XgNi879y
ネトゲで煽り合いしてりゃタイピングなんて身につくよ
0131デフォルトの名無しさん2016/10/20(木) 10:27:15.36ID:AGLlxPxG
たいてい1ヶ月もあれば挫折するから気にせず始めて大丈夫
0132デフォルトの名無しさん2016/10/20(木) 14:43:07.02ID:eJoj7htq
>>127
>ゲームといわゆる役立つプログラミングは別ですかね

ゲームにはあらゆる技術要素が含まれてる
ゲームプログラマでビジネスアプリを書けないひとはいないが
ビジネスアプリプログラマ(ペチパー等)でゲーム作れないひとは多い
0133デフォルトの名無しさん2016/10/20(木) 16:27:14.08ID:zjT8WczX
>>126
ありがとうございます
0134デフォルトの名無しさん2016/10/20(木) 16:41:30.54ID:gC4Rm/yo
>>73
ブブーダメ
0135デフォルトの名無しさん2016/10/20(木) 16:42:54.87ID:gC4Rm/yo
>>112
できないんだろ?w
0136デフォルトの名無しさん2016/10/20(木) 16:44:00.50ID:gC4Rm/yo
なんちゃってプログラマーの集まりだからなw
0137デフォルトの名無しさん2016/10/20(木) 16:49:27.35ID:hnTitGis
かまってちゃんなのかな?
なんか可愛く見えてきた
0138デフォルトの名無しさん2016/10/20(木) 17:42:20.86ID:jYhTTWFa
>>73 の
num.sort を num.sort() に修正
iPhone の Pythonista 3 で確認
0139デフォルトの名無しさん2016/10/20(木) 17:44:42.46ID:jYhTTWFa
あ、さげ忘れた。。。ゴメン
0140デフォルトの名無しさん2016/10/20(木) 22:19:29.16ID:OxU8SSxE
>>139
さげんなカス
0141デフォルトの名無しさん2016/10/20(木) 23:54:44.88ID:jgR1Ualu
>>125
http://uxmilk.jp/46167
0142デフォルトの名無しさん2016/10/21(金) 09:37:33.32ID:cYzE9Q4S
>>110
dictとかfileはやめた方が良いね
0143デフォルトの名無しさん2016/10/21(金) 11:45:48.55ID:befNjxuN
Pythonで不変なデータ型を作るにはどうすれば良いですか?
0144デフォルトの名無しさん2016/10/21(金) 12:05:56.55ID:nZioU6Ll
次のクラスを使う、ただしフィールドは不変な値(int, str, tupleなど)のみで構成すること
collections.namedtuple (<= 3.4)
typing.NamedTuple (>= 3.5)
0145デフォルトの名無しさん2016/10/21(金) 12:13:35.87ID:nZioU6Ll
注意としてはフィールドへの再代入は防げても変数自体への再代入は防げない
これはPythonのほかのオブジェクトでも同じ
0146デフォルトの名無しさん2016/10/21(金) 15:15:54.62ID:befNjxuN
NamedTupleは文字列で名前をつけないといけないのは面倒だしメソッドもつけ辛いしで取り回しが悪い印象があるのですが、使用者の方は満足な使い勝手を感じているのでしょうか?
0147デフォルトの名無しさん2016/10/21(金) 16:15:11.73ID:nZioU6Ll
ああ、データ型と書かれていたので操作が伴わないレコードをイメージしてnamedtupleを挙げた
不変のクラスを作るといっても下の4点を守りつつclass文で定義するだけだよ

フィールドは名前の先頭にアンダースコアを付けて触るなアピールする
外から参照したいフィールドがあるときはpropertyを使ってget操作のみ定義する
__init__()以外のメソッドではフィールドを絶対に書き換えない
フィールドを変更したいときは新しい値でオブジェクトを生成してreturnで返す
0148デフォルトの名無しさん2016/10/21(金) 16:36:46.73ID:UZUqTl2h
@property
def spam(self):
____return self.spam

をフィールドの数だけ書くのはやむなしか……
0149デフォルトの名無しさん2016/10/21(金) 16:44:30.79ID:nZioU6Ll
propertyのそれをやってくれるのがnamedtupleなんだけどね
>>147で失念してたけど後からフィールド付け足しできないように__slots__を指定する必要もあった
0150デフォルトの名無しさん2016/10/21(金) 17:43:51.40ID:KvD6T+Uq
>>148
@definegetters
class Hoge(object):
def __init__(self):
self._attr1 = value1

こうすると
Hoge.attr1 で self._attr1 を返す getter を attr1-attrN まで作ってくれるとうれしい
0151デフォルトの名無しさん2016/10/22(土) 02:03:21.78ID:aXDdLfrs
>>150
http://pastebin.com/RNrnFGdJ
思いつきだけどこんな感じ、クラスのアノテーション全部拾うので他の用途と組み合わせ難しいかも
0152デフォルトの名無しさん2016/10/22(土) 05:13:07.48ID:38mkxn70
_で始まる属性だけ拾えば医院で内科医
0153デフォルトの名無しさん2016/10/22(土) 07:25:46.30ID:aXDdLfrs
やりたいのはプロパティの自動実装だからなあ
プライベートなフィールドをアノテーションで見せるのは恥ずかしいよ

typing.Generic使ってPropertyを作ってdefinegetter()で見つけるか
getsetを選べるように考えたけどやぼったい感じするなあこれ
spam: Property[int, {'get', 'set'}] = 0
0154デフォルトの名無しさん2016/10/22(土) 10:41:33.46ID:O48rD9qT
どうせ __slot__ 書くくらいなら
@definegetters(ここに作りたいproperty一覧tuple)
で良いのでは
0155デフォルトの名無しさん2016/10/22(土) 11:48:43.10ID:Kc5AwzJM
お兄さんたちが無駄な妄想を頑張っている間に僕は一つサービスを仕上げた
この辺が生産性の差だね
0156デフォルトの名無しさん2016/10/22(土) 13:29:35.25ID:EJiIcw+J
エアサービス
0157デフォルトの名無しさん2016/10/24(月) 15:16:47.40ID:aFvNlCi7
pythonのマルチプロセスの中でサブプロセスを使ってコマンドを呼べますか?
0158デフォルトの名無しさん2016/10/24(月) 15:48:02.96ID:9xygNeDa
ok
呼べないときはアクセス権確認
0159デフォルトの名無しさん2016/10/24(月) 18:06:24.35ID:aFvNlCi7
ありがとうございます
0160デフォルトの名無しさん2016/10/25(火) 19:51:05.51ID:Tozirg6q
ディープラーニングのためにpython使い始めました:)
0161デフォルトの名無しさん2016/10/25(火) 20:21:14.48ID:GmgPftDf
ある変数に格納したオブジェクトから定数とか関数一覧を出力する方法教えてください
print(dir(hoge))だとすべて表示されません
0162デフォルトの名無しさん2016/10/25(火) 23:54:35.76ID:WQkzm7ge
いろいろ理由を考えた
__dir__()で一覧する要素を制御している
dir()を呼び出した時点ではまだ要素が作られていなかった
メタクラスはdir()の結果に入らない
クラス内で定義された頭にアンダースコア2つある要素は名前が変わる
オブジェクトにある要素へ格納したか別のオブジェクトに入れた
__getattr__()によって要素を持っているように振舞っている
0163デフォルトの名無しさん2016/10/26(水) 01:40:20.22ID:B2rsBYAr
>>162
具体的に取れないものを再現する方法がイマイチ分かってないですが
たとえばctypes.cdll.LoadLibraryでdllを読み込んだ時のオブジェクトが取れないです
hoge = ctypes.cdll.LoadLibrary('hoge.dll')
print(dir(hoge))
0164デフォルトの名無しさん2016/10/26(水) 02:22:41.07ID:tP3geMHY
>>163
hoge.dll は hoge.pyd なのか?
0165デフォルトの名無しさん2016/10/26(水) 02:28:01.07ID:3QC1R6bg
>>163
なるほとctypesか
それはdir()を呼び出した時点ではまだ要素が作られていなかったパターンだな
hoge.funcのように属性にアクセスして要素をロードすればdir()で一覧できるようになる
呼び出す側が知らない関数をローダーから調べることはできない、これは仕様だ
ロードできる要素はヘッダーファイルかドキュメントを見るしかない
0166デフォルトの名無しさん2016/10/26(水) 02:33:25.14ID:tP3geMHY
implib はどうやって一覧取り出してるんだ
0167デフォルトの名無しさん2016/10/26(水) 02:54:16.64ID:+oWR4VIW
.DEF
0168デフォルトの名無しさん2016/10/26(水) 03:10:03.18ID:3QC1R6bg
一応書いておくと
動的リンクライブラリのC関数とC拡張モジュールのPythonクラスや関数は扱いが全く違う
C拡張モジュールならctypes不要、pyファイルと同じくimport文を使えばいい
具体的な仕組みは下に書いてある
http://docs.python.jp/3/extending/index.html
0169デフォルトの名無しさん2016/10/26(水) 12:52:53.96ID:6SHMskVi
.pyd を LoadLibrary (Win32API) しても一応動かせるけどね
0170デフォルトの名無しさん2016/10/26(水) 13:17:38.95ID:YDy4bhGG
プログラミング初めての俺がpythonインストールした

まず何をすればいいんが?

>>>
0171デフォルトの名無しさん2016/10/26(水) 13:32:11.07ID:nV/slghN
print("Hello world!")
0172デフォルトの名無しさん2016/10/26(水) 13:55:14.90ID:6SHMskVi
心py
0173デフォルトの名無しさん2016/10/26(水) 19:34:35.17ID:3haCvHGL
import this
0174デフォルトの名無しさん2016/10/26(水) 22:26:06.59ID:YDy4bhGG
なんだそのシンタックスエラーが出そうな()は?
print"hello world"
じゃダメなんか?

おじちゃんMSXベーシック歴1年ぐらいの初心者やねん
0175デフォルトの名無しさん2016/10/27(木) 00:24:53.15ID:M3zq+TI9
>>174
まさかPython2.7使ってるのか?それならそれであってる
Python3ならprintは関数だし、Pythonでは関数は括弧を使って引数を指定する
0176デフォルトの名無しさん2016/10/27(木) 01:09:04.68ID:LqeTZpDz
ラズベリーパイを買ってみたので、30年ぶりにプログラミングやってみようかと。
pythonは2-3どちらともプリインストールされてる。
わかりやすい説明ありがとう。
0177デフォルトの名無しさん2016/10/27(木) 01:55:07.99ID:X0THyINs
CQ出版のせいかな
0178デフォルトの名無しさん2016/10/27(木) 02:34:08.31ID:NirFRb23
Pythonは小難しいことやらない限り、モジュールの使い方どれだけわかってるかによるよね
0179デフォルトの名無しさん2016/10/27(木) 03:21:09.50ID:u3THH1jN
pythonに限らんぞ
0180デフォルトの名無しさん2016/10/27(木) 11:14:00.04ID:pkQHI0o8
pythonは小難しいことをしない限り標準モジュールでまかなえるはず、って前提で進められる。
何?標準モジュールにない?
じゃあそれは小難しいことだったんだよ
0181デフォルトの名無しさん2016/10/27(木) 12:22:53.28ID:uhcVO5yp
toolzとかclickとか標準モジュールの上位互換みたいなやつあるよな
0182デフォルトの名無しさん2016/10/27(木) 14:56:26.31ID:zCtExMcu
Cで拡張モジュールの造り易さが良いわ
0183デフォルトの名無しさん2016/10/27(木) 22:21:07.48ID:q+6FSEYJ
マイクロサービスって何ですか?
0184デフォルトの名無しさん2016/10/27(木) 22:26:27.43ID:u3THH1jN
バズワード
0185デフォルトの名無しさん2016/10/27(木) 22:44:59.47ID:CgsVG8pD
ピンサロでちんこ拭くまえにぺろっと舐めてくれるやつとかだろ
0186デフォルトの名無しさん2016/10/28(金) 09:46:36.45ID:a787P3C1
おれのちんこはマイクロソフト
0187デフォルトの名無しさん2016/10/29(土) 06:56:53.79ID:5ubz4pv4
要素数が同じの配列、array1, array2, array3, ...を同じ関数に順番に放り込みたいんですけど、変数名でforループを回すとかできるんですか?
0188デフォルトの名無しさん2016/10/29(土) 08:18:59.62ID:ZloojbFD
>>187
それ配列の配列にするわけにはいかんの?
0189デフォルトの名無しさん2016/10/29(土) 08:45:45.15ID:mW/ZeDuf
>>187
zipを使ってできそう?
for a1,a2,a3 in zip(array1,array2,array3): f(a1,a2,a3)
0190デフォルトの名無しさん2016/10/29(土) 12:27:57.25ID:5ubz4pv4
>>188
配列の配列は私の能力では、汎用性が低そうなので、最後の手段かなと思っています
あとはどこにどういう配列を入れたか忘れそうで、そういう意味ではdictがいいのかもとはおもってます

>>189
Zipはイマイチ使い方がわかっていませんので、提示いただいたものを調べて試してみます
0191デフォルトの名無しさん2016/10/30(日) 00:22:10.46ID:/j7Ud6KN
ElementTreeで読み込んだXMLにデフォルト以外の名前空間が使われていた時、その
prefixを取得する方法ってある?
どんなprefixが使われていても同じ名前空間なら同じ処理にできるってのはいいんだけど、
読み込んだXMLと同じprefixを使って書き出したいって場合はどうすればいいんだろう?
0192デフォルトの名無しさん2016/10/30(日) 01:17:29.24ID:X0WLh33u
f(*tuple(getattr(globals(), 'array%d' % i) for i in range(3)))
0193デフォルトの名無しさん2016/11/01(火) 01:44:29.15ID:AgHMdyb8
データベース使うにはSQLを覚えないといけませんか?SQLalcemyみたいなORマッパーがあればいらないですか?
0194デフォルトの名無しさん2016/11/01(火) 04:54:30.82ID:bjN+4M8I
ORマッパーでカバーできるのはある程度単純なクエリーに限られる
複雑なJOINや副問い合わせをしたい、速度をカリカリにチューニングしたい
とか言い出すと、生SQLを触るのは避けられない
0195デフォルトの名無しさん2016/11/01(火) 17:33:22.22ID:wawt2m9n
DBと言えばKVSだろ常考
0196デフォルトの名無しさん2016/11/01(火) 20:43:19.08ID:OHQceaF2
Excel最強伝説
0197デフォルトの名無しさん2016/11/01(火) 21:03:25.51ID:UQA2AbDf
>>196
「毛蟹」でバグるExcel最悪
0198デフォルトの名無しさん2016/11/01(火) 23:22:52.23ID:AgHMdyb8
>>194
ありがとうございます
0199デフォルトの名無しさん2016/11/02(水) 01:19:46.96ID:MYQ7Ohex
excelでもSQL使えるんだな
0200デフォルトの名無しさん2016/11/02(水) 22:28:46.58ID:k5vdp+vN
datetimeである月の各日をイテレータにするみたいなことはできますか?
0201デフォルトの名無しさん2016/11/02(水) 22:37:31.79ID:WL73ssGd
組み込みでそういう機能はない
自分で作る分には特に問題なかろう
0202デフォルトの名無しさん2016/11/02(水) 23:18:46.21ID:rDSMze1z
>>200
from datetime import datetime, timedelta

def date_range(start, stop, step):
____while start < stop:
________yield start
________start += step

for d in date_range(datetime(2016, 11, 1), datetime(2016, 12, 1), timedelta(days=1)):
____print(d)
みたいな感じ?
0203デフォルトの名無しさん2016/11/02(水) 23:50:47.53ID:k5vdp+vN
ありがとうございます
>>201
調べたところ標準ライブラリのcalendarモジュールのCalendarクラスのitermonthdatesメソッドが目当てのものに近いようです

>>202
早っ!datetimeのオブジェクトって比較演算子で比較できるんですね
0204デフォルトの名無しさん2016/11/03(木) 00:42:29.15ID:/SIxMYpD
>>203
そうですね、それがミソでした。itermonthdates 勉強になりました
0205デフォルトの名無しさん2016/11/04(金) 22:19:57.65ID:k96F/fKp
2chに書き込みするAPIってありますか?
0206デフォルトの名無しさん2016/11/04(金) 22:21:16.57ID:j6jTXQJv
postで飛ばすだけじゃね?
0207デフォルトの名無しさん2016/11/04(金) 23:13:02.64ID:hpSsrBqA
オフィシャルのAPI以外はあかんらしいから
seleniumつかうとか?
0208デフォルトの名無しさん2016/11/04(金) 23:49:28.59ID:k96F/fKp
twitterみたいなAPIは無いんですね
0209デフォルトの名無しさん2016/11/05(土) 03:41:18.66ID:QPrRTgR0
tepo=don
0210デフォルトの名無しさん2016/11/05(土) 14:04:45.24ID:Kl3c0pbp
tepo.don(area_cd = "JPN")
0211デフォルトの名無しさん2016/11/05(土) 15:23:31.68ID:yMN3xLAC
標準出力へのアンバッファな出力ってどうやれば?
0212デフォルトの名無しさん2016/11/05(土) 15:34:27.73ID:jAxIUQYf
-uオプション付けるか環境変数PYTHONUNBUFFEREDをセットしてインタプリタを起動
02132112016/11/05(土) 15:56:51.38ID:yMN3xLAC
すみませんJavaスレと待ちがえていました。
>>212さんせっかく教えもらったのにごめんなさい。
0214デフォルトの名無しさん2016/11/05(土) 17:12:29.90ID:Kl3c0pbp
レガシーゴミ言語のジャヴァ厨は死ね
0215デフォルトの名無しさん2016/11/05(土) 20:37:13.85ID:UUL9l/XE
無能な僻み死ね死ね厨がまた湧いてる
0216デフォルトの名無しさん2016/11/05(土) 21:00:17.92ID:QV9Nx/90
いつものパイチョン君だね
0217デフォルトの名無しさん2016/11/05(土) 22:25:52.74ID:Kl3c0pbp
2厨と3厨の内ゲバで滅んだ
ペチピーにすら負けた言語


それがパイチョン
0218デフォルトの名無しさん2016/11/06(日) 06:20:44.83ID:DKGe++hL
スクレイピングしたものをそのままデータベースに書き込むことはかのうですか?
また、そのデータを計算などの加工して表示するようなプログラムをつくってみたいのですが難しいでしょうか
0219デフォルトの名無しさん2016/11/06(日) 06:30:48.63ID:EbnuTj91
あなたには難しいですね
あきらめてください
0220デフォルトの名無しさん2016/11/06(日) 07:23:30.84ID:JW+Gnwk4
その辺を歩いてるおっさんを捕獲していきなりフルマラソンを完走させるのとどっちが難しいですか?
0221デフォルトの名無しさん2016/11/06(日) 07:51:49.72ID:EbnuTj91
ええ
ですから
あきらめてください
0222デフォルトの名無しさん2016/11/06(日) 08:13:37.72ID:UB8ayWaX
スクレイピング・ビッグデータの開発は、何年もかかる。
幾つものシステム・アプリ・プログラム言語を使うし、エラーの種類も数十ある

Linuxなどの環境構築も含むから、普通、資格を持っている、プロ中のプロがやる

また、WEB+DB などの雑誌を読んでいないと無理
0223デフォルトの名無しさん2016/11/06(日) 09:20:29.15ID:rGVVvSQ9
>>218
ビックリデータスレ池
0224デフォルトの名無しさん2016/11/06(日) 09:21:46.72ID:rGVVvSQ9
>>222
最後の行でわろた
0225デフォルトの名無しさん2016/11/06(日) 12:19:22.80ID:DKGe++hL
>>222
>>223
>>219
そうなんですか…
ありがとうございました
0226デフォルトの名無しさん2016/11/06(日) 12:41:51.57ID:eNLQHcoy
漢字も書けない馬鹿には無理
でも礼儀正しさは合格
金を払って誰かに作って貰えばいいよ
0227デフォルトの名無しさん2016/11/06(日) 13:04:30.22ID:P+j0OJZ1
>>225
pythonとbeautifulsoupを使えば簡単ですよ
0228デフォルトの名無しさん2016/11/06(日) 13:49:08.91ID:AR1dfB/U
自分でググって調べる事もできない情弱には難しいよ
0229デフォルトの名無しさん2016/11/06(日) 15:26:19.21ID:E77A40Ti
どんな質問も書けるけど対応の差はある

○○はできるか→馬鹿には無理
○○のやり方を教えて→ggrks、お節介がいればワンチャンある
○○をやろうとしたけどエラーが出た→再現コードを書け、エスパーが(ry
0230デフォルトの名無しさん2016/11/06(日) 15:42:25.65ID:UB8ayWaX
スクレイピングして、ビッグデータの活用だろ

スクレイピングだけでも、本が一杯出ているし、
インターネットのI/Oエラーは、数十種類出てくる

ビッグデータでは、WEB+DB vol.94 に書いてあるけど、
Embulk, Re:dash, Digdag
Docker

最低でも、Linuxを知っていて、数種類のプログラム言語も使えて、
資格も持っていないと、無理
0231デフォルトの名無しさん2016/11/06(日) 15:53:09.98ID:YPGx/bgn
雑誌のステマか
0232デフォルトの名無しさん2016/11/06(日) 19:14:03.96ID:IIpX0i7x
DeepRarningで大もうけする方法を教えてください
0233デフォルトの名無しさん2016/11/06(日) 19:27:08.44ID:AR1dfB/U
なにそれDeepLearningの親戚か何かか?
0234デフォルトの名無しさん2016/11/06(日) 19:34:56.27ID:IIpX0i7x
>>233
こんな有名な技術を知らない無知なあなたには聞いてないので、ご安心を
0235デフォルトの名無しさん2016/11/06(日) 19:38:09.05ID:R1wksPCu
すぺるぅ!!
0236デフォルトの名無しさん2016/11/06(日) 19:50:34.64ID:6nCxfEou
DeepWarning出てるぞ
0237デフォルトの名無しさん2016/11/06(日) 20:06:24.78ID:HiCzZZ3I
0001: 訪問:2016/11/06(日) 14:32
会社A
担当者BB
0002: 取引先:2016/11/07(月) 09:36
企業CCC
相談人DDDD EEEEEの件で契約

というtxtファイルを

log=会社A\t担当者BB
log=企業CCC\t相談人DDDD\tEEEEEの件で契約

という形に置換して出力するバッチを作りたいと思っています。


ファイル名、ファイル内テキスト一括置換スクリプト 2 (Python2/3対応, その他改善版) - Make it possible with Python.
http://python.slightlysimple.net/entry/2015/05/06/131644

検索したところこちらのコードを見つけることができたのですが
複数のパターン

^[:digit:]{4}\:.*\:[:digit:]{2}\n > log\=
\n > \t
\tlog\= > \nlog\=

をたとえばこういった正規表現で、ひとつのバッチ内で置換するにはどう記述すればいいでしょうか。
プログラミングは全くと言っていいほど素人なので、「Pythonはまだ早い」なども含めて、ご指導いただけましたら嬉しいです。
よろしくお願いします。
0238デフォルトの名無しさん2016/11/06(日) 20:47:30.70ID:pU7B9Wvc
単に一つのスクリプト内で3回置換すればいいだけだが、それでは不服なのか?
0239デフォルトの名無しさん2016/11/07(月) 04:04:18.50ID:EaPQMBZD
>>237
馬鹿には無理
0240デフォルトの名無しさん2016/11/07(月) 05:16:41.68ID:pyn9XiBr
一番卑猥な言語はpythonではなくてr言語だからな
殴り込みに来たわ
0241デフォルトの名無しさん2016/11/07(月) 19:55:07.11ID:NUe6gGqF
プログラミング全くの初心者ですが、工学系の院に進みたく、pythonを先んじて習得したいです。pythonの前段階としてこの言語やっとけ、或いはpythonやるならこの一冊読んどけ、みたいなのありますか
0242デフォルトの名無しさん2016/11/07(月) 20:20:48.60ID:I2yF+6Iq
pickleってどういう時に使うんですか?
0243デフォルトの名無しさん2016/11/07(月) 20:22:27.34ID:RwpPfRVw
>>241
学部は工学系じゃないの?
0244デフォルトの名無しさん2016/11/07(月) 20:28:52.12ID:NUe6gGqF
>>243
はい、工学部です
0245デフォルトの名無しさん2016/11/07(月) 20:33:55.68ID:RwpPfRVw
>>244
工学部なら高級言語ぐらいやってるだろうから
適当に書籍買ってアプリでも作ってればいいんじゃね
0246デフォルトの名無しさん2016/11/07(月) 20:48:00.42ID:DqS1ehkr
厳格なクラスベースな人にはPython的オブジェクト指向は歯痒いかも
GoとかCとか関数型に手をつけてクラスから一旦離れると入りやすくなると思う
0247デフォルトの名無しさん2016/11/07(月) 21:01:39.35ID:QSdT6br4
Cが関数型・・・?
0248デフォルトの名無しさん2016/11/07(月) 21:07:13.24ID:Emw0kK5K
>>242
dictの内容をそのままファイルとして保存しておきたい時とか
0249デフォルトの名無しさん2016/11/07(月) 21:16:27.05ID:I2yF+6Iq
>>248
テキストとして保存するのと違うんですか?
0250デフォルトの名無しさん2016/11/07(月) 21:22:05.10ID:qq7YA9ar
>>249
その保存したテキストからdictを復元しようとすると
保存した形式に則ったコードが必要になるけど、
pickleなら標準化されてるので保存・復元のコードが不要。
dict以外にも対応してる。
0251デフォルトの名無しさん2016/11/07(月) 21:29:15.79ID:Emw0kK5K
>>249
保存や読込みが簡単で速い

自分は英辞郎の英和辞書をdictにしてpickleで保存してて
約150MBのpickleからdictを復元するのは数秒
テキストなどからdict作り直すと1分以上掛かった記憶がある
0252デフォルトの名無しさん2016/11/07(月) 22:19:00.70ID:I2yF+6Iq
速さのメリットがあるんですねありがとうございました。辞書などのオブジェクト自体をそのまま保存する感じですかね
0253デフォルトの名無しさん2016/11/07(月) 23:49:27.72ID:DqS1ehkr
>>247
GoやCや関数型言語とかに、と書くべきだったよ
GoもCも関数型言語ではないね
0254デフォルトの名無しさん2016/11/08(火) 01:15:42.13ID:WnJ3738c
pickleって初めて知った
いままでast.literal_evalを使ってたけどこちらのほうが良さそうだな
0255デフォルトの名無しさん2016/11/08(火) 01:38:29.93ID:unHUC1CF
yamlも忘れないであげてください
0256デフォルトの名無しさん2016/11/08(火) 01:42:09.79ID:M6Rn2+El
>>241-247
推薦図書/必読書のためのスレッド 80
http://echo.2ch.net/test/read.cgi/tech/1472262077/295-296

ここに書いておいた
0257デフォルトの名無しさん2016/11/08(火) 03:19:48.53ID:ykrZTa7U
>>238
ありがとうございます!
0258デフォルトの名無しさん2016/11/08(火) 09:32:25.16ID:rTccDety
関数型から入ってPythonに手を出したらPython嫌いになるだろww
0259デフォルトの名無しさん2016/11/08(火) 11:47:55.38ID:ZBAGJV1u
そういうひとはJuliaすればいい
0260デフォルトの名無しさん2016/11/08(火) 15:50:51.11ID:ETyylp1X
python入門しました
Linterがいろいろあるみたいだけどみなさんのおすすめとかはありますか?
あとそれぞれいいところ悪いところがありましたら知りたいです
0261デフォルトの名無しさん2016/11/08(火) 19:39:15.06ID:/0KTqda4
pylint→うるさいババアのごとくねちねちねちねち、怒られることに快感を感じるマゾなら使っていい
flake8→素の状態では力不足、プラグイン積めば超強化できるがPyCQAでメンテしてるやつだけで十分
mypy→適当に使っても効果は薄い、型を書くのは意外と面倒だと思い知らされる
0262デフォルトの名無しさん2016/11/08(火) 22:08:10.65ID:ygc/1hMy
mypyは変数のスペルミスなんかも結構見つけてくれるから便利だな
0263デフォルトの名無しさん2016/11/08(火) 22:20:28.45ID:PDfKmZwt
うるさいババアとか脳内擬人化するからやる気がなくなる
つまり
0264デフォルトの名無しさん2016/11/08(火) 22:21:11.09ID:AAfDFFeK
早くfinal導入しろよ
中途半端な言語だな
0265デフォルトの名無しさん2016/11/09(水) 00:32:54.23ID:+hC5nIar
pythonでclassはまだしも継承なんていつ使うんだよ
0266デフォルトの名無しさん2016/11/09(水) 01:47:44.11ID:BL8FRNNY
世話焼きの妹に擬人化するわ
0267デフォルトの名無しさん2016/11/09(水) 02:18:31.45ID:gLDp2Y3W
>>265
smtpproxy作るときとかに使う
0268デフォルトの名無しさん2016/11/09(水) 19:57:53.43ID:K+BAfMEV
おいっす
0269デフォルトの名無しさん2016/11/09(水) 22:08:38.45ID:WdRAtCqy
if val1 != val2:
val1 = val2

を簡潔に書く方法ありませんか?
ありましたらご教示ください
0270デフォルトの名無しさん2016/11/09(水) 22:19:50.53ID:WdRAtCqy
もう一件質問させてください

Rubyでいうところの
@val = hash[:key1] || default_value
のような書き方はありますか?
pythonではKeyErrorがraiseされるようですが…
0271デフォルトの名無しさん2016/11/09(水) 22:41:29.38ID:WmFTPhhE
普通、Hashでは、キーが存在しない場合、例外・返り値で知らせる、2方式があるのでは?

まあ、個人的には、キーが無いぐらいで、一々、例外処理するのは、おかしいと思う
0272デフォルトの名無しさん2016/11/09(水) 22:56:54.80ID:ZBWpKXUm
デコレータがよくわからないんですけど
ある関数の中に他の関数を取り込んで処理を追加したものってことですか?
0273デフォルトの名無しさん2016/11/09(水) 23:13:46.27ID:iLDjyt+m
>>269
val1 = val2
0274デフォルトの名無しさん2016/11/09(水) 23:15:00.67ID:8SFvlIp7
>>270
ありますよ
0275デフォルトの名無しさん2016/11/09(水) 23:48:59.22ID:3/LtDaCm
>>269
val1 = val2 if val1 != val2 else val1
val1 = {True: val2, False: val1}[val1 != val2]
val1 = [val1, val2][val1 != val2]
式にはなるけど簡潔とはいえないな

>>270-271
dict.get(key, default_value)
getメソッドがあります、keyが無いことが想定内なのかコードに違いが出るのが利点だと思う

>>272
関数に細工を仕掛けるって感じだけどただのシンタックスシュガーなので良い意味で悪用できる
0276デフォルトの名無しさん2016/11/10(木) 00:39:10.58ID:pEVMYV3p
>>272
f()という関数があったとして、その関数内を修正したくない場合に、
f()の前後に、フックを作りたいとする

前処理
f()
後処理

こういう処理を、関数deco()内に書いておいて、関数fを引数として渡すと、
フックありの関数f_hookを、返してくれる

f_hook = deco(f)
0277デフォルトの名無しさん2016/11/10(木) 01:06:05.10ID:uCLe8e7d
ようするにマクロだな
0278デフォルトの名無しさん2016/11/10(木) 11:15:13.04ID:5Rud281n
>>275-277
ありがとうございます。使い道はなんとなく分かった気はするんですけど
別の質問として、deco(f) を表示させたい時
どうして直接 print(deco(f)) と書けずに
f_hook = deco(f) → print(f_hook()) としたり
@deco を使わなくてはいけないんですか?
0279デフォルトの名無しさん2016/11/10(木) 11:48:37.05ID:BSVKqynS
>>278
デコレーターの返り値を即呼び出しできるけど作った関数は使い捨てになる
何度も呼び出すときはシンタックスシュガーや変数に代入したほうが低コスト

# 毎回関数を作ってるのでコストが高い
result = deco(f)()
result = deco(f)()

# 作った関数を再利用するのでコストが低い
func = deco(f)
result = func()
result = func()
0280デフォルトの名無しさん2016/11/10(木) 11:59:30.31ID:TEUn7zAh
>>279
おー、こういうのどうするか知りたかったんだ
デコレータ使うとできるのね、横からだけどありがとう
0281デフォルトの名無しさん2016/11/10(木) 12:33:23.27ID:JiYGuLaE
pip listしたら変なメッセージでたから調べたらpip.confキタ━━━━(゚∀゚)━━━━!!
よけいなことさせるなあああああ
0282デフォルトの名無しさん2016/11/10(木) 12:52:46.89ID:dxAJlx69
>>278
print(deco(f)())
でもいいんです
0283デフォルトの名無しさん2016/11/10(木) 13:08:11.83ID:5Rud281n
>>282
ああ、print(deco(f))がだめだったのって
単純にdeco(f)から返された関数に
呼び出しのカッコを付け忘れてたってことなんですね
0284デフォルトの名無しさん2016/11/10(木) 13:21:40.22ID:JFo9oFJ4
>>283
エラーメッセージとか出力とか見ないひとか
それか英語だと脳内スルーするひととかω
0285デフォルトの名無しさん2016/11/10(木) 13:33:40.65ID:5Rud281n
エラーと言うか<function 関数名<locals>関数名 at 0x・・・>
とだけ出てきて検索の仕方もよくわからなかったので
0286デフォルトの名無しさん2016/11/10(木) 13:34:45.94ID:dxAJlx69
>出力とか

直前の文章もろくに読めないとか
0287デフォルトの名無しさん2016/11/10(木) 13:37:19.71ID:uCLe8e7d
>>285
それは
repr(deco(f))
や
deco(f).__repr__
を見ているし
その出力を見たら「括弧つければ呼び出せるんだな」って思えれば
あなたは python 初心者卒業
0288デフォルトの名無しさん2016/11/10(木) 14:10:50.67ID:BSVKqynS
まあ気軽にどうぞ
0289デフォルトの名無しさん2016/11/10(木) 18:22:35.69ID:1HlNlL+Q
pip9にしたらこんなん出るんスけどどうすりゃええの?

DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
0290デフォルトの名無しさん2016/11/10(木) 19:01:17.14ID:ovkEXo27
>>289
pip.conf(Windowsならpip.ini)つくって
[list]
format=columns
とか書いておけばおk
詳しくは以下参照
https://pip.pypa.io/en/stable/user_guide/#config-file
0291デフォルトの名無しさん2016/11/10(木) 23:34:48.60ID:pEVMYV3p
>>283
( )は、関数呼び出し演算子

JavaScriptでやっていても皆、しょっちゅう忘れる
0292デフォルトの名無しさん2016/11/11(金) 06:40:14.34ID:wvSdzlse
>>286
見てもわからんかった
って書いてるのに何を言ってるんだ?
0293デフォルトの名無しさん2016/11/11(金) 06:49:40.95ID:wvSdzlse
>>291
あるあるネタやね
C# とかの型が静的な言語だとコンパイルエラーになるけどエラーメッセージがメソッドグループがどうのこうので一瞬はあ?ってなる
ましてや動的型言語だとその場ではエラーにもならないから初心者だと何が起こってるのかわからなくなるのも無理ないと思う
0294デフォルトの名無しさん2016/11/11(金) 10:14:14.02ID:E9KoslYT
>>273-275
返信遅くなりすみません。
ご回答ありがとうございます
最初の一件は私の頭がバグってましたね…失礼しました
0295デフォルトの名無しさん2016/11/11(金) 11:01:11.75ID:goVylNR1
上書きしてようが無駄なif挟まないのが一番早いわ馬鹿タレ
0296デフォルトの名無しさん2016/11/11(金) 14:02:48.55ID:H1tW1mfL
>>290
ありがとうございます。
こんな機能あったんすね。
0297デフォルトの名無しさん2016/11/11(金) 23:34:50.72ID:9Vu/C9EP
あったんじゃなくて出来たばかりなの
0298デフォルトの名無しさん2016/11/12(土) 19:22:20.47ID:jqiT4x9G
なんだその屁理屈w
0299デフォルトの名無しさん2016/11/12(土) 21:22:28.19ID:nsWwnrvU
tornado使ってる人いる?
0300デフォルトの名無しさん2016/11/13(日) 11:36:39.04ID:hnH+OR8d
たぶんFAQだと思うのですが
a = [(1,2),(3,4),(5,6)]
から
b = [(1,3,5),(2,4,6)]
を得るにはどう書けばいいですか?
0301デフォルトの名無しさん2016/11/13(日) 11:40:10.22ID:miyqCymn
>>300
[tuple(_[0] for _ in a), tuple(_[1] for _ in a)]
0302デフォルトの名無しさん2016/11/13(日) 11:48:22.16ID:hnH+OR8d
>>301
もっと格好良く書きたいです
0303デフォルトの名無しさん2016/11/13(日) 12:06:43.92ID:GyUcNiqk
あんたの審美眼なんて知らねえよアホ
0304デフォルトの名無しさん2016/11/13(日) 12:17:13.83ID:fSz4+1od
>>300
numpyを使って転置を使う
0305デフォルトの名無しさん2016/11/13(日) 12:25:12.46ID:wVJWES/l
>>300
list(zip(*a))
0306デフォルトの名無しさん2016/11/13(日) 12:36:02.64ID:uHlHhgAc
>>304
マイナーライブラリは使いたくないのですが

>>305
もっと格好良く書きたいです
0307デフォルトの名無しさん2016/11/13(日) 12:48:30.26ID:fSz4+1od
numpyがマイナーとか一体なんのためにPython使ってるのかわからないレベル
0308デフォルトの名無しさん2016/11/13(日) 12:51:46.24ID:dgwOh0lH
>306
自分で考えろ
0309デフォルトの名無しさん2016/11/13(日) 13:02:31.06ID:uHlHhgAc
>>308
この程度もわからない低脳はすっこんでろ
0310デフォルトの名無しさん2016/11/13(日) 13:27:25.38ID:5oFZptf9
自分に言ってるのか?
0311デフォルトの名無しさん2016/11/13(日) 14:09:36.20ID:df0jOq5H
本当に初心者未満の質問なのですが、Pythonが人並みに使えるようになると、
どんなことができるようになるんですか?
データベースをさらに複雑に操作できるとか?
ゲームを作れるとか?
0312デフォルトの名無しさん2016/11/13(日) 14:21:25.97ID:dgwOh0lH
>306
これでも読んどけ
list(zip(*a))だと、リストのリストでなく、タプルのリストになるから注意

http://stackoverflow.com/questions/6473679/python-list-of-lists-transpose-without-zipm-thing
0313デフォルトの名無しさん2016/11/13(日) 14:29:26.48ID:uHlHhgAc
>>312
人の書いた記事にしか頼れない無能
0314デフォルトの名無しさん2016/11/13(日) 14:38:56.46ID:e+lvJCbH
>>304
np.array(a).reshape(2, len(a))
できましたありがとう
0315デフォルトの名無しさん2016/11/13(日) 14:56:01.52ID:e+lvJCbH
これでもいいのかな
np.reshape(a, (2, -1))
0316デフォルトの名無しさん2016/11/13(日) 15:13:31.03ID:dgwOh0lH
reshapeでもいいけど、転置を明示できるtransposeの方がいいのでは?
0317デフォルトの名無しさん2016/11/13(日) 15:25:22.99ID:5/WHzOTO
reshapeと転置とは違う
0318デフォルトの名無しさん2016/11/13(日) 15:26:54.00ID:miyqCymn
>reshapeでもいいけど

良くないね
0319デフォルトの名無しさん2016/11/13(日) 20:41:42.34ID:kjJf+w4Q
pdb のコマンドで変数を表示できますか?aで引数を表示するように
0320デフォルトの名無しさん2016/11/13(日) 20:43:15.33ID:ckhnbYpT
ぱいそぉぉぉぉおおおおおおおーーん
0321デフォルトの名無しさん2016/11/13(日) 22:10:34.01ID:fV6VYX+7
先日始めたばかりのプログラミング初心者です。
python学習サイトで入門編を終え、いざ実際に色々といじってみようと
公式?のpythonドキュメントチュートリアルを見たのですが
どうにも書かれていることがやりたい事と噛み合わない感じがします。
いまいちサイトの使い方が分からず、翻訳口調なのも気になるのですが
勉強して慣れれば普通に理解できるものなのでしょうか。
0322デフォルトの名無しさん2016/11/13(日) 22:45:05.25ID:ckhnbYpT
そうだと思うよ
プログラミング言語なんてそんなもん
言っちゃ悪いが誰でもできる
0323デフォルトの名無しさん2016/11/14(月) 06:58:23.21ID:5ieSClDh
>>321
python.jpは良くないのは確か
英語判るひとならpython.orgの方を強く薦める
0324デフォルトの名無しさん2016/11/14(月) 17:52:55.19ID:zlxXdLUF
tkinter で widget が w のとき
w.bind('<Destroy>', mydestroy)
とかするとフック出来るのは分かったのですが
元々あった Destroy の呼び方がわかりません
olddestroy = w.bind('<Destroy>')
とやっても
olddestroy = w.bind('<Destroy>', mydestroy)
とやっても
mydestroy() の中で olddestroy() して呼び出しできません
w.bind() だけを見ると <hoge> の一覧のリストが返ってきます
0325デフォルトの名無しさん2016/11/15(火) 18:11:27.16ID:bMz1J9Fg
Anacondaについて教えてほしいのですが、環境を構築する際にスレッド数上限を決めることってできないのでしょうか?

使用している計算機の契約上、CPUコア数を全て使用する場合の使用時間が限られています
そこでマルチスレッドに対応したライブラリを使用した際に全てのコアを使用されないようコア数を絞りたいと思っています
しかしライブラリごとに設定するのは設定漏れの心配があり、できればcondaが提供する環境の方で解決できたら嬉しいのですが・・・・そのようなことは可能なのでしょうか?
もし可能であれば方法か参考になるページ等を教えてください
よろしくお願いします
0326デフォルトの名無しさん2016/11/15(火) 18:47:01.59ID:IxpYJQnb
multiprocessingモジュールにコア数を返すメソッドがあるから上書きする?
linuxならulimit使うべきだと思うけど
0327デフォルトの名無しさん2016/11/15(火) 19:10:32.48ID:J5KxXXfJ
start /affinity n
0328デフォルトの名無しさん2016/11/18(金) 04:54:45.09ID:ifar4qXf
python2.7のcvxoptパッケージで二次計画法を解く際にsolver.qpを使った時、
解がない時にエラーが出ますが、
解無しの時はNAまたは0などにすることで、
forループを中断させずに回すにはどうすればよいでしょうか?
0329デフォルトの名無しさん2016/11/18(金) 05:26:55.71ID:bpDg/mkv
例外が起こるかもしれない計算をtry except文の中に書く
計算中の例外を捕捉したら解無しで使う値を代入するようにexcept節に書く
0330デフォルトの名無しさん2016/11/18(金) 11:02:48.99ID:Cf5MuJO6
pylintとpyflakesってどっちが定番なんですか?
0331デフォルトの名無しさん2016/11/18(金) 12:08:47.92ID:xWmKRoKA
定番かどうか知らないけどダウンロード数が多い方はpypiで分かる
0332デフォルトの名無しさん2016/11/18(金) 20:44:58.89ID:ifar4qXf
>>329
ありがとうございます!
0333デフォルトの名無しさん2016/11/19(土) 04:06:00.37ID:Au/uI/3a
conda createで仮想環境作るのって
conda/envs/以下のディレクトリにしか作れない?
03343282016/11/19(土) 05:25:04.18ID:a2s2F7Cl
先ほどの例外処理で、エラーではなく定義されていないTerminated (singular KKT matrix).という表示が出ていたので、try-exceptに適用させるために、これをエラーとして定義しようとしているのですが、
class MyError(exception):
def __init__(self,error)
self.error = error
から
どう書いて良いのかよくわからなくなっています
度々申し訳ありません
0335デフォルトの名無しさん2016/11/19(土) 08:12:24.51ID:8l8x6got
>>334
github見たら"Terminated ...."が表示される場合は値が返っているので例外で処理できない
返り値のdictの"status"が"unknown"かどうか調べればterminatedしたのか判定はできる
03363282016/11/19(土) 08:28:50.27ID:a2s2F7Cl
>>335
unknownとなっていました

このプログラム、ある数値範囲を分割してその各値をターゲットに2次計画法を用いており、おそらくGx<=hの制約によって範囲の端のところの解がなくterminated〜が出てしまってるのですが、この時の解の値を無視などすることはできませんか?
03373282016/11/19(土) 08:39:10.58ID:a2s2F7Cl
連投すみません
このコードだとエラー出てますが、
sol=solver.qp(Q,p,G,h,A,b)
if str(sol["status"])=="unknown" :
sol["x"]=None
sol["primal objective"] = None
else:
sol["x"]=sol["x"]
sol["primal objective"] = sol["primal objective"]
のようなイメージで良いのでしょうか
03383282016/11/19(土) 09:41:46.47ID:a2s2F7Cl
あ、これでできました
喜びのあまり踊っております
ありがとうございました
0339デフォルトの名無しさん2016/11/19(土) 09:52:39.36ID:8l8x6got
後の計算で問題が起こらない値にしたほうがいいけどNoneで大丈夫かな?

for文の中でsolver.qp()を呼び出しているなら
continueすることでその場で周回を打ち切ってループを継続することができる

for val in list:
 sol = solver.qp(val)
 if sol["status"] == "unknown":
  continue
 calcurate(sol)
03403282016/11/19(土) 10:50:38.22ID:a2s2F7Cl
>>339
for i in xrange()
Q = matrix
p = matrix
G = matrix
h = matrix
A = matrix
b = matrix
sol = solvers.qp(Q, p, G, h, A, b)
if sol['status'] == 'optimal':
sol['x'] = sol['x']
sol['primal objective'] = sol['primal objective']
else:
sol['x'] = matrix(0行列)
sol['primal objective'] = np.array([0], dtype = float)
A[i] = np.dot(matrix, sol['x'])
B[i] = np.array(sol['primal objective']
これで回しましたが,後の方の数値も回ってくれました.
continueという方法もあるのですね
除外値0は視認できる量なのでこれでも大丈夫そうです
ありがとうございます!
03413282016/11/19(土) 10:51:51.97ID:a2s2F7Cl
長コード失礼しました.
0342デフォルトの名無しさん2016/11/19(土) 13:43:10.79ID:YtkNE2sc
Q, p, G, h, A, b = matrix * 5
0343デフォルトの名無しさん2016/11/19(土) 13:43:48.86ID:YtkNE2sc
こっちだ
Q, p, G, h, A, b = (matrix,) * 5
0344デフォルトの名無しさん2016/11/19(土) 13:45:28.38ID:YtkNE2sc
5じゃなかった
6ね
0345デフォルトの名無しさん2016/11/19(土) 13:53:31.34ID:L3TamDez
何その変数名
0346デフォルトの名無しさん2016/11/19(土) 19:12:13.07ID:EARt8M3E
株価を取得するプログラムを作成したかったので
以下のページを参考に
http://drillan.github.io/python/get_stock_price_from_rakuten_rss.html
以下のプログラムを作成してみたのでですが
# coding: utf-8
from dde_client import DDEClient
dde = DDEClient('RSS', 'N225.3125.T')
print dde.request(u'現在値')

以下のエラーが発生してしまいました
解決方法わかる方教えてください
Traceback (most recent call last):
File "I:\project\trade\test\test.py", line 5, in <module>
print dde.request(u'迴セ蝨ィ蛟、')
File "I:\project\trade\test\dde_client.py", line 190, in request
raise DDEError("Unable to request item", self._idInst)
dde_client.DDEError: Unable to request item (err=0x4009L)
0347デフォルトの名無しさん2016/11/19(土) 19:32:28.71ID:evoiElz2
中で呼び出されてる DdeClientTransactionがDMLERR_NOTPROCESSEDを返して失敗しているらしいけど
よく分かんない
0348デフォルトの名無しさん2016/11/19(土) 20:34:11.21ID:67PJcS6R
python3でddeのprintを直してやったけどできた
詳しくないので知りませんが先物口座開設してないか現在値が文字化けしてるのでは
0349デフォルトの名無しさん2016/11/19(土) 21:19:20.34ID:8l8x6got
>>346
マジックコメントだとutf-8になってるけど実際のエンコーディングはshift_jisだね
マジックコメントをshift_jisに修正するかファイルをutf-8で保存しなおせば直ると思う

>>> "現在値".encode('utf-8').decode('shift_jis')
'迴セ蝨ィ蛟、'
0350デフォルトの名無しさん2016/11/19(土) 22:43:03.79ID:EARt8M3E
ありがとうございました。
ファイルをutf8で保存し直したらいけました
0351デフォルトの名無しさん2016/11/20(日) 21:03:27.43ID:Fci+Uzj5
以下のような値が変数に格納されているんですが
b' 82.00'
以下のように変換するにはどうしたら良いでしょうか?
'82.00'
0352デフォルトの名無しさん2016/11/20(日) 21:20:43.63ID:7VADWQB7
strip ()
0353デフォルトの名無しさん2016/11/20(日) 21:24:27.58ID:Fci+Uzj5
>>352
ありがとうございます。
ただそれだけだとprintで以下のように出力されてしまうようです
b'82.00'
以下のように数値の文字列として出力するにはどうしたら良いでしょうか?
'82.00'
0354デフォルトの名無しさん2016/11/20(日) 21:28:17.32ID:mZUlhc5f
str(b'82.00', encoding='utf_8').strip()
0355デフォルトの名無しさん2016/11/20(日) 21:28:31.29ID:w0YTyg1d
bytesからstrへ変換するにはdecodeメソッドを使う
出力するときにクオートしてほしいならrepr()をかます

>>> print(repr(b' 80.20'.strip().decode('utf-8')))
'80.20'
0356デフォルトの名無しさん2016/11/20(日) 21:29:51.65ID:Fci+Uzj5
いけました!
ありがとうございます!
0357デフォルトの名無しさん2016/11/20(日) 21:33:48.41ID:w0YTyg1d
この短いコードで差が出るのでstr()を使う方はおすすめしない

>>> import timeit
>>> timeit.timeit("b'80.20'.decode('utf-8')")
0.3648384090001855
>>> timeit.timeit("str(b'80.20', encoding='utf-8')")
1.4309005750001234
0358デフォルトの名無しさん2016/11/20(日) 21:38:30.61ID:4jFeo3q7
なにこれ意味わかんないんだけど
0359デフォルトの名無しさん2016/11/20(日) 21:51:25.17ID:UTIcInIC
バイトオブジェクトが返ってクルんですね しかもエクセル用だからshiftJISでエンコされてるのか
0360デフォルトの名無しさん2016/11/20(日) 22:22:40.65ID:Fci+Uzj5
ありがとうございます!
0361デフォルトの名無しさん2016/11/20(日) 23:36:17.30ID:4jFeo3q7
いいってことよ
0362デフォルトの名無しさん2016/11/21(月) 03:08:46.86ID:/PeITn5d
何時から何時までの時間帯に1分おきに繰り返す処理を作成したいのですが
どうやったら作成出来ますでしょうか?
windows環境なのでタスクスケジューラを使用しても構いません
どなたかわかる方いたら教えていただけますでしょうか?
0363デフォルトの名無しさん2016/11/21(月) 03:22:16.04ID:ixmL4fJG
タスクスケジューラを使用して1分おきに起動
何時から何時までの時間帯なら実行
それ以外なら実行せずに即終了
0364デフォルトの名無しさん2016/11/21(月) 13:54:26.03ID:OdlAvAwn
Pythonには、Timer, Alarm みたいなクラスは無いの?
0365デフォルトの名無しさん2016/11/21(月) 14:15:36.63ID:goLgdzFN
tkinter使えば?
0366デフォルトの名無しさん2016/11/21(月) 18:14:09.98ID:n75jjiYq
sys.pathに登録されているパスなのにimportできないのってどんな理由ですか?
例えばipythonをインストールして
site-packages/IPython/extensions/rmagic.pyをimportしたいのに
ImportError: No module named 'rmagic'
ってなります
0367デフォルトの名無しさん2016/11/21(月) 19:55:20.67ID:ixmL4fJG
別にmagicというディレクトリがあって
その中に__init__.pyがないとか
0368デフォルトの名無しさん2016/11/21(月) 22:11:13.94ID:kGORnGd2
Matplotlib以外でグラフ描画ライブラリで良いのありませんか?
0369デフォルトの名無しさん2016/11/22(火) 01:07:55.83ID:qW+6ZAFd
Gadfly
0370デフォルトの名無しさん2016/11/22(火) 01:55:19.53ID:z3XwzLFJ
Anacondaに関する質問てここでいいすかね?
0371デフォルトの名無しさん2016/11/22(火) 03:00:09.76ID:rIBekWb8
>>368
あるかbokeh
0372デフォルトの名無しさん2016/11/22(火) 13:02:19.65ID:qW+6ZAFd
>>368
excelとかOOoとかGoogleAppsとか
0373デフォルトの名無しさん2016/11/22(火) 13:37:23.42ID:Pvp5yOqg
ttp://qiita.com/damyarou/items/2de72bd8e2289cc2a9e0
0374デフォルトの名無しさん2016/11/22(火) 22:48:55.77ID:HEsjvHAJ
以下のような連想配列があるときobject4を(object3の後ろに)追加したいのですが
どうすれば出来ますでしょうか?
{'a':[object1,object2,object3]}
0375デフォルトの名無しさん2016/11/22(火) 23:02:46.61ID:qW+6ZAFd
d = {'a':[object1,object2,object3]}
d['a'].append(object4)
0376デフォルトの名無しさん2016/11/22(火) 23:03:14.61ID:DEtO7tOO
その連想配列(辞書)をdicとすると、
dic["a"].append(obj4)
で出来るのでは?
0377デフォルトの名無しさん2016/11/23(水) 01:03:12.49ID:bgveU3t+
ありがとうございました。解決しました!
0378デフォルトの名無しさん2016/11/23(水) 01:03:47.77ID:bgveU3t+
以下の文字列を日本語の文字列に変換したいんですが
どうしたら良いでしょうか?
b'\x82x\x82s\x82k'
0379デフォルトの名無しさん2016/11/23(水) 01:52:50.37ID:bgveU3t+
すいません自己解決しました
.decode('shift-jis')でいけました
0380デフォルトの名無しさん2016/11/25(金) 14:48:04.56ID:0NcL6L2O
今チュートリアル読んでます
これからも意味の分からないことが出てくるんだろうと思うけど
変な質問はコレっきりにしますからモヤモヤするんで教えて下さい

python3.5.2「4.7.2. キーワード引数」の例で出来上がる文章、
This parrot wouldn't voom if you put 1000 volts through it.
Lovely plumage, the Norwegian Blue
It's a stiff !
ってどういう意味(状況)なんですか?
オウムに1000ボルトの電気ショック? 素敵な羽、ノルウェイブルー(色?)
死んでる? ゴワゴワ?

雷に打たれて黒焦げアフロになる、というようなマンガ的お約束か何かなんでしょうか???
0381デフォルトの名無しさん2016/11/25(金) 15:18:50.49ID:ANw4+JWL
11 + 45 * 1 - 4
という式中の数字のみを
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]に含まれる数で順に置き換えて
1 + 2 * 3 - 4
としたいんだけどどうすればいい?正規表現とか使ってどうにかなる?
0382デフォルトの名無しさん2016/11/25(金) 15:19:24.86ID:0NcL6L2O
すいません、自己解決しました>>380
モンティパイソンの話が元ネタだったんですね
0383デフォルトの名無しさん2016/11/25(金) 16:21:09.89ID:qSuX5VVD
>>381
順に置き換えの定義があいまい。
1+2*3-4の次は2+3*4-5、3+4*5-6...って事?
0384デフォルトの名無しさん2016/11/25(金) 16:37:43.07ID:gsd/4sgT
>>381
https://ideone.com/r7EkMX
0385デフォルトの名無しさん2016/11/25(金) 18:26:46.48ID:6I1tAUNu
s = "11 + 45 * 1 - 4"
re.sub(r"\d+", "{}", s).format(*arr)
0386デフォルトの名無しさん2016/11/25(金) 22:55:38.47ID:1HRs1hBa
>>384
ruby?一応同じような感じでできました
>>385
置換されないです...
03873862016/11/25(金) 22:59:06.17ID:1HRs1hBa
konnna kanjini narimasita
editor no mojiha musisitekudasai

ofutaritomo arigatougozaimasita

1 import re$
2 $
3 i = 0$
4 j = 0$
5 arr = [
0388デフォルトの名無しさん2016/11/25(金) 23:00:01.15ID:1HRs1hBa
1 import re$
2 $
3 i = 0$
4 j = 0$
5 arr = ["1", "2", "3", "4", "5"]$
6 s = "11 + 45 + 1 - 4"$
7 tmp = []$
8 tmp = s.split(" ")$
9 print tmp$
10 $
11 while i < len(arr):$
12 if tmp[i].isdigit():$
13 tmp[i] = re.sub(r'\d+', arr[j], tmp[i])$
14 j += 1$
15 i += 1$
16 $
17 print tmp$
18 s = ' '.join(tmp)$
19 print s$
0389デフォルトの名無しさん2016/11/25(金) 23:37:14.66ID:6I1tAUNu
>>386
https://ideone.com/UhGVW2
0390デフォルトの名無しさん2016/11/26(土) 11:31:17.41ID:4XPhmo+0
matplotlibの質問です
https://www.gsi.go.jp/kiban/
ここから
FG-GML-5235-36-98-DEM5A-20161001.xml
このデータをとってきて等高線を描くと
充血したおいなりさんωが現れます
-9999の扱いはどう処理すればいいのでしょうか?
0391デフォルトの名無しさん2016/11/26(土) 12:15:11.40ID:ooyaFqF3
それはわたしのおいなりさん
0392デフォルトの名無しさん2016/11/26(土) 14:21:08.43ID:R/COkx/k
入力した日付が実行日以前直近6日のみ取得したいのですが、
日付入力を間違った場合(存在しない日付)を入力した場合エラーで落ちます。

存在しない日付はエラーメッセージのみ表示してその後の処理も続けるにはどうすれば良いですか?


import datetime

day = datetime.date.today() - 6

a = [
['2016', '11', '06'],
['2016', '11, '31'],
];

for b in a:
if #日付が存在しないかを判定#
print("日付がおかしいです。 ")
print(b)
input_day = datetime.date(int(b[0]), int(b[1]), int(b[2]))
if day < input_day:
print(b)
0393デフォルトの名無しさん2016/11/26(土) 14:50:32.38ID:mx1WdaLu
>>387-388
2chのバグだろう

書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。
" の代わりに、\" とエスケープすれば、どうだろう?

それか、書き込み確認画面が出たら、1度キャンセルすれば、確認画面は出ないようになった
0394デフォルトの名無しさん2016/11/26(土) 14:55:48.86ID:vsxFJewY
>>392
http://ideone.com/97mZRU

日付の足し引きはtimedelta、例外処理はtry except、範囲内の判定には10 < x < 20みたいな書き方
03953922016/11/26(土) 14:57:27.54ID:R/COkx/k
すみません、コード間違えていましたので再投稿します。

入力した日付が実行日以前直近6日のみ取得したいのですが、
日付入力を間違った場合(存在しない日付)を入力した場合エラーで落ちます。

存在しない日付はエラーメッセージのみ表示してその後の処理も続けるにはどうすれば良いですか?


import datetime

today = datetime.date.today()
today_minus6 = today + datetime.timedelta(days=-6)

a = [
['2016', '11', '06'],
['2016', '11, '31'],
];

for b in a:
if #日付が存在しないかを判定#
print("日付がおかしいです。 ")
print(b)
input_day = datetime.date(int(b[0]), int(b[1]), int(b[2]))
if today_minus6 < input_day:
print(b)
0396デフォルトの名無しさん2016/11/26(土) 15:12:58.86ID:iYDfetS2
>>394に書かれてる通りtry exceptで判断すればいい

for b in a:
 try:
  input_day = datetime.date(int(b[0]), int(b[1]), int(b[2]))
 except:
  print(
0397デフォルトの名無しさん2016/11/26(土) 15:13:45.52ID:iYDfetS2
for b in a:
 try:
  input_day = datetime.date(int(b[0]), int(b[1]), int(b[2]))
 except ValueError:
  print('日付がおかしいです。 ', b)
  continue
 if today_minus6 < input_day:
  print(b)
03983922016/11/26(土) 15:17:02.28ID:vO6Y+RMb
>>394

try, exceptで行けました!
try, exceptってdefとかの全体を補足するものと思ってたら、関数1つだけをくくったりできるんですね。

使い方が難しそうだと思って今まで使ってなかったけど今回ので使うきっかけができました。
ありがとうございます。

> try:
> input_day = datetime.date(int(b[0]), int(b[1]), int(b[2]))
> except:
> print('日付おかしい')
03993922016/11/26(土) 15:19:49.04ID:vO6Y+RMb
>>397

おお!
サンプルまで詳しくありがとうございます。

except ValueError:

が自分のと違いますね。
何も指定しないとすべてのエラーでスキップされるので、ValueErrorで限定して指定すると
より安全になりそうですね。
そちらを利用させていただきます。

ありがとうございました。
0400デフォルトの名無しさん2016/11/28(月) 12:05:49.64ID:msYXnjQ5
>>390
B の方を使えば上手くいく
0401デフォルトの名無しさん2016/11/28(月) 16:29:43.48ID:eCM+06G4
自作でパッケージを作ってpipでインストールしたんですけど
project/setup.py
project/project/hoge.py
project/project/data.txt

hoge.pyの中でこのdata.txtのパスが欲しいんですがこのパスはどうやって取得するんでしょうか?
(中身じゃなくてパスだけ欲しい)
0402デフォルトの名無しさん2016/11/28(月) 16:52:06.20ID:msYXnjQ5
os.path.dirname(__file__)
0403デフォルトの名無しさん2016/11/28(月) 16:59:32.60ID:QbhBdwoJ
>>401
distutilsだと多分だめ、setuptoolsを使う
MANIFEST.inかpackage_dataキーワードでdata.txtをバンドルして
pkg_resources.resource_filename("project", "data.txt")でパスを取得する
0404デフォルトの名無しさん2016/11/28(月) 18:19:09.54ID:jLowX4tF
オレの環境だとpkg_resourcesの中にresource_filenameが出てこない
0405デフォルトの名無しさん2016/11/28(月) 19:10:52.66ID:QbhBdwoJ
システム環境に勝手に手を加えるのはちょっと怖いから
virtualenvかvenvで隔離環境作って最新版入れ放題ヒャッハーしようぜ
0406デフォルトの名無しさん2016/11/29(火) 00:58:30.14ID:asOo9j5T
毎時0分になったら関数fを実行する処理を書く時どうやって実装します?

time.sleep(1)をwhileで回して時刻調べるしかない?
0407デフォルトの名無しさん2016/11/29(火) 00:59:44.36ID:bRZpPDaJ
cron
0408デフォルトの名無しさん2016/11/29(火) 06:32:02.91ID:glNciwx+
Rubyの外部コマンドなら、system()とか、バッククォートで囲むとか

system('mkdir hoge') # => true

`date` # => "2012年 9月 3日 月曜日 23時59分17秒 JST\n"

cron など、OSのコマンドを調べて。
cronに登録するのが嫌なら、周期的にコールバックしてもらう関数に、処理を書くとか
0409デフォルトの名無しさん2016/11/29(火) 11:21:29.90ID:siwyj2pL
>>402
これだと簡単に出来ました
>>403
project/setup.py
project/project/__init__.py
project/project/hoge.py
project/project/data.txt
なふうに__init__.pyがないとdata.txtもインストールされないことに気づきハマりましたがこれも便利でした
0410デフォルトの名無しさん2016/11/29(火) 19:00:22.79ID:3ZCU7F/e
docutilsでreStructuredTextをhtmlに変換したいんですけど
import docutils.core
s = """
hello
=====
"""
print(docutils.core.publish_parts(s, writer_name='html')['html_body'])

これ実行しても
<div class="document" id="id1">
<h1 class="title">こんにちは</h1>
</div>
って表示されます

余計なclassとか要素を付け足さずに<h1>hello</h1>とだけ変換して欲しいんですけど
何か必要な設定おしえてください
もしくは代替ライブラリありませんか?
0411デフォルトの名無しさん2016/11/29(火) 19:01:55.56ID:3ZCU7F/e
訂正↓

これ実行しても
<div class="document" id="id1">
<h1 class="title">hello</h1>
</div>
って表示されます
0412デフォルトの名無しさん2016/11/29(火) 19:46:15.50ID:glNciwx+
Xpath のライブラリなどを使って、タグから属性を削除すれば?
0413デフォルトの名無しさん2016/11/29(火) 22:23:30.60ID:rYidf/CN
pythonも原則finalで変数にしたい時だけvar付けるみたいな仕様にしない?
そっちの方がいくない?
0414デフォルトの名無しさん2016/11/29(火) 23:53:06.16ID:6NvmVSGH
webdriver、BeautifulSoupを使ってパラメータを与える場合は、URLに書く方法しかないのでしょうか?
例えばrequestsのように与えることはできるのでしょうか?

#---------------------------
url = "http://www.python.org"; # URLはパラメータ入れるものではないです。サンプルです。

#---------------------------
import os
from selenium import webdriver
from bs4 import BeautifulSoup

driver = webdriver.PhantomJS(service_args=[], service_log_path=os.path.devnull)
driver.get(url + "?key=value")  →requestsのようにパラメータを渡す方法はある??
html = driver.page_source.encode('utf-8')
soup = BeautifulSoup(html, "lxml")
04154142016/11/29(火) 23:55:21.84ID:6NvmVSGH
>>414 の続きです。

#---------------------------
import requests
p = {
"key": "value"
}
requests.get(url, params=p)
0416デフォルトの名無しさん2016/11/30(水) 00:11:29.92ID:sQvK4opq
オセロを作りたいのですが
http://ideone.com/FH3SDw
初期値の真ん中4つをセットするとこの様なアウトプットになってしまいます。。。
どこがおかしいのでしょうか?
0417デフォルトの名無しさん2016/11/30(水) 00:30:03.48ID:rS+9w+V/
>416
field = [[0]*8]*8
とすると、一行目のリストのコピーが行数分作られるのでなく、
一行目のリストの参照が行数分作られる。
なので、どの行を変えても、変更が全ての行に反映されてしまう。
field=[[0]*8 for _ in range(8)]
とすれば回避できる。
0418デフォルトの名無しさん2016/11/30(水) 00:52:03.89ID:sQvK4opq
>>417
なるほど〜
C言語から離脱してPython最近始めたのですが
どうしてもC的な思考で書いてしまう…
ちゃんと仕様見ないとダメですね!有難うございました
0419デフォルトの名無しさん2016/11/30(水) 13:25:06.48ID:3Q1IinyT
C/C++以外の言語では、構造体以外のオブジェクトでは、参照だけがコピーされる

newが呼ばれた回数が、実体の数。
newが呼ばれていなかったら、参照だけがコピーされたため、同一のオブジェクトを指す
0420デフォルトの名無しさん2016/11/30(水) 13:46:16.30ID:3Q1IinyT
>>414-415
Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例

佐々木拓郎・るびきち、2014
0421デフォルトの名無しさん2016/11/30(水) 15:00:40.61ID:SHyKKiWG
>>419
初心者スレだしわかりやすくウソ混ぜることもあるが
これは害悪
0422デフォルトの名無しさん2016/11/30(水) 16:15:12.87ID:ApvCUq7V
値じゃなくて参照だけがコピーされるんですよ。
ギフハフのARにハッキングされたのでcloneメソッドを作って対抗しました。
newが呼ばれなかったのは陰謀です。
Rubyによるクローラーで僕の脳内が盗撮・盗聴されてるんです。
0423デフォルトの名無しさん2016/11/30(水) 22:59:08.37ID:QrNzcyxl
ブレインスクレイピングやろなあ
0424デフォルトの名無しさん2016/12/01(木) 00:35:10.30ID:RhJOOc9G
ttp://elfen00.github.io/Selenium/

上記を参考にTorを使ったIP変更をテストしているのですが、うまく動きません。
service_argsを空[]で実行すると意図した結果が得られるので、
phantomjsのパス(/usr/bin/phantomjs)は通っているはずです。
原因は分かりますでしょうか?

---------------------------
from selenium import webdriver

# service_args = [] # ->これだと正常に結果を得られる
service_args = [
'--proxy=127.0.0.1:9050',
'--proxy-type=socks5',
]
# driver = webdriver.PhantomJS('/usr/bin/phantomjs', service_args=service_args, service_log_path="log")
driver = webdriver.PhantomJS(service_args=service_args, service_log_path="log")
driver.get("http://api.aoikujira.com/ip/json";)
print(driver.page_source)
---------------------------

# service_argsにproxyをセットした結果
<html><head></head><body></body></html>

# service_argsを空にした実行結果
<html><head></head><body>{"API_URI":"http:\/\/api.aoikujira.com\/ip\/get.php","REMOTE_ADDR":"*.*.*.*",
0425デフォルトの名無しさん2016/12/01(木) 07:56:38.54ID:91ReGJeh
1行ずつデバッグして、変数をwatchするとか、
詳細なエラーメッセージを表示するとか、
OSのエラーメッセージを見るとか

エラーメッセージが無いと、何のエラーが起こっているのか、わからない
0426デフォルトの名無しさん2016/12/01(木) 12:07:47.64ID:5zfWITAP
service_args = {
'proxy':'127.0.0.1:9050',
'proxy-type':'socks5',
}
0427デフォルトの名無しさん2016/12/02(金) 23:44:39.88ID:Oh8J5Su0
>>425,426

コメントありがとうございます。

426さんの{}で辞書渡ししましたが、エラーになりました。
[]で渡したときは特にエラーはなく、service_log_path="log" で指定したファイルを見ると下記が出ていました。
何かわかりますでしょうか?


>つづく
0428デフォルトの名無しさん2016/12/02(金) 23:45:52.01ID:Oh8J5Su0
[INFO - 2016-12-02T14:31:46.183Z] GhostDriver - Main - running on port 36789
[INFO - 2016-12-02T14:31:47.130Z] Session [*** セッション番号?? ***] - page.settings - {"XSSAuditingEnabled":false,
"javascriptCanCloseWindows":true,
"javascriptCanOpenWindows":true,
"javascriptEnabled":true,
"loadImages":true,
"localToRemoteUrlAccessEnabled":false,
"userAgent":"Mozilla/5.0 (Unknown; Linux x86_64) AppleWebKit/538.1 (KHTML, like Gecko) PhantomJS/2.1.1 Safari/538.1",
"webSecurityEnabled":true}
[INFO - 2016-12-02T14:31:47.131Z] Session [*** セッション番号?? ***] - page.customHeaders: - {}
[INFO - 2016-12-02T14:31:47.131Z] Session [*** セッション番号?? ***] - Session.negotiatedCapabilities - {"browserName":"phantomjs",
"version":"2.1.1",
"driverName":"ghostdriver",
"driverVersion":"1.2.0",
"platform":"linux-unknown-64bit","javascriptEnabled":true,
"takesScreenshot":true,
"handlesAlerts":false,
"databaseEnabled":false,
"locationContextEnabled":false,
"applicationCacheEnabled":false,
"browserConnectionEnabled":false,
"cssSelectorsEnabled":true,
"webStorageEnabled":false,
"rotatable":false,
"acceptSslCerts":false,
"nativeEvents":true,
"proxy":{"proxyType":"direct"}}
[INFO - 2016-12-02T14:31:47.131Z] SessionManagerReqHand - _postNewSessionCommand - New Session Created: *** セッション番号?? ***
0429デフォルトの名無しさん2016/12/03(土) 02:11:25.14ID:MDjG3Lcn
>>424
試した限りポートが違ってると正しい値が帰ってこない。
そこでふと気づいたんだけどひょっとしてTorBrowser使ってたりしない?
その場合ポートは9050じゃなくて9150になるんだけど。
04304242016/12/03(土) 03:09:26.47ID:LC4g1S/3
>>429

試して頂いてありがとうございます。
TorBrowserではなく、424にあるように webdriver.PhantomJS() を使っているので、
PhantomJSブラウザを使っているんだと思っているのですが、自分は何か勘違いしてるんですかね?

ちなみに下記ポートを使ってみましたが、結果は同じ(<html><head></head><body></body></html>)でした。

service_args = [
'--proxy=127.0.0.1:9150',
'--proxy-type=socks5',
]
0431デフォルトの名無しさん2016/12/03(土) 04:34:38.63ID:YXCqjzXm
男でもパイレディース入れますか?
0432デフォルトの名無しさん2016/12/03(土) 10:32:31.81ID:MDjG3Lcn
>>430
俺が言いたかったのはTorBrowserを単体のTorの代わりに使ってない?
って意味だったんだけど重要なのはそこじゃなくてプロキシに繋がらないときに
その値が返ってくるってことなんだけど他のプログラムからそのプロキシに
接続できることは確認してる?
0433デフォルトの名無しさん2016/12/03(土) 12:11:07.79ID:xA6F3n6A
>>424はやましいことを企んでるやつだろ
こんな奴の力になるな
0434デフォルトの名無しさん2016/12/03(土) 12:34:45.97ID:Y9I90W1E
torでbotネットワーク作ってホワイトハウスと戦うつもりやろなぁ
04354242016/12/03(土) 16:26:42.80ID:vCmaXAye
>>432

ご意見ありがとうございました。
どうやらtorのしくみを理解できていませんでした。

torを常駐させて、そのソフト経由で外に抜けていくんですね。(これがproxy?ここがまだあまりわかっていない)
torをインストールし、centosなので、 /etc/init.d/tor start で起動したら、pythonで期待した結果が返ってきました。

大変参考になりましたありがとうございました。

>>433,434
どこかを攻撃とかではないので安心してください。
そもそもこんな設定に手間取ってるようなレベルでは、至る所に痕跡残して即アウトになると思いますし。
0436デフォルトの名無しさん2016/12/03(土) 18:21:00.98ID:iU+ignEA
127.0.0.1 の時点で気付くべき
0437デフォルトの名無しさん2016/12/03(土) 18:34:03.92ID:SrLkI6mB
hello.shに以下入力し実行したときに、
それぞれ別ターミナルで開き実行したいのですが、どうすればよいでしょうか。

#!/bin/env python
/home/hello1.py
/home/hello2.py
/home/hello3.py
0438デフォルトの名無しさん2016/12/03(土) 22:18:12.90ID:IRGw9hUe
gnome-terminal

「linux 端末 開く コマンド」で検索!
0439デフォルトの名無しさん2016/12/03(土) 22:21:26.72ID:MF5SHVtU
>>437
shebangおかしい
それbashスクリプトだろ
0440デフォルトの名無しさん2016/12/03(土) 22:51:24.14ID:/gfLXcDp
gnome前提なのも草やけど
どうせ書くならgnome-openやろ
0441デフォルトの名無しさん2016/12/04(日) 16:47:25.58ID:DTlwy0pT
[1,0,0,0,2]このリストを作るとき
[1] + [0]*3 + [2]こう書いてますが
他にも書き方ありますか?
0442デフォルトの名無しさん2016/12/04(日) 17:25:19.63ID:yVPKVwxZ
[1,0,0,0,2]
0443デフォルトの名無しさん2016/12/04(日) 21:18:31.73ID:dK8nOpyX
笑わすなよww
0444デフォルトの名無しさん2016/12/04(日) 22:46:30.10ID:Y3EeqqZE
真面目に>>442の方がよさそう
0445デフォルトの名無しさん2016/12/04(日) 22:57:59.58ID:iVFW+LnC
>>442
おまえ[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2]も
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2]って
書くの?
0446デフォルトの名無しさん2016/12/04(日) 23:08:23.19ID:yVPKVwxZ
>>445
自分でそう書いていながら珍しいものでも見るような事言われてもこっちが戸惑うのだが
0447デフォルトの名無しさん2016/12/04(日) 23:16:25.53ID:PqdPBV8Z
前提条件として数列がどのくらいの規模になるか明かさなかった441が完全に悪い
お前のママじゃねえんだよカス
次は気をつけるか今すぐ死ねよ
0448デフォルトの名無しさん2016/12/04(日) 23:30:50.69ID:iVFW+LnC
>>447
おまえ超初心者相手になんだその物言い
顧客相手に要件定義が足りなかったらそう言うのかてめえは
わからなきゃ質問しろって何度言えばわかるだ?
0449デフォルトの名無しさん2016/12/04(日) 23:54:07.87ID:3HADjSyZ
どこの田舎から来たんだよ?
0450デフォルトの名無しさん2016/12/05(月) 00:05:04.73ID:x3Qm2Sdl
単に察する能力が乏しいだけでは
0451デフォルトの名無しさん2016/12/05(月) 06:20:09.49ID:R/lrPaR1
>>441 の疑問点は結局何なの。
0452デフォルトの名無しさん2016/12/05(月) 07:15:42.38ID:8RyC80/c
>441
ほとんどの要素が0で、そうでないのが少しあるリストの場合、(たとえば、動的計画法(DP)で、dpテーブルを初期化するときとか)
a=[0]*1000
a[0]=1
a[-1]=2
のように、ゼロだけのリストを作ってから、非ゼロ要素を個別に設定する方法もあるよ。

さらに、要素数が100万超えていて、非ゼロが1000程度とかなら、辞書を使うかな。
collections.defaultdict(int) とかなら、初回使用時の値がゼロとして扱える。
numpyとか使えば、疎行列のライブラリもあると思う。
0453デフォルトの名無しさん2016/12/05(月) 07:26:16.87ID:RfiNzCiI
[1, *itertools.repeat(0, 10), 2]
0454デフォルトの名無しさん2016/12/05(月) 11:02:39.39ID:YwBftIqj
[1,1]の書き方と[1]+[1]の書き方は>>441で既に周知で他に書き方を聞いてるのに
そこで>>442を書く人が職場にいたら無視してる
0455デフォルトの名無しさん2016/12/05(月) 11:10:16.32ID:Y+KsRKI6
>>454
それが普通
0456デフォルトの名無しさん2016/12/05(月) 11:38:20.02ID:bmyGiWQE
[1, *[0] * 10 ,2]
0457デフォルトの名無しさん2016/12/05(月) 12:27:54.10ID:+FWd7nuq
>>454
俺ははこういうルビイストみたいな厨二質問する人が職場にいたらクビにしてる
0458デフォルトの名無しさん2016/12/05(月) 15:31:08.70ID:dF177W8B
>>441
[0 if 0<_<4 else 2 if _==4 else 1 for _ in range(5)]
0459デフォルトの名無しさん2016/12/05(月) 16:56:54.49ID:aWpWVW8r
すまんがこれ実行できる人いる?
プログラムのプの字もわからないからこのコードがいまだに使えるのかどうかもわからない
https://gist.github.com/staybuzz/ca935bc22350019d9911
0460デフォルトの名無しさん2016/12/05(月) 17:37:02.69ID:Ifet5byM
じゃあプログラミングを学べよ
4ねクズ
0461デフォルトの名無しさん2016/12/05(月) 23:01:39.11ID:pSDwKct5
テレビ東京のサイトから、動画をDLしたいのか?

仕様がきっちりしているなら、Ruby, Anemone とかで作れる。
プログラム言語でなくても、Wget だけで、DLできるかも

>>459
Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例、
佐々木拓郎・るびきち、2014
0462デフォルトの名無しさん2016/12/06(火) 00:03:18.83ID:BJ+E4eRR
>>461
あなたキモ過ぎます
0463デフォルトの名無しさん2016/12/06(火) 08:37:37.75ID:HUIDfPBe
WindowsでもiPhoneでもAndroidでも動くWEBスクレイピングPythonスクリプト書こうと思ったら
Pure Pythonなライブラリしか使えなくてrequests+BeautifulSoupでゴリゴリ書くの?
0464デフォルトの名無しさん2016/12/06(火) 10:06:33.43ID:BZKWUFE6
curl
0465デフォルトの名無しさん2016/12/06(火) 12:41:26.78ID:AKBojLeG
スマホやタブレットでやろうとか言う考えが既に十分愚かだから
愚直にやれよ文字通り
0466デフォルトの名無しさん2016/12/06(火) 17:01:36.53ID:M7LAmMkO
>>463
iphoneやandroidの実行環境が何なのかわからんけど、概ねその通り
ライブラリは好きなの使えばいいんでない?
0467デフォルトの名無しさん2016/12/06(火) 18:37:11.21ID:O55+7qyI
thx愚直にやる
0468デフォルトの名無しさん2016/12/06(火) 20:53:55.88ID:itdtPWK3
classについて質問です。
classは自分でオブジェクト+メソッド群の形を作ることができる認識であってますか?

class Test:
def __init__(self):
self.h = "hello"
self.w = "world"
def hello(s):
print(s.h)
print(s.w)

s = Test()
s.hello()

こんな感じの構造を作れますよね。
Cで言えば構造体みたいな感じなのでしょうか…
0469デフォルトの名無しさん2016/12/06(火) 20:54:32.95ID:itdtPWK3
>>468
インデントがおかしくなっちゃいました。許しください
0470デフォルトの名無しさん2016/12/06(火) 21:33:05.13ID:r0hSL9Mg
Pythonのインデントは絶対です
許しません
0471デフォルトの名無しさん2016/12/06(火) 21:42:44.59ID:uUd6ba73
クラスのメソッドの第一引数は、self にするのが慣例。
0472デフォルトの名無しさん2016/12/07(水) 01:40:23.76ID:05n7PnOC
75分5秒や140分05秒を表した下記文字列を秒に変換するにはどうしたら良いでしょうか?

a = "75:05"
b = "140:05"

下記で変換しようとしましたが、60分を超える時間だとエラーになりました。。
datetime.datetime.strptime("1970-1-1 9:" + a, '%Y-%m-%d %H:%M:%S').timestamp()
04734722016/12/07(水) 01:44:06.51ID:05n7PnOC
コロンでsplitして分を60掛ければ無理やり変換できますが、もうちょっとスマートな方法がないかな?と思いました。
0474デフォルトの名無しさん2016/12/07(水) 01:59:57.97ID:05n7PnOC
あ、 >>472 も全然スマートじゃないですが笑
0475デフォルトの名無しさん2016/12/07(水) 02:23:56.57ID:kP34iK8E
時刻でなく、時間を扱うのなら、timedeltaの方が適していると思う。
けど、splitして60倍して足す方が単純でいいような気がする。
0476デフォルトの名無しさん2016/12/07(水) 08:27:24.50ID:0fGzq9xA
pip するとVisualstudioがどうたらで成功しないんだが
vs2015入れるといけないんか?
0477デフォルトの名無しさん2016/12/07(水) 09:24:37.38ID:SFFNbj+E
どうたらじゃなくてエラーメッセージを貼れ
0478デフォルトの名無しさん2016/12/07(水) 10:59:43.60ID:XaIc6vSb
【初心者の皆さんにお願い】
トラブルが起きたらOSとPythonのバージョンとエラーを貼りましょう。
何が必要な情報で何が不要な情報かを判断するのは回答者です。
ご自身で情報を仕分けせずにありのままに情報を提供してください。
0479デフォルトの名無しさん2016/12/07(水) 11:00:15.79ID:XaIc6vSb
追記
ライブラリのトラブルはライブラリのバージョンも貼りましょう。
0480デフォルトの名無しさん2016/12/07(水) 12:33:25.79ID:mSlj6y9t
>>468
CでPyObject使うと良く理解出来る
0481一時的なコテハン ◆DZvVA9hOe. 2016/12/07(水) 18:24:09.21ID:u5hrxlot
Pythonのtextwrap.wrap()が日本語で崩れる問題
http://www.freia.jp/taka/blog/python-textwrap-with-japanese/index.html

上記の使用方法が分かりません

やったことは
---
# -*- coding: utf-8 -*-
import sys
import textwrap
import unicodedata
from itertools import groupby

#copy from docutils
east_asian_widths = {'W': 2, # Wide
---
以下を呼び出し元の test.py ファイルと同じディレクトリに
TextWrapper.py として保存し

test.py を以下のような感じでやってみましたが何も良くわかっていません
どのようにすればよいのでしょうか?
http://ideone.com/FI8n7o

日本語を指定の文字数で改行できれば別の方法でも構わないです

環境は
Windows7
Python 2.7.12
Pycharm Community Edition 2016.3
です
0482デフォルトの名無しさん2016/12/07(水) 19:22:21.00ID:GdRWJ2Ia
ほんとうに文字数だけでいいなら1文字ずつ
unicodedata.east_asian_width()
で文字幅(返り値はヒントなので何文字分とするかはじぶんで決める)を足してって
指定の文字数を超えそうになったら改行する。

http://www.nltk.org/book-jp/ch12.html
カッコイイのはココとかを参考にわかち書きしてから
単語か文節単位で文字幅を判定してく。
0483一時的なコテハン ◆DZvVA9hOe. 2016/12/07(水) 20:22:31.30ID:u5hrxlot
>>482
ありがとうございます
とりあえず日本語を指定の文字数で改行できました
http://ideone.com/Zjq4fc
助かりました

今回はこれで全然OKなんですが後学のためにも
> Pythonのtextwrap.wrap()が日本語で崩れる問題
> http://www.freia.jp/taka/blog/python-textwrap-with-japanese/index.html
の利用方法をどなたかご教示いただければ幸いです
0484デフォルトの名無しさん2016/12/07(水) 20:27:34.62ID:dU/UItOg
>>482
素晴らしいですねこういう質問の仕方が良いです
初心者の鏡です
04854722016/12/07(水) 23:25:58.77ID:7VkkQFGv
>>475

splitがシンプルなんですね。
そちらで対応したいと思います。ありがとうございました。
0486デフォルトの名無しさん2016/12/08(木) 19:36:51.45ID:Tsl7hmvI
ド級の素人です。

同じ構造の数十ものURL(末尾に足し算で増えていく数字があるとかの規則性は一切なし)から一度に特定部分の数字をスクレイピングするのにはどうすればいいでしょうか。
調べ方が悪いのかこういうピンポイントなやり方が出てこなくて困り果ててます。
0487デフォルトの名無しさん2016/12/08(木) 19:57:39.18ID:N9SPSSYh
>>486
スクレイピングとあるけどURL自体の取得はできてるん?
URLを文字列として取得できているなら特定部分の抽出は
reモジュールのsearch()かその仲間でできるけども
どこで困ってるかよくわからん
複数のURLをどう保持して処理するのかともとれるし
0488デフォルトの名無しさん2016/12/08(木) 19:58:45.83ID:pECHVU6F
>486
例を示してほしい。
サンプルの入力と、期待する出力のペアで。
0489デフォルトの名無しさん2016/12/08(木) 20:04:18.31ID:Tsl7hmvI
>>487
>>488
URLはシコシコ取得しようと思っています。
例ですが、大元となるのがこのURLで
http://www.oddsportal.com/tennis/australia/atp-australian-open/results/
そこに
http://www.oddsportal.com/tennis/australia/atp-australian-open/djokovic-novak-murray-andy-4Ip7iVkT/
や
http://www.oddsportal.com/tennis/australia/atp-australian-open/raonic-milos-murray-andy-0fidkqET/
といった感じに枝分かれ的に数十のURLがある感じです。
枝分かれ先の特定部分の数字をスクレイピングしたいという目的なんですが、数十回コードを繰り返し動かすやり方しか想像できなくて
他にもっとスマートなやり方はないものかと思ってました。
0490デフォルトの名無しさん2016/12/08(木) 20:10:42.29ID:+5m1wjwL
数十のurlがあったら数十回コードを繰り返せばいいじゃないか
それこそスマートというものだ
無駄にスマートなやり方を追い求める姿勢は非常にヤボったい
0491デフォルトの名無しさん2016/12/08(木) 20:24:31.34ID:Tsl7hmvI
>>490
VBAでいうところのfor〜next的なやり方ができればなあと思いまして。
大量のURLを貼り付けてからコードを実行させたら自動的に順番にスクレイピングしていってくれるようなイメージの。
0492デフォルトの名無しさん2016/12/08(木) 20:50:31.99ID:pECHVU6F
>489
その例だと、特定部分の数字って、どれのことなの?
理解が遅くて済まない。。
0493デフォルトの名無しさん2016/12/08(木) 21:01:18.37ID:Tsl7hmvI
>>492
いえいえ、言うべきでした。averageという列にある三つの数字です。
小数点以下2位までの数字二つと%表記の数字一つの合計三つです。
0494デフォルトの名無しさん2016/12/08(木) 21:42:36.71ID:7lL759m8
pythonのスクレイピングではlxmlやPyQueryの例を検索してみては

averageはこの部分ですね。
<tr class="aver"><td class="name"><strong>Average</strong></td>
<td class="right">1.33</td><td class="right">3.39</td>
<td class=" center no-border-right-average">95.5%</td><td class="check"></td></tr>
0495デフォルトの名無しさん2016/12/08(木) 21:46:07.19ID:pECHVU6F
>493
ようやく特定の場所の数字が何か理解できました。

urlをしこしこ取得するというのがまだ分からないのですが、
手作業かブログラムかで取得したurlを1行1urlに書き出したファイルがあるとすれば、
そのファイルから1行読み込んでurlを取得し、スクレイピングする関数(urlの内容を読み込んで、正規表現でマッチングして、みたいなことをする)にそのurlを渡して、3つの数値を得て、これをリストに追加していく、という処理をすれば良いのだと思います。
すでにある回答とほとんど同じですんません。
0496デフォルトの名無しさん2016/12/08(木) 23:25:57.79ID:SEkB2Ywy
oddsportal github
でぐぐればハッピー
0497デフォルトの名無しさん2016/12/08(木) 23:26:59.54ID:Ayid3Uvv
〜/results/ の、HTMLの中には、
〜/djokovic-novak-murray-andy-4Ip7iVkT/
〜/raonic-milos-murray-andy-0fidkqET/ などは、出てこない

それらを、jsonp で取得しているから、ブラウザ操作が必要。
Capybara なら、Capybara-webkit, Poltergeist(PhantomJS), Selenium あたり

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

君は初心者かい?
ajax とか使っているのを、初心者がページを分析して、クロールするのは無理
0498デフォルトの名無しさん2016/12/09(金) 00:17:54.45ID:4iZItf6M
>>497
るびきち?
0499デフォルトの名無しさん2016/12/09(金) 02:35:59.93ID:nOVhwAKx
下記で、最初のカギ括弧内のスラッシュの位置が違うだけで正規表現がマッチしたりしなかったりするのですが、なぜでしょうか?
スラッシュは特殊文字でもないと思うのですが。。

>>> a="2016-10-12"
>>> re.search(r"16(?:[ \.-/][0-3]|[0-3])[0-9]", a) →�@マッチしない
>>> re.search(r"16(?:[/ \.-][0-3]|[0-3])[0-9]", a) →�Aマッチする
<_sre.SRE_Match object; span=(2, 7), match='16-10'>


また、下記のような日付にマッチする正規表現を書きたいのですが、どのように書けばよいでしょうか?
"160912"
"16-09-12"
"16-9-12"
"16.09.12"
"16.9.1"
"16/09/12"
"16/10/6"
"16 09 12"
05004992016/12/09(金) 02:39:16.21ID:nOVhwAKx
あと、

"2016ほにゃらら20160912" の "20160912" にもマッチさせたいです。
0501デフォルトの名無しさん2016/12/09(金) 04:21:53.69ID:8sRVu5b5
>>491
> VBAでいうところのfor〜next的なやり方ができればなあと思いまして。
for文を書くと良いんじゃないの。
というか、他言語で書けるならそれを貼れば話が早いような。
0502デフォルトの名無しさん2016/12/09(金) 09:54:13.77ID:f5GT3H9L
>>499
一応無理矢理拾えるが、完全では無いと思う。桁数が揃ってないのは難しいんじゃないかな。
>>500のパターンが無ければ一つのパターンでいけるが、それも完璧とは言えないと思う。
[12][09]\d{2}[01]?[1-9][01]?[1-9]|\d{2}[01]\d[01]\d|\d{2}[ \-\./][01]?\d[ \-\./][01]?\d

カギ括弧内のスラッシュ云々に関しては、
スラッシュの問題ではなくハイフンをエスケープしてないからだろ。
0503デフォルトの名無しさん2016/12/09(金) 09:55:29.50ID:f5GT3H9L
違った。こっちに修正。
[12][09]\d{2}[01]?\d[01]?\d|\d{2}[01]\d[01]\d|\d{2}[ \-\./][01]?\d[ \-\./][01]?\d
0504デフォルトの名無しさん2016/12/09(金) 10:12:25.70ID:f5GT3H9L
まだおかしかったわ。
[12][09]\d{2}[01]?\d[0-3]?\d|\d{2}[01]\d[0-3]\d|\d{2}[ \-\./][01]?\d[ \-\./][0-3]?\d
0505デフォルトの名無しさん2016/12/09(金) 11:36:17.31ID:vb1+ZGNO
r'(?x) (?:20)?\d\d ( (?: [\-\./ ] \d{1,2} ){2} | \d{4} )'

re.Xフラグで空白いれられるよ
0506デフォルトの名無しさん2016/12/09(金) 13:05:37.65ID:CLppIZfJ
>>499
> スラッシュは特殊文字でもないと思うのですが。。
スラッシュじゃなくてハイフン "-" が特殊文字になってる
[0-3] とか書くと [0123] と解釈されるように [\.-/] がピリオドとスラッシュに解釈されてる
マッチする方はハイフンが最後の文字なのでそう言う解釈をされずにハイフンのまま残るのでマッチする
なので普通にハイフンをエスケープすればいい
re.search(r"16(?:[ \.\-/][0-3]|[0-3])[0-9]", a)
0507デフォルトの名無しさん2016/12/09(金) 18:29:52.30ID:B5HnSzjq
>>499
http://codepad.org/BTjFJw7R
正規表現 後方参照
05084992016/12/10(土) 01:56:21.78ID:qbMImXsp
>>502-507

色々とコメントありがとうございます。
所望の動作を確認できました。

正規表現は奥が深い。。

-は自分が書き込んだレスにも使ってるのに何で気づかなかったんだ。。
確かによく考えたら範囲を表す特殊文字でしたね。

疑問も解決しましたありがとうございました。
0509デフォルトの名無しさん2016/12/11(日) 21:29:19.09ID:F6nkvz0S
シュミレーション中のプログラムの変数(スピードや設定)を、プログラム実行中に変えようとして、クラス継承したGuiのクラスを作成してスライダーなどを配置して変数の値を変えようとしたのですが、他のクラスの変数を変えられません。
どうすればいいですか。またはもっとスマートな方法がありますか?
0510デフォルトの名無しさん2016/12/11(日) 23:25:04.89ID:BA+Tsrf4
趣味
0511デフォルトの名無しさん2016/12/12(月) 13:16:01.76ID:QOIKJDhs
Pythonには、プライベートメンバーは無いから、
クラス外からでも、メンバーにアクセスできるはず

ただ、__ アンダースコア2つで始まり、
末尾がアンダースコア無しか、アンダースコア1つだけの名前を付けると、
擬似的にプライベートメンバーとなり、クラス外からアクセスできなくなる

自動的に、メンバー名に接頭辞「_クラス名」を付けられて、変えられてしまう

__a → _クラス名__a
__a_ → _クラス名__a_

__a__ ただし、これはアクセスできる
0512デフォルトの名無しさん2016/12/12(月) 14:38:48.33ID:tdNqUxnO
ソースのないクラスでも
そのクラスを継承したクラスからは
__メンバにアクセス可能
0513デフォルトの名無しさん2016/12/14(水) 14:17:45.10ID:CxZIUsQo
質問です。
あるファイルの内容が変更された場合にあるプログラムを実行したいと考えています。この様な仕組みをpythonで実装することは可能ですか?モジュールとかあれば教えていただきたいです
0514デフォルトの名無しさん2016/12/14(水) 14:53:25.45ID:UzzFPJML
OSは?
0515デフォルトの名無しさん2016/12/14(水) 16:13:50.19ID:XMsUlyB4
pypiでfile watchって検索して何個か見たうちだと
watchdogがマルチOS対応で頑張ってるかも。
0516デフォルトの名無しさん2016/12/15(木) 14:01:24.44ID:IjrcUcQd
>>514
macOS X sierra
0517デフォルトの名無しさん2016/12/15(木) 14:06:10.39ID:IjrcUcQd
>>514
macOS X sierraです。
pythonは3系使ってます
0518デフォルトの名無しさん2016/12/15(木) 23:21:07.20ID:YF4Jw/kg
os聞いてるんじゃなくて、pythonのosモジュール使ったらどうかって言ってるんじゃないかな?
0519デフォルトの名無しさん2016/12/15(木) 23:52:45.77ID:37JNdhcM
それなら小文字で書くだろ
0520デフォルトの名無しさん2016/12/16(金) 13:15:40.33ID:rdfn5HPf
TwitterAPI使ってツイートを取得するまではできました。
で、日付が「Tue Dec 03 15:52:27 +0000 2013」って文字列になってるのをdatetimeに変換したい
普通に「2016/10/30 01:02:03」とかをstrptimeとかで変換するのは例があるけど、Decとかを取得する例が見当たらない。
標準ではできないんでしょうか?
0521デフォルトの名無しさん2016/12/16(金) 13:28:39.19ID:JLSyjXhm
mktime
0522デフォルトの名無しさん2016/12/16(金) 13:42:32.64ID:JLSyjXhm
'%a %b %d %H:%M:%S %Y'
0523デフォルトの名無しさん2016/12/16(金) 14:09:19.20ID:rdfn5HPf
"Tue Dec 03 15:52:27 +0000 2013" の "+0000"の部分に相当するフォーマット(%なんとかってやつ)がわからなくて、無理矢理削ることで取りこめた

str1 = tweet['created_at'].replace(' +0000','')
stm = time.strptime(str1,"%a %b %d %H:%M:%S %Y")
print ('created_at: {0:02d}{1:02d}{2:02d}{3:02d}{4:02d}{5:02d}'.format(stm.tm_year, stm.tm_mon, stm.tm_mday, stm.tm_hour, stm.tm_min, stm.tm_sec))

なんかダサダサなんだけどこれで実用には困らないのでヨシとするけど、実際+0900とかになった時に日本時間にスマートに変換する方法ってあるのかな?
0524デフォルトの名無しさん2016/12/16(金) 14:13:49.61ID:n8JQ6xp/
%z
0525デフォルトの名無しさん2016/12/16(金) 14:34:38.92ID:rdfn5HPf
>>522 >>524

str1 = tweet['created_at']
stm = time.strptime(str1,"%a %b %d %H:%M:%S %z %Y")

で取りこめた。ありがとう
0526デフォルトの名無しさん2016/12/16(金) 14:37:19.57ID:JLSyjXhm
どんな糞サイト参考にしたんだ
0527デフォルトの名無しさん2016/12/16(金) 14:53:17.95ID:rdfn5HPf
>>526
http://docs.python.jp/2/library/time.html#time.strftime

小文字の%zが乗ってなかったんだよう(´;ω;`)
0528デフォルトの名無しさん2016/12/16(金) 15:24:47.83ID:wweMYKJl
>>527
そらPython2では未実装だから、それと解釈formatにもディレクティブだけでなく固定文字列が使える
タイムゾーンが固定ならstrftimeのサンプルコードのように+0000で置換せずともスルー出来る
0529デフォルトの名無しさん2016/12/16(金) 15:37:29.96ID:n8JQ6xp/
>>527
こっちは %z 載ってるな
http://docs.python.jp/2/library/datetime.html
0530デフォルトの名無しさん2016/12/16(金) 15:42:52.80ID:JLSyjXhm
python.jpは糞
0531デフォルトの名無しさん2016/12/16(金) 15:45:33.41ID:n8JQ6xp/
>>527
そこの一番下の注記に小さい字でこっそり %z 出てくるな
0532デフォルトの名無しさん2016/12/16(金) 16:31:02.68ID:HmHblg1G
3使ってるのに2のドキュソ読むDQN?
0533デフォルトの名無しさん2016/12/16(金) 18:12:30.72ID:JvjrMfXm
python.jpは嘘書いてあるサイト
0534デフォルトの名無しさん2016/12/16(金) 23:58:23.73ID:HNJ5uGit
いい加減2系のサイト全部潰せよ
害悪だわ
0535デフォルトの名無しさん2016/12/17(土) 02:18:05.37ID:yZ5nf+UR
入門python3を勉強中なのですがリストやタプルやキーがどういうものかは分かるのですがどういう場面で利用すればいいのかイマイチ分かりません。
あとコンソールで長めの条件処理をしてタイプミスをするとエラーが出て最初から打ち込み直すのがめんどくさいのですが処理の途中から再開することは出来ませんか?
人工知能に興味があるので勉強したいのですがオススメの書籍やサイトがあれば教えて欲しいです。
長文失礼しましたm(_ _)m
0536デフォルトの名無しさん2016/12/17(土) 02:21:38.09ID:yZ5nf+UR
書き忘れてたのですがcとjavaの入門書を終わらせた程度の知識量です
0537デフォルトの名無しさん2016/12/17(土) 05:28:29.32ID:dVbx5Emw
標準のREPLでも矢印キーの上下で履歴を出せるよ
それが面倒なほど長いコードならソースファイルに書いたほうがいい
0538デフォルトの名無しさん2016/12/17(土) 16:18:41.20ID:yZ5nf+UR
参考書が全てコンソールで処理していたのでコンソールで処理するプログラミング言語だと思ってました(*_*)
0539デフォルトの名無しさん2016/12/17(土) 16:26:54.76ID:HUzLix+O
池沼かな
0540デフォルトの名無しさん2016/12/17(土) 16:37:45.58ID:a9hyyPvt
>>528
%z は2でも使える
0541デフォルトの名無しさん2016/12/17(土) 20:18:11.69ID:MqT6hQEk
>>535
readline(やその互換ライブラリ)をリンクしてPythonをビルドしていないと入力履歴は出てこない
普通はされているはずだが、(pyenvなどを含め)自前でビルドするとリンクされてないかも
0542デフォルトの名無しさん2016/12/18(日) 01:08:52.79ID:/J15bt0X
>>540
いや使える使えないというか、レスやドキュメントが示す様に実装に依るのよ
仕様に沿わなかったり、strftimeでは可能でもstrptimeでは無理だったり
若干異なるがこれもプラットフォーム依存ということになるのかな
0543デフォルトの名無しさん2016/12/18(日) 08:45:37.19ID:YpOtQPlP
チュートリアル読んでてサンプルの右上の >>> が
ただの飾りじゃないことに今更気がついた

コピペで一々消してた無駄な努力
ひょっとして他のwebサイトでもそうだったのと思うと泣ける ……orz

チュートリアルを”読む”ために知っとくと良いこと他にありませんか?
0544デフォルトの名無しさん2016/12/18(日) 09:33:28.02ID:Q2gkICyB
専門用語は一々意味を調べなくても後で出てくるから気にするな
一度に全部理解しようと頑張るのはよくない、分からない箇所は飛ばして次に進め
0545デフォルトの名無しさん2016/12/18(日) 10:27:41.81ID:YpOtQPlP
ありがとうございます

webにいちいちアクセスして検索するのもアレな気がして
chmヘルプだと「キーワード」での検索やりやすいけど >>> が使えない
ダウンロードしたローカルのhtmlファイルドキュメントを直接chromeで開くと、
>>> が使えるけどchrome拡張機能のAutoCopyが選択するだけではコピーしてくれない
じゃあ簡易なhttpサーバー探してみると、他用意しなくてもpythonだけでいけるとな、素晴らしい!
http://localhost:8000/ だとこれまた chromeの拡張機能のAutoCopyが自動的に
コピーしてくれない、http://127.0.0.1:8000/ にしてようやくサクッと
ローカルhtmlのチュートリアルからコピー&ペーストできるようになった

日記でごめんなさい、こういうのが3分ぐらいで解決できるようになりたい……
0546デフォルトの名無しさん2016/12/18(日) 10:39:50.44ID:v8zNK0rs
わからない単語をわからないままにしておくと
いつか必ず壁にぶち当たってニッチもサッチもいかなくなるぞ
ググれば済む話なんだから、ちゃんとググれ
0547デフォルトの名無しさん2016/12/18(日) 15:31:46.80ID:j9CB/mK5
Python 2.7最後のリリース2.7.13キタ━━━━(゚∀゚)━━━━!!
Python 3.6のリリース遅れキタ━━━━(゚∀゚)━━━━!!
0548デフォルトの名無しさん2016/12/18(日) 16:01:12.43ID:ZqV+jY/A
13縁起悪い
0549デフォルトの名無しさん2016/12/18(日) 16:04:13.44ID:SwNV+0uU
requestモジュールはurlrib2でできることはだいたいできますか?
0550デフォルトの名無しさん2016/12/18(日) 16:04:46.23ID:v8zNK0rs
早く2系の老害どもは首括って死ねや
0551デフォルトの名無しさん2016/12/18(日) 16:08:32.77ID:ZqV+jY/A
shiftjis使い続けるMSよりはマシ
0552デフォルトの名無しさん2016/12/18(日) 16:13:59.75ID:v8zNK0rs
>>551
鼻くそvs耳くその話してるんじゃあらへんぞ糞が
0553デフォルトの名無しさん2016/12/19(月) 20:28:03.25ID:FC5NieH9
pythonでa.pyというスクリプトを書きました。
定期的に実行させようと思って、b.sh というスクリプトを書いて、実行させようとしたところ
sh b.sh というコマンドでは動くのですが、cronで定時実行するファイルだけ上手く動きません。
どうしてでしょうか?
0554デフォルトの名無しさん2016/12/19(月) 20:34:08.50ID:L2gIhLeK
どうしてでしょうね
では次の方〜
0555デフォルトの名無しさん2016/12/19(月) 20:47:59.80ID:Ikqb8VJo
>553
それはpythonに固有の問題なのか、他のスクリプト言語でも同じ問題が発生するかを調べると良いかな
0556デフォルトの名無しさん2016/12/19(月) 21:25:56.95ID:QAkLXptb
>>553
フルパスで指定していないんじゃない?
あと、cronで、pyを直接動かした方が良いんじゃない?
0557デフォルトの名無しさん2016/12/19(月) 22:07:22.32ID:TWjb/FW7
cron の環境変数は、一般ユーザーよりも少ないから、皆ここでつまずく

cron あるある
0558デフォルトの名無しさん2016/12/19(月) 23:30:25.67ID:32YrbjET
>>555
Pythonの問題じゃなくcronの問題って感じだよな
0559デフォルトの名無しさん2016/12/19(月) 23:58:28.88ID:TWjb/FW7
一般ユーザー・cron の、PATH を見比べてみ

漏れは、WindowsのPATH を見て、あまりの多さに愕然としたw
0560デフォルトの名無しさん2016/12/20(火) 03:38:25.07ID:z7EfWezc
Box2dをwindows7のpytho3.5の環境に入れようとして、swigも準備してVC++のビルドツールもインストールして
python setup.py buildをしたら下のようにエラーになりました。解決方法を教えて下さい。

Using setuptools (version 20.3).
running build
running build_py
copying library\Box2D\__init__.py -> build\lib.win-amd64-2.7\Box2D
running build_ext
building 'Box2D._Box2D' extension
swigging Box2D\Box2D.i to Box2D\Box2D_wrap.cpp
swig.exe -python -c++ -IBox2D -small -O -includeall -ignoremissing -w201 -global
s b2Globals -outdir library\Box2D -keyword -w511 -D_SWIG_KWARGS -o Box2D\Box2D_w
rap.cpp Box2D\Box2D.i
Box2D\Box2D.i(44) : Error: Unknown directive '%exception'.
error: command 'swig.exe' failed with exit status 1
0561デフォルトの名無しさん2016/12/20(火) 11:21:22.71ID:TiMuqP/+
便乗してレポート出せば?
https://github.com/pybox2d/pybox2d/issues/79
0562デフォルトの名無しさん2016/12/20(火) 12:51:09.50ID:lAXr92yw
Error: Unknown directive '%exception'.

バージョン違いじゃね
0563デフォルトの名無しさん2016/12/20(火) 15:13:28.09ID:z7EfWezc
>>562
なんのバージョンですか?
0564デフォルトの名無しさん2016/12/20(火) 16:03:55.99ID:Bcx0BlfE
よくよめよカス
copying library\Box2D\__init__.py -> build\lib.win-amd64-2.7\Box2D
0565デフォルトの名無しさん2016/12/20(火) 17:19:17.45ID:JdUrRI4u
swigがエラー吐いてるんだからswigのバージョンが違うんじゃない?

http://www.swig.org/Doc1.3/Customization.html#features
と書いてあるので、俺ならBox2D.iの44行目の%exceptionを%feature("except")に書き換えちゃうけどね
0566デフォルトの名無しさん2016/12/20(火) 17:51:54.22ID:lAXr92yw
こうですか?
#define %exception %feature("except")
0567デフォルトの名無しさん2016/12/20(火) 21:47:14.67ID:rC3WPE7Y
NumPyのOpenCL版(CUDA版で言うPyCUみたいなの)ってないの?
名前だけならPyCLが似てるものの、NumPyと互換性がなくて困るな
0568デフォルトの名無しさん2016/12/21(水) 01:01:42.16ID:m7iU5mK0
>>564
それの2.7ってPython2.7だよな。これだとあいやーになるそうだな。
いまでも、対応しているのはPython2だけで,Python3には対応していないもの
って多いのかな?
0569デフォルトの名無しさん2016/12/21(水) 01:17:30.60ID:KDR4mUhA
Python3 が出てから、もう6年経つけど、
CentOS は未だに、2系

システムに、3系を使っているのは、Ubuntu ぐらいかな?
0570デフォルトの名無しさん2016/12/21(水) 01:25:14.96ID:eOqinQhl
>>564
>>565
>>568
書き換えたら下のエラーになりました。前のやつは2.7でビルドしたやつでした。どっちの環境でやってもこうなります。
Using setuptools (version 32.1.2).
running build
running build_py
copying library\Box2D\__init__.py -> build\lib.win-amd64-3.5\Box2D
running build_ext
building 'Box2D._Box2D' extension
swigging Box2D\Box2D.i to Box2D\Box2D_wrap.cpp
D:\MinGW\msys\1.0\bin\swig.exe -python -c++ -IBox2D -small -O -includeall -ignor
emissing -w201 -globals b2Globals -outdir library\Box2D -keyword -w511 -D_SWIG_K
WARGS -o Box2D\Box2D_wrap.cpp Box2D\Box2D.i
Box2D\Box2D_dir.i(52) : Error: Unknown directive '%pythoncode'.
error: command 'swig.exe' failed with exit status 1
0571デフォルトの名無しさん2016/12/21(水) 01:42:18.45ID:KDR4mUhA
Unknown directive '%pythoncode'

こんな指示あるか?
特殊なコンパイラ・リンカ用の指示を、勝手に作っとるんとちゃうんか?

これは、何の言語のマクロやねん?
0572デフォルトの名無しさん2016/12/21(水) 01:55:10.72ID:KDR4mUhA
Unknown directive '%pythoncode'

古いバージョンでは、この書き方は出来ないとか、
バージョンによって書き方が変わったのかも?

対応表を探して、記述を変えればいい。
誰かが、そういう対応表・パッチを作っているかも
0573デフォルトの名無しさん2016/12/21(水) 06:45:03.87ID:BI3cl+Z2
>>570
http://www.math.uiuc.edu/~gfrancis/illimath/windows/aszgard_mini/bin/SWIG-1.3.21/Doc/Manual/Python.html#n42

てか少しは調べろよ
swigを最新のソースからビルドして死ね
0574デフォルトの名無しさん2016/12/21(水) 08:47:35.76ID:0U2TjawX
超初心者がswigとか
ランニング初心者がいきなりハーフマラソンにでも出る感じ
0575デフォルトの名無しさん2016/12/21(水) 12:06:42.78ID:hWdBWEeD
3.4から使えるpathlibってos.path使うより何のメリットがありますか?
0576デフォルトの名無しさん2016/12/21(水) 16:40:05.81ID:DcoyIfEP
クラスの設計としてファイルパスに関する操作を揃えてある
文字列のパスに対する関数を複数のモジュールから探すより分かりやすい(はず)

ちなみに3.4のpathlibはいろいろ足りなくてお荷物
使うなら他の標準ライブラリと連携が取れるようになった3.6がいい
0577デフォルトの名無しさん2016/12/21(水) 17:56:42.36ID:WQL39TxQ
>使うなら他の標準ライブラリと連携が取れるようになった3.6がいい

これ何のことか詳しくおねがいします
0578デフォルトの名無しさん2016/12/21(水) 18:41:49.57ID:hSbEZ7R1
>>577
http://methane.hatenablog.jp/entry/2016-09-12/Python3.6b1
http://qiita.com/ksato9700/items/ed839a6db6a671fd31e6#pep-519-ファイルシステムパスプロトコルの追加
0579デフォルトの名無しさん2016/12/21(水) 19:31:11.48ID:eOqinQhl
>>573
最新やろ
$ swig -version

SWIG Version 3.0.11

Compiled with g++ [x86_64-w64-mingw32]

Configured options: +pcre

Please see http://www.swig.org for reporting bugs and further information
0580デフォルトの名無しさん2016/12/22(木) 20:21:06.41ID:VT+ud93w
"a" と "b" という2つの文字列があります。これを、
a
b
と表示したいんですけど、print文一回で表示させたいです。
print("a/n", "b")
みたいな感じで色々試したんですが、どうもうまくいきません。
list = ["a", "b"]
for i in list:
print(i)
これだと一応できるんですけど、3行も書くのは面倒くさいです。
いい方法があれば教えて欲しいです。
0581デフォルトの名無しさん2016/12/22(木) 20:30:04.27ID:HluHwJIA
python2と3でprintの仕様が大きく違う。どっち?
0582デフォルトの名無しさん2016/12/22(木) 21:43:33.91ID:VT+ud93w
>>581
3です
0583デフォルトの名無しさん2016/12/22(木) 22:22:29.38ID:nyvvUxi3
改行は、/ (スラッシュ)じゃなく、\n (バックスラッシュ)

print ("a\nb")
0584デフォルトの名無しさん2016/12/23(金) 01:32:12.53ID:DGaFHylB
print(a, b, sep='\n')
0585デフォルトの名無しさん2016/12/23(金) 10:58:57.46ID:R9UzcjbD
>>580
好きなの使え
print('a\nb')
[print(x) for x in ['a', 'b']]
print('\n'.join(list('ab')))
print('\n'.join((map(str, ['a', 'b']))))
0586デフォルトの名無しさん2016/12/23(金) 23:38:03.56ID:aZT2jXc2
python 3.6.0リリースキタ━━━━(゚∀゚)━━━━!!
0587デフォルトの名無しさん2016/12/24(土) 00:14:15.26ID:7CGvBM+v
2系老害早く死ね
0588デフォルトの名無しさん2016/12/24(土) 03:46:10.79ID:ieJU0gIE
seleniumのwebdriverで何回も使いまわす時、driver.close()してもう一度立ち上げ直すと非効率的なので、一度立ち上げたdriverを使いまわそうとしています。

try内でget()に失敗した時でも page_sourceが取得出来ているときがあるようなので、
exceptになったときでも、page_sourceに所望のキーワードがあれば、そのまま次の工程に進むようにしたいです。
しかし、使い回したときに取得失敗すると、一つ前に取得した driver.title や driver.page_source が残っているようで、
それに対してチェックするため本当は失敗しているのにスルーされてしまいます。

driver.clear()のようなもので、get()前にクリアできないか調べましたが、見つけられませんでした。
また、driver.title = ""で初期化しようとしましたが、書き込み禁止になっていて出来ませんでした。

何か良い方法は無いでしょうか?

for url in url_list:
 try:
  driver.get(url)
  assert "タイトル" in driver.title

 except:
  if not "キーワード" in driver.page_source:
   print("失敗")
   sys.exit()

参考 → ttp://selenium-python.readthedocs.io/getting-started.html
0589デフォルトの名無しさん2016/12/24(土) 04:17:05.10ID:cv8J899o
リトライする前に無関係&取得に失敗しないURLをゲットしてページ情報を上書きするのはどう?
0590デフォルトの名無しさん2016/12/24(土) 11:15:32.36ID:rUV94gjd
2.7.13が最後のリリースってpython.orgのどっかに書いてあったけど忘れた
どこのページだっけ?
0591デフォルトの名無しさん2016/12/24(土) 11:53:31.84ID:cv8J899o
https://mail.python.org/pipermail/python-dev/2016-December/147026.html
2.7.14 will appear mid-2017.

lastとlatestを間違えただけでしょ
0592デフォルトの名無しさん2016/12/24(土) 11:59:30.98ID:oEu+K97i
PEP 373にPython2.7は2020年までサポートするって書いてあるし
0593デフォルトの名無しさん2016/12/24(土) 12:40:09.03ID:p4lqfCaM
>>591
阿保杉
0594デフォルトの名無しさん2016/12/24(土) 15:38:21.60ID:7CGvBM+v
完全に死んでる2系をサポートする意味とは
0595デフォルトの名無しさん2016/12/24(土) 15:53:58.71ID:2DZ0bV4f
Windows XPのため
0596デフォルトの名無しさん2016/12/24(土) 16:23:06.73ID:VWan/OT6
以前yumのせいって言ってる人を見かけたけど
yumで使うPythonのサポートは個々のディストリビューターの責任なので関係ない
05975882016/12/24(土) 16:51:39.29ID:ieJU0gIE
>>589

やはりスマートにはできそうにないですね。
ご提案の方法を考えてみます。
ありがとうございました。
0598デフォルトの名無しさん2016/12/24(土) 18:18:58.24ID:7CGvBM+v
2系使ってるやつ●したい
0599デフォルトの名無しさん2016/12/24(土) 18:37:17.95ID:jMPy2VNG
おっとCentOSの悪口はそこまでだ
0600デフォルトの名無しさん2016/12/24(土) 18:38:28.17ID:8EM69YXY
Perl 6.00
0601デフォルトの名無しさん2016/12/24(土) 23:16:14.72ID:W+bcnd7b
NumpyもScipyも3.6対応版はまだか
0602デフォルトの名無しさん2016/12/25(日) 08:01:59.70ID:sE0qWZW4
>>601 昨日3.52版で3.6を動かしたら終わっていた。
0603デフォルトの名無しさん2016/12/25(日) 15:11:17.92ID:hrxPaxO/
Perl6ってリリースされてたのか
0604デフォルトの名無しさん2016/12/25(日) 15:21:39.93ID:Iq0CwUQF
pip --no-cache-dir install -I pillow
でPILインストールしようとしたら下のエラーが出てうまくインストールできません
環境はwindows7 pro, Python 3.5.1です
どうやったらインストールできますか?

Command
0605デフォルトの名無しさん2016/12/25(日) 15:22:58.72ID:Iq0CwUQF
Command "c:\users\user\appdata\local\programs\python\python35\python.exe -c "imp
ort setuptools, tokenize;__file__='C:\\Users\\USER\\AppData\\Local\\Temp\\pip-bu
ild-g18cegxr\\pillow\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__f
ile__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record C:\Use
rs\USER\AppData\Local\Temp\pip-rwp9qx8t-record\install-record.txt --single-versi
on-externally-managed --compile" failed with error code 1 in C:\Users\USER\AppDa
ta\Local\Temp\pip-build-g18cegxr\pillow
0606デフォルトの名無しさん2016/12/25(日) 15:29:28.00ID:hrxPaxO/
その下の行が大事
0607デフォルトの名無しさん2016/12/25(日) 15:36:50.81ID:Iq0CwUQF
pipをアップグレードしろってメッセージがあって関係ないと思いながらもアップグレードしたらPILインストールできました
ありがとうございます
0608デフォルトの名無しさん2016/12/25(日) 17:47:51.07ID:pgjJkDdy
webアプリ用の仮想環境作る時ってcondaよりもvirtualenv使った方がいいの?
0609デフォルトの名無しさん2016/12/25(日) 18:37:46.32ID:cCysBQEg
Tornadeってどうなの?
フェイスブックに吸収された。ってところから、動きを見てなくて、今どうなのかと。
0610デフォルトの名無しさん2016/12/25(日) 23:20:15.25ID:lVNNRuPu
>>608
面倒くせえことを考えるな
仮想環境なんていらねえよ
全部メインに突っ込め
0611デフォルトの名無しさん2016/12/25(日) 23:20:43.12ID:lVNNRuPu
>>609
どうなの?githubに置いてあるリポジトリを見れば分かるでしょ
0612デフォルトの名無しさん2016/12/25(日) 23:41:00.05ID:guFZ6uI1
>>608
全部メインも男らしくて悪くないが、仮想環境ならこれからは標準のvenvを使うのが良い
python -m venv [環境の名前]
で使える
0613デフォルトの名無しさん2016/12/26(月) 00:17:34.25ID:IiY/O7tI
pipだのvenvだのcondaだの
なんでpython実行環境はこんなに糞なの
0614デフォルトの名無しさん2016/12/26(月) 00:44:40.05ID:vXnTXx4r
これでもマシな部類よ
0615デフォルトの名無しさん2016/12/26(月) 01:27:39.23ID:xn+GI2l3
結局pipしか使わんな
0616デフォルトの名無しさん2016/12/26(月) 11:03:08.05ID:HAos+tGx
VMにLinux入れて環境まるごと変えるのが一番楽
要するにconda
0617デフォルトの名無しさん2016/12/26(月) 14:14:46.84ID:Z7Ewn8ds
こんな感じにタプルの値変えるのってもっと簡潔にできない?
t = (9, 9, 9)
i, v = 0, 10
l = list(t)
l[i] = v
t = tuple(l)
0618デフォルトの名無しさん2016/12/26(月) 14:39:56.96ID:0/LY2C3Z
namedtupleなら一応イディオムがある

class A(typing.NamedTuple):
 a: int
 b: int
 c: int

t = A(9, 9, 9)
t = t._replace(a=10) # => A(10, 9, 9)
0619デフォルトの名無しさん2016/12/26(月) 14:53:34.47ID:S/Gtv6+F
>>617
t = (10,) + t[1:]
0620デフォルトの名無しさん2016/12/26(月) 14:56:46.66ID:S/Gtv6+F
t = t[:i] + (v,) + t[i+1:]
0621デフォルトの名無しさん2016/12/26(月) 16:27:14.43ID:Z7Ewn8ds
>>618, >>620
namedtupleとかスライスとか忘れてたわ
サンクス
0622デフォルトの名無しさん2016/12/26(月) 21:16:05.11ID:3Rxi6X7Y
回答ありがとうございます
>>610
>>612
メインってシステムの使ってるpythonのことですか?あれはイジりたくないんですよ一回あれいじったせいでシェルのコマンドとかが依存関係で動かなくなってpythonのプログラミングに関しては仮想環境必ず使うようにしてます
0623デフォルトの名無しさん2016/12/26(月) 21:35:37.58ID:HlM0bQ/P
>>616
やっぱりdockerで開発環境作れば仮想環境も要らないんですかね
今まではvenv上にanacondaで仮想環境作ってたんですが
flaskの教本にはappのあるディレクトリに仮想環境作れって書いてあるんです
conda createってanaconda/envs/以下のディレクトリにしか作れなくないですか?
0624デフォルトの名無しさん2016/12/26(月) 22:12:57.90ID:DVLuviOg
AnacondaってWebアプリケーションとか作る奴むけのディストリビューションじゃねーし
Qiitaとかはてブロのくだらねー解説を読む暇があったらAnaconda配布サイトのトップページに書いてある
「Anacondaとは何であるか」をまず読めよ
0625デフォルトの名無しさん2016/12/26(月) 22:18:55.86ID:vXnTXx4r
>>624
いい事言うなあ
0626デフォルトの名無しさん2016/12/26(月) 22:39:39.86ID:vnverrjD
「みんなのPython 第4版、2016」出たよ

前提条件が、データサイエンス用のディストリビューションの、Anaconda になってる

今は、そういう時代か
0627デフォルトの名無しさん2016/12/26(月) 22:50:57.57ID:iQitLSat
DockerってVMwareみたいに仮想マシンでOSが動くん?
0628デフォルトの名無しさん2016/12/26(月) 23:01:45.19ID:HlM0bQ/P
>>627
osまでは仮想化してないですね
ホストのos上で仮想化されたプロセスが動くのでオーバヘッドが少ない
0629デフォルトの名無しさん2016/12/26(月) 23:32:35.79ID:IiY/O7tI
それはどっかなー?
0630デフォルトの名無しさん2016/12/26(月) 23:43:07.04ID:avY7ZxfK
>>624
Quiitaはやっぱり匿名じゃないからpycon出る人とか有名なエンジニアのガチ勢の人もバンバン投稿しててためになりますよ、その分敷居が高いからromるだけだけど
0631デフォルトの名無しさん2016/12/27(火) 05:58:05.04ID:gxzpn3QW
pycon出てたり有名な人が凄いんじゃない
凄い人が「偶に」pycon出たりしてるだけ
出るだけなら誰でも出来る
0632デフォルトの名無しさん2016/12/27(火) 07:27:51.93ID:+jLeLDpc
などと引きこもりの男性は供述しており動機は不明
0633デフォルトの名無しさん2016/12/27(火) 11:54:52.19ID:SnU8fUw4
anaconda入れたらyoutube-dlが動かなくなった
0634デフォルトの名無しさん2016/12/27(火) 12:36:42.93ID:r2i9XHzZ
あんなバカでかいモジュール群を入れる勇気なんてないわ
0635デフォルトの名無しさん2016/12/27(火) 15:00:56.84ID:ov9/Tp6R
>>630-632
恥ずかしくない?
0636デフォルトの名無しさん2016/12/27(火) 23:40:24.38ID:/xLMC5SK
>>633
anacondaを入れる前後の、環境変数PATHを比べてみれば?

端末・コマンドプロンプトで、コマンドを打つとき、
comA
と打つと、環境変数PATHの先頭から、そのコマンドを探すから、PATHの順番が重要。

特にインストール時に、PATHを上書きするアプリには要注意!
PATHの最後に付け足す分には、影響が少ないけど、
PATHの最初に付け足す分には、順番が変わるため、影響が大きい

〜/comA
のように、絶対パスで打つか、

./comA
のように、cd でそのフォルダへ移動してから、相対パスで打てばいい
0637デフォルトの名無しさん2016/12/28(水) 03:05:02.98ID:/QyuGOg8
みんなのパイチンくん、みんなの
0638デフォルトの名無しさん2016/12/28(水) 07:39:42.12ID:ryUIDE8A
んほおおおおパイチンポおいしいのおおおおお
0639デフォルトの名無しさん2016/12/28(水) 11:04:55.28ID:nZM0mCLt
初歩の初歩すぎて申し訳ないのです
paizaのサイトのD004:文字列の結合の問題をやってみたのですが
どうしても自分の書き方だと最後に,が残ってしまい解けません・・・
aaa = int(input())
print ("Hello ",end="")
for i in range(aaa):
bbb = input().rstrip()
print(str(bbb)+"," ,end="")
print(".")
動画学習で覚えた範囲の知識では解けないものなのでしょうか・・・
ググったのですが答えが分かりませんでした
0640デフォルトの名無しさん2016/12/28(水) 11:14:15.44ID:mpY7Qoo3
paizaの規約読んだ?
答えを聞いちゃいけないし解法も書いちゃいけないんだよ
ルールぐらい守ろうな
0641デフォルトの名無しさん2016/12/28(水) 11:37:29.95ID:nZM0mCLt
>>640
すみませんでした・・・。
0642デフォルトの名無しさん2016/12/28(水) 12:27:35.99ID:kFL7wfb2
つ
ま
ん
ね
0643デフォルトの名無しさん2016/12/28(水) 13:04:47.65ID:/YvbcywK
ね
ん
ま
つ
0644デフォルトの名無しさん2016/12/28(水) 13:32:54.23ID:e3rjes2B
やるやん
0645デフォルトの名無しさん2016/12/28(水) 17:37:41.20ID:miFD6FWB
csvで
1,2
2,4
3,1
4,3
5,2
を2列目を元に昇順ソートし、同じ数字がある場合は1列目を元に降順ソートする
3,1
5,2
1,2
4,3
2,4
こうなるソートの仕方を教えてください
0646デフォルトの名無しさん2016/12/28(水) 18:06:19.24ID:45reyBmE
import win32com.client
xl = win32com.client.Dispatch('Excel.Application')
wb = xl.Workbooks.Open(r'c:\temp\a.csv')
xl.Columns('A:B').Sort(xl.Range('B'),1,xl.Range('A'),None,2)
xl.Application.DisplayAlerts = False
wb.SaveAs(r'c:\temp\b.csv')
wb.Close(False)
xl.Application.DisplayAlerts = True
xl.Quit()
0647デフォルトの名無しさん2016/12/28(水) 18:23:22.88ID:45reyBmE
訂正

誤:
xl.Columns('A:B').Sort(xl.Range('B'),1,xl.Range('A'),None,2)

正:
xl.Columns('A:B').Sort(xl.Columns('A'),2)
xl.Columns('A:B').Sort(xl.Columns('B'),1)

2行に分けてくり
0648デフォルトの名無しさん2016/12/28(水) 18:51:29.13ID:miFD6FWB
windowsもってないっすよ先輩><
0649デフォルトの名無しさん2016/12/28(水) 19:56:25.40ID:K8GOrRdv
二次元配列 ソート
で検索して出てこない?
0650デフォルトの名無しさん2016/12/28(水) 20:09:17.37ID:5Jhg3Hqa
import csv
with open('a.csv', 'r', newline='') as f:
 LL = [[int(s) for s in row] for row in csv.reader(f)]
LL.sort(key=lambda L: L[0], reverse=True)
LL.sort(key=lambda L: L[1])
with open('b.csv', 'w', newline='') as f:
 csv.writer(f).writerows(LL)
0651デフォルトの名無しさん2016/12/28(水) 23:05:09.78ID:GO4my3xb
keyに渡してるlambdaがアホすぎやないか
てか新規のコードでlambda使うの止めへん?
0652デフォルトの名無しさん2016/12/28(水) 23:38:54.20ID:h6cUbtbL
Tkinterの情報少なすぎ��
0653デフォルトの名無しさん2016/12/29(木) 00:15:20.95ID:lYx4ATZF
tcl/tkでぐぐれ
0654デフォルトの名無しさん2016/12/29(木) 00:24:08.63ID:rEs3Hlwe
実際tkinterって今は評価どうなの?
0655デフォルトの名無しさん2016/12/29(木) 01:01:51.04ID:lYx4ATZF
癖あるけど割とイケる
0656デフォルトの名無しさん2016/12/29(木) 01:12:39.01ID:ApQi8L2F
pyqtか互換性あるやつのがよくね?
0657デフォルトの名無しさん2016/12/29(木) 01:37:41.20ID:XCdi9TjM
ほぼ標準状態で使えるメリットは大きいんじゃないですかね>tkinter
少し凝ったことやりそうな時はPyQt、PySide、wxPython選ぶけど
ひとまずGUIになってればそれでいい時はtkinterで済ませられないか検討しますね
0658デフォルトの名無しさん2016/12/29(木) 01:39:44.36ID:nwSCSOCj
pythonを10月くらいまで使っていて、そのときはmatplotlibやsympyがimportできてました
今日2ヶ月ぶりにpythonのコードを書いたのですが、matplotlibおよびsympyのimportができなくなっていました
具体的には実行するとImportError: No module named 'matplotlib'と出てしまいます
再インストールしたのですが何も変わりません
解決法を教えてください
0659デフォルトの名無しさん2016/12/29(木) 01:43:04.19ID:nwSCSOCj
追記
インストールはアナコンダを使って、pip install matplotlib-vennも実行しました
0660デフォルトの名無しさん2016/12/29(木) 07:23:06.68ID:OlSnrU7A
なぜ2chにエスパーがいると思ったのか
0661デフォルトの名無しさん2016/12/29(木) 07:30:39.17ID:VeuJGhxe
神を見たことある?

 無い ─┐   ┌───わからない 9%
 11%  │_..-ー''''''l'''''― ..、
     ./   .l,  |     `''-、
   ./     .l  .|       \
   /ゝ、     l. |         ヽ
  ./   .`'-、    l. |           l
 │      ゙''-、 .l,|             l
  |         `'″          |
 │                   ,!
  lインターネットで見た80%   /
  .ヽ                  /
   .\              /
     `'-、              /
       `''ー .......... -‐'″
0662デフォルトの名無しさん2016/12/29(木) 11:51:41.45ID:yRjYoWJx
海老デスシ
0663デフォルトの名無しさん2016/12/29(木) 16:15:48.13ID:Rwn+dOZ6
>>658 俺も chainerとpandasがそう。エロイ人教えて下さい。
0664デフォルトの名無しさん2016/12/29(木) 16:20:48.40ID:lzRGrQwI
いまさっきconda update --allでライブラリアップデートしたら、Navigatorが起動しなくなったorz
誰か解決策終えてくだされ(´;ω;`)ブワッ
0665デフォルトの名無しさん2016/12/29(木) 17:18:36.46ID:3RxWTsXn
初心者はコンダとかアナコンダを使うな4ね
python.orgのバイナリをそのまま使えカス
0666デフォルトの名無しさん2016/12/29(木) 17:32:24.31ID:jjPid1L5
初心者こそanaconda使わないとnumpy使えないじゃん
0667デフォルトの名無しさん2016/12/29(木) 17:43:49.05ID:Rwn+dOZ6
>>666 numpyは pip install numpy して使え。
0668デフォルトの名無しさん2016/12/29(木) 18:24:26.82ID:86JrDskM
>>658
source activate 忘れてるだけだろ
matplotlib インストールした環境じゃないから無いって言われてるだけ
0669デフォルトの名無しさん2016/12/29(木) 18:46:14.29ID:MmIgZFMi
休みに入ったのでハローワールドから始めました
最初はpaizaを利用しても大丈夫ですか?
0670デフォルトの名無しさん2016/12/29(木) 20:21:28.35ID:9C2GgZRw
>>667
Scipyは?
0671デフォルトの名無しさん2016/12/30(金) 00:40:53.47ID:0eCako1D
で、誰も>>664は分からんのか?
雑魚ばっかかここはw
0672デフォルトの名無しさん2016/12/30(金) 00:42:17.92ID:UT/PLZV6
そうだな
ここには雑魚エスパーしかいないな
0673デフォルトの名無しさん2016/12/30(金) 01:06:12.01ID:JD3bi15Y
そんな厨房向けツールなんて使うかよ
0674デフォルトの名無しさん2016/12/30(金) 04:35:32.82ID:JnJ9FLXY
質問が超初心者なのかわからないんですが、
Python3で型やクラス宣言を関数に渡せますよね。これってPython3独自ですか?
たとえば class Aho() があって、def test(aho): aho(); test(Aho); みたいな使いかたです。便利なんですけど、移植性あるのかなぁって。
0675デフォルトの名無しさん2016/12/30(金) 04:40:43.43ID:JnJ9FLXY
>>674の補足コードです。
http://ideone.com/jHUYKo
0676デフォルトの名無しさん2016/12/30(金) 06:40:45.05ID:7N499mCT
>675
その機能がPython3に特有かどうかは知らないけれど、
ideoneで言語をPython3からPythonにして実行してみれば分かるんじゃなかろうか。
0677デフォルトの名無しさん2016/12/30(金) 07:13:29.86ID:7gkncDIy
>>674
Python2でもできる
クラスがファーストクラスオブジェクトじゃないとできないやり方だから
Python以外のオブジェクト指向プログラミング言語でも使える保証はない
0678デフォルトの名無しさん2016/12/30(金) 08:01:07.12ID:JnJ9FLXY
>>676-677
レスありがとうございます
レス待つ間に思いついたんですが多分ジェネリックプログラミング用途ですよね
C++のTemplateにも近いかなーと思うんですよ
http://ideone.com/rP0tuD
0679デフォルトの名無しさん2016/12/30(金) 09:06:46.40ID:7gkncDIy
なんというか、やってることはオブジェクトを引数に関数を普通に呼び出してるだけ
動的型付けなので実行してから型のエラーを検出するからジェネリックっぽさはないと思う
mypyとか事前に型の検査をするツールはあるけどね
0680デフォルトの名無しさん2016/12/30(金) 09:13:43.31ID:JnJ9FLXY
>>679
え、あーファーストクラスオブジェクトってそういうことですか(*_*)なるほど
宣言じゃなくてただのオブジェクトなんですね
0681デフォルトの名無しさん2016/12/30(金) 10:32:07.34ID:JnJ9FLXY
スッキリしました(*´∀`*)ありがとう
0682デフォルトの名無しさん2016/12/30(金) 15:14:59.28ID:lk/L8Ql6
先生方に質問2点
�@AIプログラミングと通常プログラミングはどこがどう違うのでしょうか?
�AAIプログラミングに最適な言語はPythonですか?
以上です、よろしくお願いします
0683デフォルトの名無しさん2016/12/30(金) 15:48:31.74ID:Q3tvxZdg
デコレータ使え
0684デフォルトの名無しさん2016/12/30(金) 16:11:55.46ID:nuTEHYbN
>>682 スレ違い。pythonの質問ではない。

【統計分析】機械学習・データマイニング11 [無断転載禁止]?2ch.net
http://echo.2ch.net/test/read.cgi/tech/1482227795/
0685デフォルトの名無しさん2016/12/30(金) 17:38:31.06ID:ZgNuhYtJ
>>682 腕に自信あるならC+でもJavaでもアセンブラでもマシン語でもどうぞ。
0686デフォルトの名無しさん2016/12/30(金) 18:49:35.51ID:lk/L8Ql6
心温まる返信の数々、ありがとうございます
来年早々からAIプログラミング挑戦予定です
先生方、良いお年を
0687デフォルトの名無しさん2016/12/30(金) 19:01:11.56ID:Q3tvxZdg
あけおめ給へ
0688デフォルトの名無しさん2016/12/30(金) 20:26:16.65ID:7gkncDIy
このスレ初心者、世話焼き、野次馬はいるけど先生はいないぞ
教えてもらうに徹する態度はなんか嫌だな
0689デフォルトの名無しさん2016/12/30(金) 23:39:37.55ID:AE3qYxRw
>>674-681
Python, Ruby では、クラス・インスタンス・変数・関数・モジュールなど、
すべてのものがスコープを持ったオブジェクト

スコープの中には、名前とオブジェクトを対応付けた、辞書がある
0690デフォルトの名無しさん2016/12/31(土) 00:02:46.55ID:kSL6UTz/
SimpleNamespace結構いいな
0691デフォルトの名無しさん2016/12/31(土) 11:58:43.83ID:NoIi4x11
プログラミングを作る時に関数と関数の関係というか設計やtodoを管理したりするツールはないですか?
0692デフォルトの名無しさん2016/12/31(土) 14:25:20.74ID:qTR6JDNw
Excelで関数名対応表を作るのがよいとされています。
大手SIなど、中〜大規模開発をするには必須のスキルです。
和製英語でソースを汚してはいけません。
関数名は、上から順に def func0001、def func0002、などのように定義します。
そして、Excelに関数名とその関数の詳細な仕様を書きましょう。

Excelを使えば、設計やtodo、進捗など何でも管理できるので
一つのExcelファイルに集約することで、開発効率も向上します。
0693デフォルトの名無しさん2016/12/31(土) 14:35:29.11ID:kSL6UTz/
おもんな
0694デフォルトの名無しさん2016/12/31(土) 15:59:56.94ID:RP5GqFRc
>>691
> プログラミングを作る時に関数と関数の関係
Call graph のことを言ってるなら Doxygen + Graphviz でいいんじゃね?

> というか設計やtodoを管理したりするツールはないですか?
具体的にどう言うことをしたいの?
0695デフォルトの名無しさん2016/12/31(土) 16:56:18.16ID:LYL26U/J
ありがとうございます
>>692
まさにアンチパターンというやつですね
関数名も考えるだけで時間消費してしまうんですよね 適当な文字と連番付けると可読性わるくなりますね

>>694
あるプログラムを作るときに複雑な処理を細かい関数やclassに切り分ける必要があります。 それをどういう順番で組み合わせていくか、とかどの関数にどの機能をもたせるかみたいなことを、実際にコードにする前に考えたいんです
0696デフォルトの名無しさん2016/12/31(土) 17:27:08.33ID:RP5GqFRc
>>695
規模がたいしたことないな Office の図形でシコシコ書く
大規模なら UML 覚えて astah を使うとか
0697デフォルトの名無しさん2017/01/01(日) 20:57:49.98ID:b8ZAKc8l
>>692
その対応表自体をデータベースに作らないで、Excel使ってる現場は未だに多いよなあ。
顧客にはDB利用のメリットを説くのに、開発側は旧態依然。
0698デフォルトの名無しさん2017/01/02(月) 12:42:15.07ID:liSVf+dO
python 3.6使ってます
今pip install beautifulsoupした後に
from bs4 import BeautifulSoupを実行するとImportError: cannot import name 'BeautifulSoup'
site-packagesにbs4ディレクトリがあるからインストールはされてますけどインポートできません
どうやってこのエラーなくせますか?
0699デフォルトの名無しさん2017/01/02(月) 12:49:53.19ID:liSVf+dO
すいません原因が分かりました
標準ライブラリ名と同名のファイルがあったからでした(>_<)
0700デフォルトの名無しさん2017/01/02(月) 13:37:53.02ID:nj1/YZgA
ほんとこのケース繰り返し何度も出て来るな
0701デフォルトの名無しさん2017/01/02(月) 14:27:46.81ID:wqePRVZ9
>>689
dir()で覗ける内容がそれですよね?
JavaScriptのプロトタイプチェインもそうだけど、
スクリプト系の言語はハッシュマップ使ったアクセス構造が多いね
0702デフォルトの名無しさん2017/01/03(火) 14:20:53.96ID:/pJGPNeV
現在python3.5-64bitをインストールして勉強しています
ちょっとつまずいたので質問します
pythonに標準でついているwebサーバーを起動したいのですが、 「python3 -m http.server 8000」
と入力したら「Serving HTTP on 0.0.0.0 port 8000 ...」となるのですが、ここから動かずwebサーバーが立ち上がりません
どうすれば立ち上がりますか?
0703デフォルトの名無しさん2017/01/03(火) 14:38:37.54ID:YSyh9FFj
立ち上がっているからブラウザでhttp://localhost:8000を開く
0704デフォルトの名無しさん2017/01/03(火) 14:58:49.56ID:/pJGPNeV
>>703
ありがとうございます
0705デフォルトの名無しさん2017/01/03(火) 18:40:25.54ID:AV7YJV5h
>>698 >>699
36以外ちゃんとインポートされたよ。
0706デフォルトの名無しさん2017/01/03(火) 19:26:51.12ID:/ZQ7wvWM
サーバーが起動しているかどうかは、

タスクマネージャー・サービスマネージャーなどあれば、それで確認する
0707デフォルトの名無しさん2017/01/03(火) 20:38:07.59ID:/pJGPNeV
質問失礼します
現在
http://coreblog.org/ats/stuff/minpy_web/03/02.html
のList04部分をやっているのですがで内容通りにやっても前ページでやったList01、List02
の「index.htmlの内容が表示される」からなんら変化がないのですが、どうすればいいですか?
ちなみにList05もやってみましたが真っ白になるだけでした
0708デフォルトの名無しさん2017/01/03(火) 20:47:41.88ID:K9PZ4HA5
動いているかどうかはList04 test.pyの内容を変更してみるのが宜しい
例:
Python is awesome !→Python CGI is awesome !
0709デフォルトの名無しさん2017/01/03(火) 20:52:05.44ID:YSyh9FFj
>>707
List03のサーバーを実行しているか
List04のスクリプトのパーミッションは変えてあるか
CGIのURLを開いているか
確認してみて
0710デフォルトの名無しさん2017/01/03(火) 22:05:27.63ID:/pJGPNeV
>>708
Python CGI is awesome !
表示は上記の様になりましたので機能はしているみたいです

>>709
List03のサーバー実行
URLを開くはできてます
List04のスクリプトのパーミッションは変えてあるかはわからなかったのでググってみたのですが、属性の変更でよろしいのですか?
0711デフォルトの名無しさん2017/01/03(火) 23:01:00.73ID:K9PZ4HA5
それならlist05が動かない理由は無い
ファイル名をtest2.pyにでもして試してみて
0712デフォルトの名無しさん2017/01/03(火) 23:09:52.82ID:/pJGPNeV
>>711
できました
ありがとうございます
0713デフォルトの名無しさん2017/01/05(木) 03:43:22.46ID:gXkTBbZm
基本的な質問ですみません
重複を許した順序なしの集合の比較をするためのコンテナ
もしくは効率的な方法はないでしょうか。

例えば重複がなければ

a = {1,2,3}
b = {3,2,1}
print a==b # True

と、setを使えば簡単に表現できるのですが、
a = {1,1,2,3,3,3} というように要素に重複を許した組み合わせの表現と比較を
したいのです。listだと重複は許されますが順序つきになってしまいますし、
何か良い方法がないかと模索しています。

よろしくおねがいします
07147132017/01/05(木) 03:53:06.93ID:gXkTBbZm
自己解決しました
失礼しました
0715デフォルトの名無しさん2017/01/05(木) 14:07:02.36ID:+tgtyLjf
解決方法かこうや
次のおまえさんのためにもや
0716デフォルトの名無しさん2017/01/05(木) 20:12:57.59ID:gXkTBbZm
確かに、その通りですね。

解決方法は Counter というコンテナを使う、です。

http://docs.python.jp/2/library/collections.html#collections.Counter

こんなのがあるのを知りませんでしたが、これを使えば重複を許す組み合わせ集合を
手軽に扱うことができると思います。dictのサブクラスで、内部的には重複した分を値
として数えて管理していますが、使うときはそういうことを意識せずに使えて便利です。
0717デフォルトの名無しさん2017/01/05(木) 21:28:31.58ID:Pqi3quK4
idleで動くのにPowerShellで動かないのですがどうすれば動きますか?
打ち間違えや手順も問題ありません。
0718デフォルトの名無しさん2017/01/05(木) 21:37:11.62ID:aCy+arz4
ちょっと状況が掴めない
powershell上でpythonを起動したのかな?
0719デフォルトの名無しさん2017/01/05(木) 21:41:19.95ID:Pqi3quK4
>>718
はい

python3 : 用語 'python3' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識され
ません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行して
ください。
発生場所 行:1 文字:1
+ python3 kon.py
+ ~~~~~~~
+ CategoryInfo : ObjectNotFound: (python3:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

上記のようにエラーになります
0720デフォルトの名無しさん2017/01/05(木) 22:08:05.14ID:aCy+arz4
普通にパスが通ってないのでは
まずは3を抜いてpythonで試してみる

ダメだったらインストールしたフォルダからpython.exeを見つけてみよう
0721デフォルトの名無しさん2017/01/05(木) 22:20:44.09ID:Pqi3quK4
>>720
3を抜いてもだめでした
exe見つけたのですが、どうすればよろしいですか?
0722デフォルトの名無しさん2017/01/05(木) 22:39:33.86ID:aCy+arz4
そのファイルをドラッグドロップして実行すれば普通に動くはず
お手軽に動かしたいならWindows 環境変数 pathで検索して適当にやって見て
http://next.matrix.jp/config-path-win7.html
0723デフォルトの名無しさん2017/01/05(木) 22:56:09.84ID:sjDvcQUe
環境変数PATHに、pythonの実行ファイルがある、フォルダが無いのだろう

>python3 kon.py
cd で、kon.py のファイルがあるフォルダへ移動して、

絶対パス/pythonの実行ファイル kon.py (または、./kon.py)
0724デフォルトの名無しさん2017/01/05(木) 23:20:04.68ID:Pqi3quK4
>>722
できました
ありがとうございました。
0725デフォルトの名無しさん2017/01/05(木) 23:21:42.38ID:Pqi3quK4
>>723
ありがとうございます
0726デフォルトの名無しさん2017/01/06(金) 03:34:22.16ID:ZYmFb5FY
spyder3を入れたらモジュール一覧が参照出来なくなったんだけど既出?
spyder_profiler/__init__.pyの
from .profiler import Profiler as PLUGIN_CLASS
をコメントアウトするとpydoc modulesが落ちなくなったのでどうやらこれが原因っぽい
spyder2だとこの現象は見られないので、多分spyder3のバグなのかなあ
0727デフォルトの名無しさん2017/01/07(土) 16:30:15.25ID:2ATNHvll
lis=["リストから出てきた",etc...]
print(lis+"文字列です")
みたいなのの出力文を複数行で表示するのはどうしたらいいでしょうか。三重引用符じゃなくて
print("あいう\n"
"えお")
みたいなのが良いんですが、いい書き方ありませんでしょうか
0728デフォルトの名無しさん2017/01/07(土) 16:51:25.29ID:4jt/Q9EM
何をどうしたいのかいまいち見えてこない
0729デフォルトの名無しさん2017/01/07(土) 17:07:22.61ID:YOOm72c1
あいう\nとか脈絡なくて意味不明だから
etc..とか略さずに
その出力例もきちんと書いて
0730デフォルトの名無しさん2017/01/07(土) 18:13:09.94ID:0+QAC2Cv
>>727
ああ、処理とかそういう問題じゃなくてスクリプトそのものの書き方の問題か
print("Hello wooooooooooooooooooooooooooooooooooooooooooooorld!!!!!!!!!!!!!!!!!!")
を
print("Hello woooooooooooooooooooooooo
ooooooooooooooo
oooooorld!!!!!!!!!!!!!!!!!!")

みたいに2行以上で書けないかって事かな?

print("Hello woooooooooooooooooooooooo\
ooooooooooooooo\
oooooorld!!!!!!!!!!!!!!!!!!")
改行箇所にバッククォート(\)これでどう?
0731デフォルトの名無しさん2017/01/07(土) 18:24:43.35ID:Us0KDCcD
"\n".join(lis)
ってこと?
0732デフォルトの名無しさん2017/01/07(土) 18:44:35.27ID:hnlWKVqE
print('\n'.join(lis) + '文字列です')
0733デフォルトの名無しさん2017/01/07(土) 21:38:13.65ID:oIVBdTo8
727です。スレタイ通りの超初心者なので、変なこと言ってるかもしれません…
文法というか、正しい書き方?を知りたかったのです
やりたかったのは、複数行に渡るソースで書かれた、複数行のprint出力です。
0734デフォルトの名無しさん2017/01/07(土) 21:39:24.99ID:oIVBdTo8
"テキスト"+"テキスト"のときは\nで上手くできたんですが、"テキスト"+変数+"テキスト"のとき上手く出来なかったので
なにか正しい書き方があるのかと思いまして…ただ、レス用に整理してたら上手くいってしまった気がします

import random
print("わーい"+str(random.randint(1,100))+"円もらったよ\n")
#↑これが基本形として
0735デフォルトの名無しさん2017/01/07(土) 21:39:52.64ID:oIVBdTo8
print("わーい")
print(str(random.randint(1,100))+"円")
print("もらったよ")
#↑print連打したくない

print(
"わーい\n"+
str(random.randint(1,100))+"円"+
"\nもらったよ"
)
#↑こういう書き方を尋ねたかった
0736デフォルトの名無しさん2017/01/07(土) 21:42:51.60ID:u/YaKAHu
そのレベルならprint連打でええやんと思うのはワイジだけやないやろ?
ケツプラスとかケツ改行とか、次行繋げるときうざいし
途中の行削除したり入れ替えたりするときにもうざい
うざい
とにかくうざい
0737デフォルトの名無しさん2017/01/07(土) 22:09:19.57ID:sdWiu9oz
print("わーい", f"{random.randint(1, 100)}円", "もらったよ", sep="\n")
0738デフォルトの名無しさん2017/01/08(日) 00:45:06.71ID:c9bK+TUz
ヤフオク商品リストを入手しようとapiを使って取り込みをしているのですが、エラーが出てしまいます

import requests
url = 'http://auctions.yahooapis.jp/AuctionWebService/V2/json/categoryLeaf'
appid = 'アプリid'
data = requests.get(url)
print(data.text)
{
"Error" : {
"Message" : "Bad Request: Authentication parameters in your request incompleted."
}
}

上記の様な状態です
リクエストの認証パラメーターが不完全ですとはURLの「?」以降の文字列に何か入力すればいんでいんですよね?
入力内容はどうすればわかりますか?
0739デフォルトの名無しさん2017/01/08(日) 02:09:27.98ID:HNmB7n5d
Python全然関係ないな
そこのWebAPIの仕様知りたければそのURL丸ごとでググれ
0740デフォルトの名無しさん2017/01/08(日) 02:09:39.33ID:XZZGyZKU
payload = {'appid': appid,'page':1,'query': '検索対象'}
response = requests.get(url, params=payload)

とかじゃね?
0741デフォルトの名無しさん2017/01/08(日) 02:22:48.97ID:J7kbIqvd
そのメッセージでググるなりurlでググるなりapiドキュメントを漁るなり
いくらでも手はあるがどれだけやった?
0742デフォルトの名無しさん2017/01/08(日) 02:27:37.49ID:XZZGyZKU
スマン、↑のはヤフオクの商品の検索だった
商品リストはパラメーターが違うね

http://developer.yahoo.co.jp/webapi/auctions/auction/v2/categoryleaf.html
あとはここ見りゃわかるやろ
0743デフォルトの名無しさん2017/01/08(日) 07:04:01.16ID:0mVP2hZ6
>>733
python初心者じゃなくて日本語の初心者か
0744デフォルトの名無しさん2017/01/08(日) 11:39:59.58ID:qLXBHv3e
Python3.6を使っています

「�@」などの文字を含む文字列をeuc-jpにエンコードしたいです

こんなのはencode()できるだろうと思って、
余裕綽々で下記のように試したらUnicodeEncodeErrorが出て死にました
>>>
0745デフォルトの名無しさん2017/01/08(日) 11:42:05.10ID:qLXBHv3e
>>> "�@".encode("euc-jp")
Traceback (most recent call last):
File "<pyshell#20>", line 1, in <module>
"�@".encode("euc-jp")
UnicodeEncodeError: 'euc_jp' codec can't encode character '\u2460' in position 0: illegal multibyte sequence


どうすれば良いでしょうか
0746デフォルトの名無しさん2017/01/08(日) 11:51:44.36ID:Fcvmyyg1
eucjpの○付き1とunicodeの○付き1はマッピングされていないようだ

コーデックのエラー処理を自分で書くことになる
電車内なのでこのくらいのことしか言えない
0747デフォルトの名無しさん2017/01/08(日) 11:58:06.11ID:TXqGgIea
今さらも今さらeuc-jpなんてゴミ使うバカは
さっさと死ね
0748デフォルトの名無しさん2017/01/08(日) 12:03:35.58ID:Fcvmyyg1
そうね、shiftjisともども外宇宙の果てまで放逐したいわ
0749デフォルトの名無しさん2017/01/08(日) 12:08:35.44ID:qLXBHv3e
>>746
わかりました
何とかします

>>747,748
全く同意です
0750デフォルトの名無しさん2017/01/08(日) 12:28:37.72ID:qkk6ZrX+
はぁ??UTF-8でいいとでも思ってんの??

まあ俺もそう思ってるけど
0751デフォルトの名無しさん2017/01/08(日) 12:34:52.10ID:TbfsFEah
eucとかcp932とは越えられない壁で隔てられてるくらいにはマシ
まぁunicodeはunicodeでサロゲートペアとか正規形が複数あるとかウンコ要素盛り沢山
次は委員会デザインではなくして欲しいものだ
0752デフォルトの名無しさん2017/01/08(日) 12:48:03.26ID:yGhtMf9C
openでsjisのファイルを読み込んだときに文字化けするからutf-8に変換したいんだけどどうやるのか教えてください
0753デフォルトの名無しさん2017/01/08(日) 13:12:38.97ID:0mVP2hZ6
sys.setfilesystemencoding
0754デフォルトの名無しさん2017/01/08(日) 14:54:41.72ID:8KkX4tyl
botだとわからないようなtwitterのbotを作りたい どうすればいい?
0755デフォルトの名無しさん2017/01/08(日) 15:01:36.64ID:fZyP8ZJJ
>>754
4ねゴミ
0756デフォルトの名無しさん2017/01/08(日) 15:02:56.23ID:qkk6ZrX+
心に余裕がないやつもいるよね
おつおつ
0757デフォルトの名無しさん2017/01/08(日) 15:27:42.51ID:TXqGgIea
>>754
ホームレスを時給100円でやとって呟かせる
AWSより格安で低級人工知能が手に入る
0758デフォルトの名無しさん2017/01/08(日) 19:48:47.41ID:v0X1COHT
>>757
監視しないとホームレスは呟く端末を金に変えた方が早いと気づいちゃうし、監視業務は苦痛だろうしやりたくないね
0759デフォルトの名無しさん2017/01/08(日) 21:37:06.12ID:5b4VWoeT
>>754
愛です
0760デフォルトの名無しさん2017/01/08(日) 22:37:23.55ID:xxMOhIUy
imgurを利用したスクショツールを作っています。
スクショを撮り保存することはできていて、
うpしたい画像選択まではできています。
うpすることがうまく行きません。
Python3.5.2で作成しています
https://github.com/a38ka/ScreenShotTool
0761デフォルトの名無しさん2017/01/08(日) 22:40:08.33ID:b29Ss2U7
ttp://qiita.com/AKB428/items/a5f68a3288cc596975ae

ぐぐれks
0762デフォルトの名無しさん2017/01/08(日) 22:43:03.65ID:xxMOhIUy
公式ライブラリは2.x用だしその記事Ruby向けだし・・・
0763デフォルトの名無しさん2017/01/08(日) 22:46:51.35ID:b29Ss2U7
rubyだろうがなんだろうがpythonで書き直せるのでは
0764デフォルトの名無しさん2017/01/08(日) 22:51:55.23ID:TbfsFEah
うまく行かないってどううまく行かないんですか
サーバーの応答してるのか?応答してるならその内容は読んだ?
0765デフォルトの名無しさん2017/01/09(月) 05:52:36.36ID:JOAqSyBk
>>760
imgurは割と簡単
0766デフォルトの名無しさん2017/01/09(月) 09:28:16.43ID:/7U8UXhW
>>760
書いたるからしばし待たれよ
0767デフォルトの名無しさん2017/01/09(月) 12:39:56.57ID:4OeNzyzM
>>766
あるやん
0768デフォルトの名無しさん2017/01/09(月) 13:12:53.40ID:T2+cQBvY
みんなのパイチンくんとチンパイくんだよー
0769デフォルトの名無しさん2017/01/09(月) 22:21:43.10ID:/p9bG7aC
shift-jis の文字コードのcsvをUTF-8
に変換するにはcsv.readerで読み込んでからUTF8に変換するんですか?
0770デフォルトの名無しさん2017/01/09(月) 22:44:49.64ID:56tbfuYi
>>769
http://docs.python.jp/3/library/csv.html#examples
ここの4例目みたいに
最初の引数にshift_jisでopenしたファイルオブジェクトを渡すほうが単純
0771デフォルトの名無しさん2017/01/09(月) 22:57:34.60ID:uSIHXA89
>>770
open()の引数のencodingを'utf-8'にするだけでエンコードしてくれるんですか、ありがとうございます
0772デフォルトの名無しさん2017/01/09(月) 23:14:41.09ID:u8jqtDmB
いや、shift_jisのファイルを開くときはencodingに"shift_jis"を指定しないと上手くいかない
0773デフォルトの名無しさん2017/01/09(月) 23:21:29.95ID:g9cDTkVF
mac osにanacondaでpython3をインストールしようとする時、
元からosに入ってる2.7のことは気にしなくてもいいの?
なんかアンインストールとかしたほうがいいの?
0774デフォルトの名無しさん2017/01/09(月) 23:31:42.79ID:u8jqtDmB
元から入っているpythonはアンインストールしないほうがいい
anacondaならシステムのpythonとの共存を上手くやってくれると思う
0775デフォルトの名無しさん2017/01/09(月) 23:47:02.90ID:g9cDTkVF
>>774
サンクス
やってみる
0776デフォルトの名無しさん2017/01/10(火) 14:19:54.45ID:s989ZmsY
>>773
気にしない
0777デフォルトの名無しさん2017/01/10(火) 19:05:58.14ID:PGxDCmmn
([1],
[1,2],
[1,2,3]...)
っていう風に続くndarray配列を作りたいんだけどどう書けばいい?
見やすくするために省いたけど各行の後ろに0が続く
ちなみに偶数行は使う予定ないから最初から生成しないようにしてくれると助かる
0778デフォルトの名無しさん2017/01/10(火) 20:05:26.61ID:saSw9C20
久々にデカいうんこキタヮ
0779デフォルトの名無しさん2017/01/11(水) 02:35:32.18ID:s2WqCPuy
Pythonのお勉強 Part52
http://echo.2ch.net/test/read.cgi/tech/1483756857/36-38

ここに書いてある
0780デフォルトの名無しさん2017/01/11(水) 11:05:26.76ID:wls9g7W6
マルチ乙
0781デフォルトの名無しさん2017/01/11(水) 20:07:54.97ID:Wl4YI8K9
if 文の演算子で"|"(shellでパイプに使う記号)ってどういう意味ですか?
0782デフォルトの名無しさん2017/01/11(水) 20:15:31.03ID:AM+tjFEn
bit演算のorじゃね
0783デフォルトの名無しさん2017/01/13(金) 06:38:37.03ID:R7VZ8yaX
>>744
python-nkf使えば
0784デフォルトの名無しさん2017/01/13(金) 18:19:42.82ID:LcegJUdb
>>783
あーざす
でもWebだったんで結局
"�@".encode("euc-jp", "xmlcharrefreplace")
とやって無事解決しました
0785デフォルトの名無しさん2017/01/13(金) 20:20:06.66ID:iqPFOB0L
お礼はきちんといいなさい
何度ゆったらわかんの
0786デフォルトの名無しさん2017/01/14(土) 03:48:27.19ID:oC4mJ9j7
Ruby 1.9.1 からは標準で、多言語対応(multilingualization, M17N)しているから、
Encoding クラス・String#encode をそのまま使うけど、

全角英数字などの日本語限定なら、NKF か、NKFのラッパーである、Kconv を使うこともある
0787デフォルトの名無しさん2017/01/14(土) 11:57:22.41ID:fNgpdr/l
いい加減にしろ!あんなendとか書かせる気持ち悪い言語の名前を出すな!!!!!!
0788デフォルトの名無しさん2017/01/14(土) 12:08:14.35ID:SauIKXvW
インデント崩れたら元に戻せない気持ち悪い言語が何か言ってる
0789デフォルトの名無しさん2017/01/14(土) 12:13:04.15ID:SPx7rUNS
Endとか書かせる言語……
Juliaか!
0790デフォルトの名無しさん2017/01/14(土) 12:39:25.51ID:DO73KmNH
eucとunicodeのマッピングが規格上欠けているのが原因なのだから
変換できればいいってもんでもないし、rubyはとかいう問題でもないわ
0791デフォルトの名無しさん2017/01/14(土) 20:40:27.16ID:MuYvpS+Z
pandasのdataframe内に以下の文字列があります。

アップル[AAPL] - NASDAQ

この文字列内のAAPLを抜き出したいのですがどのようにすればいいですか?
0792デフォルトの名無しさん2017/01/14(土) 23:37:37.75ID:SauIKXvW
性器表現を使うよろし
0793デフォルトの名無しさん2017/01/15(日) 01:20:33.80ID:wwE0AfZ5
>>787
Pascal「あの」
0794デフォルトの名無しさん2017/01/15(日) 11:55:22.36ID:ZZiniMa8
>>791
import re

s = "アップル[AAPL] - NASDA"
re.findall(r'APPL', s)
0795デフォルトの名無しさん2017/01/15(日) 13:39:48.26ID:UGWLgZWO
こんなバカ見たことないわ。
0796デフォルトの名無しさん2017/01/15(日) 14:13:40.80ID:8go7PcUR
この程度の馬鹿で大げさだよ…
0797デフォルトの名無しさん2017/01/15(日) 14:31:49.98ID:ezeuue3x
面白かった
0798デフォルトの名無しさん2017/01/15(日) 14:57:00.29ID:ZZiniMa8
ブラケットの中のティッカーシンボルぬきだしたいならr'\[([A-Z]+?)\]'
0799デフォルトの名無しさん2017/01/16(月) 22:04:45.71ID:eb+APMWQ
タプルは辞書のKeyとして使える
これマメな
0800デフォルトの名無しさん2017/01/16(月) 22:23:20.31ID:vsxBp8Vo
Setがキーとして使えないのが何気に不便
0801デフォルトの名無しさん2017/01/16(月) 22:50:08.38ID:Afs2A6pw
>>787
喧嘩売ってんのか?
-- Ada, ALGOL
0802デフォルトの名無しさん2017/01/16(月) 22:53:03.57ID:g4TB0dH0
>>800
frozensetならdictのkeyにできる
もっと言うとhashableなオブジェクトであればkeyにできるはず
0803デフォルトの名無しさん2017/01/17(火) 00:46:41.62ID:xMcqVKfz
流れぶった切ってすまん
https://pip.pypa.io/en/stable/installing/でget-pip.pyってのをダウンロードして
python get-pip.py
ってコマンド叩けばpipをインストールできるらしいのだがget-pip.pyのリンクを踏むとしょぼい画面に移動するだけで何もダウンロードできない

誰か助けてくれ
0804デフォルトの名無しさん2017/01/17(火) 00:53:57.06ID:Ugn44SVp
テキストファイルとして保存すればいいんじゃないの?
0805デフォルトの名無しさん2017/01/17(火) 00:55:20.33ID:VyeFrd3T
apt-get使えばいいよ
0806デフォルトの名無しさん2017/01/17(火) 06:56:40.43ID:gFA1cdN3
よく知らないけど、ブラウザで、そのリンクをクリックせず、

右クリックメニューから保存すれば?
0807デフォルトの名無しさん2017/01/17(火) 11:21:03.85ID:tr+w09qi
seabornがなんでsnsと略されがちなのか分かりません。
0808デフォルトの名無しさん2017/01/17(火) 17:55:32.51ID:DoMwgGHv
公式サイトのチュートリアルからじゃないの
0809デフォルトの名無しさん2017/01/18(水) 05:10:15.01ID:x/C4MOn8
python3でseleniumのwebdriverとphotomjsを利用してwebスクレイピングをしています。
複数サイトをクロールしていると途中でどこかで止まったまま進まない事があります。

エラーなどの場合はtry文で飛ばすように処理しているのですが
何かの処理を待ってずっと止まったままの場合一定時間処理が進まない場合
次の処理に進むようにしたいのですが、そういった場合はどのように
コーディングすればいいでしょうか。
0810デフォルトの名無しさん2017/01/18(水) 08:44:51.48ID:GJew1Zyk
一般的にタイムアウトというが
止まっている「何かの処理」にタイムアウト機能がないなら
スレッドまたはプロセスを強制終了させる以外で処理を中断させるのは不可能である
すなわち次の処理に進ませることはできない
これはあらゆる言語で同じである
0811デフォルトの名無しさん2017/01/18(水) 08:57:39.47ID:UUFZaoFT
socket.setdefaulttimeoutでタイムアウト設定してはどうか?
0812デフォルトの名無しさん2017/01/18(水) 09:27:32.17ID:30hfm2OS
>>810
そうなんですか
通りでググってもトライ文しかヒットしないわけだ

>>811
ちょっと調べて試してみます
0813デフォルトの名無しさん2017/01/18(水) 13:06:42.53ID:zXM8oXoh
Rubyでは、Capybara + Poltergeist(PhantomJS) + Selenium で、
Timeoutはデフォルトでは30秒

クローラーなら、
Capybara.default_wait_time = 5

とか短く設定して、タイムアウトなら、次のサイトへ移動する
0814デフォルトの名無しさん2017/01/18(水) 22:10:12.07ID:jNlDLPDF
>>810
シグナル送ってシステムコールを中断って普通にやれてたと思うが...
0815デフォルトの名無しさん2017/01/18(水) 22:13:34.51ID:w1jFTQai
Ture を intで表すといくつになりますか?
0816デフォルトの名無しさん2017/01/18(水) 22:21:20.50ID:8zHTkSD2
≠0
0817デフォルトの名無しさん2017/01/18(水) 22:51:13.11ID:w1jFTQai
つまりFalse =0ってことかありがとう
0818デフォルトの名無しさん2017/01/18(水) 22:51:51.15ID:RTw5MVUn
Pythonでアクセント記号がついたアルファベット(á、Ü、Ñなど)を含む文字を入力、出力するにはどうしたら良いのでしょうか?
0819デフォルトの名無しさん2017/01/18(水) 23:07:35.97ID:8zHTkSD2
UTF-8などUnicode系エンコーディングで入出力
0820デフォルトの名無しさん2017/01/19(木) 01:27:27.55ID:zDPBNjMx
>>815
PythonではTrueは1と等しい(でも同一ではない)
True == 1とint(True)とTrue is not 1の結果が根拠
0821デフォルトの名無しさん2017/01/19(木) 12:29:23.63ID:wsXmPoqQ
等しいと同一は等しくないのか?
0822デフォルトの名無しさん2017/01/19(木) 15:03:07.04ID:A7bNnr05
日本語としては両表現は等しくないんじゃないか。
'=='と'is'という意味でももちろん等しくないだろうし。
0823デフォルトの名無しさん2017/01/19(木) 15:23:46.73ID:71H3tB2M
なんでpythonって構文エラーがあってもその行が実行されるまで教えてくれないん?
計算結果をファイルに保存する直前でミスってて全部パーになったぜ・・・・
0824デフォルトの名無しさん2017/01/19(木) 15:45:24.47ID:jbX0EI2K
>>821
ここに百円硬貨が10枚ある。
向こうには千円紙幣が1枚ある。
両者は同一ではないが等しい。
0825デフォルトの名無しさん2017/01/19(木) 16:55:01.15ID:sxRqTBJN
>>823
なにいってだ
0826デフォルトの名無しさん2017/01/19(木) 17:31:49.99ID:WyljSrcu
コンパイル言語を使えばよいのでは?(名案)
0827デフォルトの名無しさん2017/01/19(木) 17:39:49.49ID:TmMUsOW6
プログラミングの仕方が悪い
どうせロジックを全部一気に書いてぶっつけ本番で動かしたんだろ
普通はちょっと書いて動くかどうか確認してまたちょっと書いてを繰り返すんだよ

IDEを使わないのも悪い
どうせ使ってないだろ
もし使ってたら構文エラーが発生したら絶対に気付くからな

結論
素人はコンパイラ言語でもやってろ
Pythonは遊びじゃねえんだよ。迂闊に触ると火傷するぜ
0828デフォルトの名無しさん2017/01/19(木) 17:57:03.78ID:McAikvmQ
エーッ、pythonって構文エラーがあってもそのまま実行しちゃうんですか?!!!
0829デフォルトの名無しさん2017/01/19(木) 18:40:42.62ID:sxRqTBJN
>>827
なーにがIDEだよ
男ならメモ帳一択だ
気取ってんじゃねえばーか
0830デフォルトの名無しさん2017/01/19(木) 18:41:08.35ID:Ccs4bPhG
>>820-822,>>824
とりあえず「等しい」とか「同一」の定義を書こうか
0831デフォルトの名無しさん2017/01/19(木) 19:23:58.39ID:71H3tB2M
そういやみんな何を使ってpythonのコードを書いてんの?
俺はVS Codeにpythonの一番使用者が多いエクステンションを入れて書いてんだけど・・・・
問題のない行に赤線が引かれたり、構文エラーのある行もファイルを保存するまで赤線が引かれなったりと、結構メチャクチャだ
0832デフォルトの名無しさん2017/01/19(木) 20:02:56.03ID:JqFkoBA+
vimとかemacsが一番多そう
0833デフォルトの名無しさん2017/01/19(木) 20:21:11.52ID:JiJhA6Oo
Pycharm
0834デフォルトの名無しさん2017/01/19(木) 20:37:11.91ID:g3FycWxD
>>831
WinWord
0835デフォルトの名無しさん2017/01/19(木) 21:09:46.84ID:gCwd8P05
>>824
いや同一でいいだろ屁理屈言うなよw
0836デフォルトの名無しさん2017/01/19(木) 21:11:55.61ID:JiJhA6Oo
>>835
==とisの違いをせっかく分かりやすく解説してくれてるのに茶々入れるなよ
0837デフォルトの名無しさん2017/01/19(木) 21:16:58.37ID:gCwd8P05
>>836
いやお前違い分かってねーだろw
100円硬貨10枚と1000円札1枚は同一だ
何の問題もないが
0838デフォルトの名無しさん2017/01/19(木) 21:24:57.41ID:u6Xg6Z1C
わざと煽ろうとして言ってるんだろうけど
示す”値(値段)”が等しいだけで、100円硬貨10枚と1000円札1枚は
区別可能な別な物体であって同一じゃないよ

その100円硬貨10枚と同一なものはその100円硬貨10枚だけ
0839デフォルトの名無しさん2017/01/19(木) 21:26:35.04ID:gCwd8P05
>>838
だから値段が同一なんだろw何言ってんのお前w
0840デフォルトの名無しさん2017/01/19(木) 21:33:19.56ID:0Bc6cTG+
>>837
トイレでトイレットペーパーが無いことに今さら気付いた場合は大違いだよ
0841デフォルトの名無しさん2017/01/19(木) 21:35:14.43ID:0Bc6cTG+
>>839
>>838
こらこら、同一のことばっかり言ってるんじゃ無いよ
0842デフォルトの名無しさん2017/01/19(木) 21:40:51.28ID:JiJhA6Oo
>>837
http://www.pythonweb.jp/tutorial/if/index5.html
一般にWeb界隈ではis演算子でTrueを返すものを同一と呼ぶ
通貨の例にひっかかってるなら「1.0と1は同値だが同一ではない」ならいいだろ
0843デフォルトの名無しさん2017/01/19(木) 21:49:00.93ID:u6Xg6Z1C
>>839
だから、同値なだけであって同一ではない
0844デフォルトの名無しさん2017/01/19(木) 21:51:30.16ID:gCwd8P05
>>841-843
屁理屈はいいってばw
値段が同一でないってんならその根拠を言ってみろよおバカさん達w
0845デフォルトの名無しさん2017/01/19(木) 21:52:44.25ID:u6Xg6Z1C
>>844
だから、同値なだけであって同一ではない
0846デフォルトの名無しさん2017/01/19(木) 21:55:13.48ID:gCwd8P05
>>845←己の無理解を言葉の意味をねじまげる事により正当化しようとする馬鹿
0847デフォルトの名無しさん2017/01/19(木) 21:56:37.26ID:u6Xg6Z1C
>>846
だから、言葉の通り同値なだけであって、同一ではない
0848デフォルトの名無しさん2017/01/19(木) 21:59:28.28ID:gCwd8P05
>>847
半端な理解で意地はっても誰の得にもならんな
お前には圧倒的に素直さが足りん、そのままでは伸びんよ何事も
0849デフォルトの名無しさん2017/01/19(木) 22:00:17.49ID:u6Xg6Z1C
>>848
だから、言葉の通り同値なだけであって、同一ではないよ
0850デフォルトの名無しさん2017/01/19(木) 22:00:36.55ID:hI3iR8Lu
俺も酔っ払ってる時こんな感じになった事あるわ
0851デフォルトの名無しさん2017/01/19(木) 22:15:40.64ID:ICW76Hpv
専門板を酔って荒らさないで欲しい
0852デフォルトの名無しさん2017/01/20(金) 01:34:06.36ID:XFEQY4dO
専門板(笑)
0853デフォルトの名無しさん2017/01/20(金) 01:38:25.17ID:/ixeQkYS
どの言語でも、同一・同値は異なる

同一は型も同じで、同じ参照・オブジェクトを指す

一方、同値は、そのアプリがビジネスロジックで、自由に決める。
そのアプリが決めなければ、同一などのデフォルトの動作になる
0854デフォルトの名無しさん2017/01/20(金) 01:39:10.98ID:59kBtE30
ubutsuでPython3のslackerを利用して日本語のファイル名を参照してアップロードしようとしているのですが
no_file_dataとなってエラーが起こります。日本語を使わないファイル名だとエラーは起きません
恐らく文字コードエラーだと思うのですが、どうすればエラーにならないでしょうか?
0855デフォルトの名無しさん2017/01/20(金) 03:30:24.38ID:/ixeQkYS
ファイル名は、システムに使うもので、OS依存だから、
基本的に、半角英数字だけを使うのが安全

utf-8-mac では、濁点半濁点が分割されて、別の文字になるし、
shift-jis の丸で囲んだ数字・�@なども、環境依存文字。
絵文字も各社で異なる

半角英数字以外のファイル名は、誰もテストしていないから、各アプリでバグる。
日本人でも、半角英数字以外ではテストしていない

半角英数字以外の文字は、テキスト・文字列部分でしか使えない。
システムでは使えない
0856デフォルトの名無しさん2017/01/20(金) 04:23:21.54ID:SuI25zgd
0-9A-Za-z だけですか
0857デフォルトの名無しさん2017/01/20(金) 04:24:09.79ID:SuI25zgd
_ とか . は禁止なんですね
0858デフォルトの名無しさん2017/01/20(金) 05:57:57.64ID:/ixeQkYS
漏れは半角英数字以外に、_ も使っているけど、
- は色々な種類があるから、バグる可能性は高くなる

. は危険

とにかく、半角英数字以外では誰もテストしないから、使えるかも知れないというレベル

PCのユーザー名を、日本語にしているだけでもバグる。
Windows付属のFTPアプリでも、日本語のファイル名ではバグる
0859デフォルトの名無しさん2017/01/20(金) 07:03:52.17ID:ymDflbNb
>>842, >>853
だからそんなオレオレ定義で語るな
宗教戦争したいならよそでやってくれ
0860デフォルトの名無しさん2017/01/20(金) 07:13:39.56ID:VJhUYQPx
完全に意地になってるなw
0861デフォルトの名無しさん2017/01/20(金) 07:59:21.98ID:dnaNiW7S
pythonのスレなんだからね。その意味を理解して>>859はレスしてもらいたい。それでも同じことを言うなら、レベルが低過ぎるよ。
0862デフォルトの名無しさん2017/01/20(金) 08:37:17.32ID:ymDflbNb
>>861
>> 宗教戦争したいならよそでやってくれ
って書いてあるんだが?
人としてのレベルが低すぎて見えないのか? w
0863デフォルトの名無しさん2017/01/20(金) 09:29:52.44ID:DQMe+5xz
is はインスタンスが同一か否かを調べる演算子
A is B は id(A) == id(B)
簡単に言うと、AとBのメモリ上の格納位置が同じか否か
0864デフォルトの名無しさん2017/01/20(金) 09:45:09.88ID:gqhsfXuD
これ以上続けるなら二郎コピペで埋めてやる
0865デフォルトの名無しさん2017/01/20(金) 09:45:36.19ID:e9jK1xY3
>>859
お前がオレオレ定義してんだろうが
Python repl立ち上げて動作確認してから回線切って死ねカス
0866デフォルトの名無しさん2017/01/20(金) 11:18:11.18ID:VvwuyLhd
まあ>859が日本中で大恥かいてるだけで
何の生産的なこともないんだから以後スルーで
0867デフォルトの名無しさん2017/01/20(金) 11:34:15.42ID:m+APKcto
>>803
ゴミファイルが生成されちゃったね
OSの再インストールしたほうがいいよ
0868デフォルトの名無しさん2017/01/20(金) 12:31:28.88ID:HFClsWe2
もう素直に謝ればいいのに
「何が同じかよく分からないけどとりあえず値ではないらしいから『同一』という言葉でごまかしてました」ってなw

大体そんなの最初からバレバレだしw
未熟だなあ
0869デフォルトの名無しさん2017/01/20(金) 12:44:31.05ID:ymDflbNb
>>865-866
なにが気に入らんのか知らんけど
>> 宗教戦争したいならよそでやってくれ
が理解できないバカ乙
0870デフォルトの名無しさん2017/01/20(金) 13:05:16.52ID:OR8BSw1o
>>820の説明でも理解できないならもっと説明を求めればいい
0871デフォルトの名無しさん2017/01/20(金) 13:10:34.57ID:V5JvXjjr
>>864
やれ
0872デフォルトの名無しさん2017/01/20(金) 13:25:05.74ID:TEyTac3f
>>869
PythonスレでPythonの話を宗教扱いとは、バカはお前だ
Python以外の話がしたいならよそでやってくれ。よそに行くのはお前だ
0873デフォルトの名無しさん2017/01/20(金) 13:52:07.75ID:XOQ1SR2o
次スレはよ
0874デフォルトの名無しさん2017/01/20(金) 18:17:16.07ID:2kzWfLg7
誰かどうにかしてやれよ
0875デフォルトの名無しさん2017/01/20(金) 18:38:32.05ID:2kzWfLg7
待ってて。俺がタイムマシンを発明したら、ID:ymDflbNbを止めにいってあげるから。
必ず助けにいってやるから、待ってて。
0876デフォルトの名無しさん2017/01/20(金) 19:43:32.86ID:ymDflbNb
>>872
>>860
0877デフォルトの名無しさん2017/01/20(金) 20:01:55.08ID:TqJ9ukRX
それって俺らは待つ必要ないやつじゃね?
0878デフォルトの名無しさん2017/01/20(金) 21:51:16.25ID:JXvWFNM3
Pythonの話に戻すけどオブジェクトの等価性と同一性は一致していないということでおk?

等価性とはオブジェクトが計量的に同等と評価されること、つまり a = 1.0; b = 1; a == b
同一性とはオブジェクトが同じ参照を持っているということ、つまり a = Foo(); b = a; a is b
0879デフォルトの名無しさん2017/01/20(金) 22:30:14.66ID:Si7eA2CU
>878
計量的という未定義の言葉を持ち込むのは、定義や解釈を曖昧にして問題を解決に導かないから、うまいやり方ではないね。

ここで聞くより、公式のドキュメント見るほうが正確だよ。
Python language reference の
6.10. Comparisons
に==演算子についての記述があるよ。
0880デフォルトの名無しさん2017/01/20(金) 23:10:50.72ID:JXvWFNM3
つまりは最初に戻るとTrueと1は等価性はある(平たく言うと等しい、英語だとequality)けど
同一性はない(平たく言うと同一ではない、英語だとidentity)ということだよね?
0881デフォルトの名無しさん2017/01/20(金) 23:31:12.01ID:VJhUYQPx
つまりTrueと1は同一の価値があるものとして評価できるけど
等しくはないということだよ

あれおかしくね?w
0882デフォルトの名無しさん2017/01/21(土) 00:01:12.25ID:948Ma8cE
何言ってだ。そんなのreplで==とisで比較してみりゃ一目瞭然だべ
0883デフォルトの名無しさん2017/01/21(土) 00:55:00.59ID:6ehOMhY+
pythonコンパイルするときに--enable-frameworkってのがあるけど
これ付けると何がどうなるんですか?
0884デフォルトの名無しさん2017/01/21(土) 01:11:21.38ID:3++et099
pythonコンパイルする必要ないだろ
interpreterなんだから
0885デフォルトの名無しさん2017/01/21(土) 01:35:58.82ID:Lyq6wUIQ
$ ./configure --helpで見ると
--enable-framework[=INSTALLDIR]
Build (MacOSX|Darwin) framework
とあるからmacの板で聞いてみたら?
0886デフォルトの名無しさん2017/01/21(土) 12:51:27.08ID:9Tx2OfPO
聞かなきゃ分からんオプションつけてビルドして
忘れた頃にそのオプションのせいでハマる何をしたいのかよく分からない無能
0887デフォルトの名無しさん2017/01/21(土) 13:22:35.95ID:rnv6Tehd
>>831
spyder
0888デフォルトの名無しさん2017/01/21(土) 14:28:55.12ID:yR+dIRXC
>>882
キモ
しね
0889デフォルトの名無しさん2017/01/22(日) 01:05:02.83ID:34mb+epJ
is == 同一
== is 同一
is == 同値
== is 同値
0890デフォルトの名無しさん2017/01/22(日) 14:35:13.01ID:UKtc1nP0
重複したものを含むsetっていうか
順番がちがっても含まれる要素が同じなら同一とみなされるlistってありますか?
0891デフォルトの名無しさん2017/01/22(日) 14:54:51.32ID:4NhSs4Fy
自分にとって都合が悪くなって言い返す言葉が無くなった時最後に
出てくるのがキモやしねである(>>888)
なお、精神年齢が大人であればこのような言葉は出なくなる
0892デフォルトの名無しさん2017/01/22(日) 15:34:10.85ID:Y0M4KUWA
>>890
ない
set()で集約して集合比較するしかないのでは
0893デフォルトの名無しさん2017/01/22(日) 15:46:59.32ID:UKtc1nP0
>>892
いや[a, b, c, d]
と[a, b, c, c, d]というリストが区別できないと困るんです。ただし順不同で。重複した要素がセットにすると一個しかなくなってしまうので
0894デフォルトの名無しさん2017/01/22(日) 15:51:36.10ID:SX6psZKJ
どうしたいの?
もう少し例を挙げて
0895デフォルトの名無しさん2017/01/22(日) 16:08:52.37ID:UKtc1nP0
簡単に言うとanagramの単語を判定したい 同じ文字から構成されていて順番は違う単語(例.star と arts)を比較するため文字をリストにしたいが、sort()すればいいんですか?
0896デフォルトの名無しさん2017/01/22(日) 16:17:09.26ID:oj9pgfmK
>>890
多重集合(multiset)が必要ということ?
それなら >>713-716 にもあるcollections.Counterで代用できる気がする
0897デフォルトの名無しさん2017/01/22(日) 16:20:32.23ID:UKtc1nP0
>>896
まさにそれです
サンクス
0898デフォルトの名無しさん2017/01/22(日) 17:25:37.29ID:/F7rl9ud
>895
Counter 使うのもいいけど、要素数26個のリストで十分やね。
a-zの出現回数をリストの0番目から25番目に記録すれば良い。
0899デフォルトの名無しさん2017/01/22(日) 18:12:06.14ID:1ZK7a/9Z
質問者じゃないけどなるほどそれはグッドアイデアだ
0900デフォルトの名無しさん2017/01/22(日) 20:43:35.59ID:Qu//KhQq
規模の小さい使い捨て処理ならそれかー
簡便で頓智きいてるな…
0901デフォルトの名無しさん2017/01/22(日) 21:09:17.42ID:F+Jt7Wck
s1 = 'star'
s2 = ''.join(sorted(s.lower()))
0902デフォルトの名無しさん2017/01/22(日) 22:22:19.37ID:wTFtsVHe
リストの要素の取りうる値の範囲が事前に分かっている時に、出現回数をカウントするのは、良く使う手だよ。
バケツソートと発想は同じ。
0903デフォルトの名無しさん2017/01/22(日) 22:39:05.79ID:r9MJ9Q+P
勉強になる良スレ
そういうtipsもっと欲しい
0904デフォルトの名無しさん2017/01/23(月) 11:30:43.15ID:mM6SDN6O
最近pipenvってライブラリが出てきたけど使い方おしえて
0905デフォルトの名無しさん2017/01/23(月) 12:56:54.69ID:Am4EfiFi
これは実験的なプロジェクトです
ヒヨッコはお呼びではありません
って書いてあったから君にはまだ早い
0906デフォルトの名無しさん2017/01/23(月) 13:12:49.60ID:WwQ7qjYj
>>891 三つ子の魂百までですし。
0907デフォルトの名無しさん2017/01/23(月) 17:20:24.83ID:uf3hmdYR
今まで「u'日本語'」じゃないと文字化けしていたのが
Python 3.6で試したら「'日本語'」でも文字化けしなくなった。
いつのバージョンからuなしでも文字化けしないようになりました?

import win32com.client
shell = win32com.client.Dispatch('WScript.Shell')
shell.Popup('日本語')
0908デフォルトの名無しさん2017/01/23(月) 18:16:02.81ID:BPQAQoXi
3.0
0909デフォルトの名無しさん2017/01/23(月) 23:53:28.18ID:gqyNBQeN
>>908
2.xから久々のPythonでちょっと感動した

pip install pymssqlがエラー起こす(sqlfront.hがない)から
pyodbcでデータベース閲覧して遊んでる
0910デフォルトの名無しさん2017/01/24(火) 21:28:55.54ID:5Ph/Mtl7
pandasを使ってデータフレームにしてあるutf8のデータをSjisに変えて保存する方法ありますか?
また「〜」等が対応してなくてエラーになるのですが、そういった文字の回避方法ありますか?
0911デフォルトの名無しさん2017/01/25(水) 01:17:50.79ID:Lq+TsBQo
あるよ
0912デフォルトの名無しさん2017/01/25(水) 01:26:07.55ID:lIO6GAcv
ないよ
0913デフォルトの名無しさん2017/01/25(水) 03:14:00.10ID:gG3AR0ae
ありますん
0914デフォルトの名無しさん2017/01/25(水) 04:15:06.74ID:lwJ9NKOw
なくなくない?
0915デフォルトの名無しさん2017/01/25(水) 11:02:52.13ID:SLV8VPLP
1.ある
2.ある
0916デフォルトの名無しさん2017/01/25(水) 20:22:14.15ID:AeM3WiQW
なきにしもならず
0917デフォルトの名無しさん2017/01/26(木) 02:01:58.20ID:bzEbZ39i
人工無能についてのです

wikiなどのデータを読み込ませた場合に生じる
複数単語に反応してしまう問題(無理数が生まれる)

など、その他様々な問題を取り扱います

点数評価形式にした場合にオーバー点数が目立つなど、
高得点、単語が列挙するなど、強固な人工無能とは何か?
単純な検索エンジンとして、扱わない様にするにはどうするべきか、など

どうすれば良いかお願いいたします。
0918デフォルトの名無しさん2017/01/26(木) 07:04:35.91ID:m5TQ8KIn
まず、日本語を勉強しよう
0919デフォルトの名無しさん2017/01/26(木) 11:54:49.85ID:50jMvt6S
>>917
こいつ人工無能だろ、分かるぞ
0920デフォルトの名無しさん2017/01/26(木) 12:03:50.98ID:ZtIj2BY3
>>917
ここ人工知能スレじゃないんで
0921デフォルトの名無しさん2017/01/26(木) 12:18:55.87ID:ecr0NxNG
確かに無能っぽい(無脳じゃないあたり)
0922デフォルトの名無しさん2017/01/26(木) 16:12:27.36ID:qw4TFxLI
翻訳サイトで無理やり日本語にしたような文章だし
どっかの留学生が宿題丸投げしてんじゃないの
0923デフォルトの名無しさん2017/01/26(木) 17:19:01.50ID:2UUiV5D1
Linuxでvirtualenvを使って複数の環境を使い分けたいです
でも他の環境に切り替えるとaptを使ってインストールしたライブラリ(numpy)が使えない(もちろん切り替えてからはaptを使ってもすでにインストされてるって出る)
これはどうすればいいですか?
0924デフォルトの名無しさん2017/01/26(木) 18:40:06.21ID:EcGC6pYf
かんちがいしてたらごめんやけど
とりあえずrootで作業するのはやめよう。

https://virtualenv.pypa.io/en/stable/userguide/#the-system-site-packages-option
解決はこれでできるだろうけど、
apt管理してるパッケージはちゃんと意識しとかないと滅茶苦茶になるよ。
0925デフォルトの名無しさん2017/01/26(木) 18:48:05.24ID:47W4d9ix
>>923
システムのpythonから仮想環境を作ったのか、自分でコンパイルしたpythonから仮想環境を作ったのか明記しろ
0926デフォルトの名無しさん2017/01/27(金) 00:48:06.82ID:SOi9h9fX
そういう開発環境が入った、Docker・Chef などのレシピは無いの?
0927デフォルトの名無しさん2017/01/27(金) 13:34:39.82ID:6I+ZykP/
2.7で
0928デフォルトの名無しさん2017/01/28(土) 18:08:55.73ID:2zr7Q8nP
itertoolって直積もできるのか?便利ですか?
0929デフォルトの名無しさん2017/01/28(土) 18:28:23.91ID:8KNQnpYF
できる、便利
0930デフォルトの名無しさん2017/01/28(土) 20:18:08.59ID:eYQCwlhR
再帰ってムズくないですか?
0931デフォルトの名無しさん2017/01/28(土) 20:56:11.12ID:ABYZq4VO
再帰のほうがわかりやすくない?
でも、Pythonは再帰に向いてないよ
再帰の深さに制限あるし、末尾再帰の最適化もしてくれない
おとなしくリスト内包表記を使え
0932デフォルトの名無しさん2017/01/28(土) 21:01:35.58ID:eYQCwlhR
再帰の方がわかりやすいってすごいっすねHaskelとかの人ですか
再帰の関数作る時ってまず基底条件から考えるんですかね
0933デフォルトの名無しさん2017/01/28(土) 21:14:41.68ID:ABYZq4VO
>>932
いやHaskellは書けない
再帰だと終了条件のブロックと、処理のブロックをキレイにわけられて漸化式みたいでよくない?
数学で学位とってるから書きやすいのかもね
0934デフォルトの名無しさん2017/01/28(土) 21:27:57.40ID:eYQCwlhR
あぁそっち系の人ですか
むしろpythonより関数型言語の方が向いてるんでは

普通に書くぶんには再帰使わないけどあるコード学習アプリの問題で再帰の関数の結果を求める問題がでてどっから取り掛かるか迷う内に時間切れになるんです
0935デフォルトの名無しさん2017/01/28(土) 21:31:10.05ID:aj1kIEcQ
俺は数学で学位取ってないけど再帰の方がわかりやすいぞ
あと末尾再帰はデコレーター使え
0936デフォルトの名無しさん2017/01/28(土) 21:54:24.38ID:eYQCwlhR
>>935
[i**2 for i range(12) if i%2 == 0]
これを再帰にできますか?
0937デフォルトの名無しさん2017/01/28(土) 21:58:30.05ID:aj1kIEcQ
>>936
Pythonの世界ではそれが正解
forで回してappendしていくようなコードならともかく、流石にリスト内包より再帰がわかりやすいなんて主張はしない
0938デフォルトの名無しさん2017/01/28(土) 22:13:05.31ID:f/zl73Gk
Pythonでは、メモ化も出来るから、ナップザック問題も速く解ける
0939デフォルトの名無しさん2017/01/29(日) 00:01:25.54ID:c/fWK/rl
はぁ?
0940デフォルトの名無しさん2017/01/29(日) 00:18:50.89ID:9yjQUvuF
おまえらマジで頭いいんだな
やっぱ専門卒のゴミじゃ話についていけんわ
0941デフォルトの名無しさん2017/01/29(日) 01:31:52.85ID:sxS1aUOY
pythonのスコープは再帰向きじゃないなあ
0942デフォルトの名無しさん2017/01/29(日) 01:35:30.56ID:cj3RSse5
プログラミング・コンテスト・チャレンジブック、第2版、2012

ほとんど全てのアルゴリズムを網羅。
問題数も多く、パズル感覚で楽しめる。
AIやシミュレーションゲームの参考になる

memoize(メモワイズ)」は、Pythonで「メモ化(memoize / memoization)」の効いたプロパティが、
簡単に作れるライブラリ

他にも、Pythonには、グラフのライブラリもある。
一方、Rubyには、あるかどうか知らない

TopCoder, Google Code Jam, 会津大学のAOJなどの、プログラミング・コンテストでもやれば?
0943デフォルトの名無しさん2017/01/29(日) 09:30:27.44ID:8lLAEmEZ
Python2 + Eclipse + PyDevで開発しているけど、何かの拍子に
loggingモジュールでファイルに出力している内容がEclipseのコンソールにも
赤文字で表示されるようになったけど、原因わかる方います?

コードは全く同一のものだし、今まで通りファイルにも出力されているし、
全く理由がわからず困ってます。
0944デフォルトの名無しさん2017/01/29(日) 09:47:09.21ID:9yjQUvuF
Python2なんか使ってる天罰やね
0945デフォルトの名無しさん2017/01/29(日) 21:02:43.50ID:IWdagit8
>>943
変なハンドラが追加されてないか確認してみたら
0946デフォルトの名無しさん2017/01/29(日) 21:30:56.66ID:FxfAOGCB
WindowsでVagrant使ったローカル開発環境とPyCharmで開発している人っていますか?
freeのCE使ってるんですけどProでないと仮想マシンで開発は無理ですかね?
0947デフォルトの名無しさん2017/01/30(月) 00:00:54.67ID:VP5W50Yb
ProだとRemote developmentに対応していて、これは要するにSSH経由でログイン先のpython環境からコードを実行できるというものだ。
逆にFree版を使ったことないんだけど、webの記述をみるにFree版だと対応してないっぽいね。
0948デフォルトの名無しさん2017/01/30(月) 00:17:36.24ID:26ABLjwJ
ScipyとかNumpyってインストールしたら2でも3でも使えるの?
それとも別々に指定してインストールしなきゃいけないの?
ライブラリ系のその辺りの挙動というか振る舞いってどうなってるの?
完全にバラバラ?
0949デフォルトの名無しさん2017/01/30(月) 00:21:29.32ID:W0j7gj/+
割るのです・・・Pro
0950デフォルトの名無しさん2017/01/30(月) 03:09:34.33ID:7sKSR5XP
ATOMスレと此処とどっちに書くか迷ったんだけど、人が多いこっちでお聞きします
通常版のpythonをアンインストールしてAnaconda入れたら、ATOMのplatformio-ide-terminalで
utf-8 codec can't decodeエラー吐くようになってしまった
ATOM Runnerやwin+rからのpowershellはこれまで通り問題なく使えてる
何が原因で、どうすりゃ直るでしょうか
今んところplatformioの起動スクリプトにchcp 65001入れて対応してるけど、モヤモヤするんで根本的に直したいのです
0951デフォルトの名無しさん2017/01/30(月) 08:35:35.54ID:KR1I43dq
PEP528の変更が原因
0952デフォルトの名無しさん2017/01/30(月) 10:09:41.19ID:+k/sSW9E
 こんにちわ。オブジェクト指向超初心者なのですが、根本的に分からないところが
あります。オブジェクト指向ではカプセル化が重要だというので、変数が恣意的な参
照や変更に合わないように以下のような cell クラスを試しに定義しました。

class cell:
def __init__(self, n):
self.c = n
def bump(self):
self.c += 1
def call(self):
return self.c

 インデント崩れたらごめんなさい。コピペでインタプリタに貼ると動くと思いま
す。たぶんこの実装がもうおかしいのだと思うんですけど。

>>> a = cell(0) # a に初期値が 0 の cellオブジェクトを作ります
>>> a.bump()
>>> a.call()
1

 これで上手く隠蔽されたオブジェクトが作れたのだと思っていました。
しかし a.c で参照も代入もできますよね。

>>> a.c
1
>>> a.c = 20;
>>> a.call()
20

 これだと ac というグローバル変数を使って、局所関数からその変数 ac を操作
するのと変わりませんよね。 class の意味がない気がします。定義どおりの意味で
言葉が使えてないかもしれませんが。回答よろしくお願いします。
0953デフォルトの名無しさん2017/01/30(月) 10:59:09.47ID:yJE2Vnji
>>948
試せばいいだろ4ねクズ
0954デフォルトの名無しさん2017/01/30(月) 11:05:01.89ID:yJE2Vnji
>>952
インデントぐらいつけろ(怒)
クラス名は大文字で書け(涛{)
変数末シに__つけるこbニを知っとけ(涛{)self.__c
pythonではprivateは存在しないことをいい加減わかっとけ(怒)
0955デフォルトの名無しさん2017/01/30(月) 11:48:47.74ID:+k/sSW9E
 ありがとうございます。 Python 特有の問題だったんですね。そして self.__c とす
ることで明示するということですか。

 インデントはタブを付けてたんですが 2ch の仕様で消えてしまいましたw
0956デフォルトの名無しさん2017/01/30(月) 12:52:52.72ID:w//YAAoE
無理もないよ
他のOO言語経験してたらpythonのOOは違和感ある
ユーザーの良識を信じた性善説のカプセルということで
0957デフォルトの名無しさん2017/01/30(月) 13:05:04.32ID:fttlssKg
読み取り専用のフィールドを作りたかったらpropertyを使う
下の例だとa.propに代入しようとしたところでエラーになる

class C:
 def __init__(self, value):
  self.field = value
 @property
 def prop(self):
  return self.field

a = C(100)
print(a.prop) # 100と表示
a = C(200) # 変数に再代入することを阻止する方法はPythonにはない
a.field = 300 # これはOK
a.prop = 400 # これはエラーになる
0958デフォルトの名無しさん2017/01/30(月) 13:41:34.99ID:7sKSR5XP
>>951
ふーむ。python3.5→3.6になったときにデフォルトコードまわり変わったんですね
ちょっと色々試したけどpy3.5&atomのide-terminalが上手く動かなかったんで
Anacondaにpython3.6乗るまで待つことにします(ちょうどanaconda4.3もうすぐ来るっぽい?
0959デフォルトの名無しさん2017/01/31(火) 01:17:38.29ID:vkUHnqGo
awsのubutsuでPythonのスクリプトをcronで実行させてるのですが、たまにエラーで最後まで処理されていない事があります
そういった場合のエラーログってどこを見ればいいですか?
0960デフォルトの名無しさん2017/01/31(火) 03:21:39.82ID:SZ8YrWi+
Linuxのログは、/var/log/syslog/, /var/log/messages/ など、/var/log/ 以下かな?

他に、cron, Pythonで、別の場所に書いているかもしれない

cronの環境変数PATHは、一般ユーザーよりも少ないから、皆エラーに合う。
cronあるある
0961デフォルトの名無しさん2017/01/31(火) 08:16:09.48ID:vkUHnqGo
>>960
cronの環境変数PATHは、一般ユーザーよりも少ないから、皆エラーに合う。
↑
すいません、これってどういう意味ですか?
0962デフォルトの名無しさん2017/01/31(火) 08:35:24.93ID:EulnTpRn
cronの環境変数PATHが、一般ユーザーよりも少ないという意味だろ
何がわからないんだ
環境変数か?PATHか?一般ユーザーか?それともPATHに対して少ないと表現することか?
0963デフォルトの名無しさん2017/01/31(火) 08:48:00.23ID:AhlWkjVU
一度cronでenv実行して出力を確認するとよいだろう
0964デフォルトの名無しさん2017/01/31(火) 09:00:18.02ID:mJ9rBlYc
>>962
一般ユーザーよりも少ないという意味です
0965デフォルトの名無しさん2017/01/31(火) 09:55:31.81ID:EulnTpRn
>>964
cronの環境変数のPATH
ユーザーのターミナルの環境変数のPATH
両者の個数を比較したとき前者のほうが少ない

という意味
0966デフォルトの名無しさん2017/01/31(火) 10:13:58.95ID:x/gxapyj
一般ユーザの $PATHが空文字列の場合には、cronの環境変数PATHは、一般ユーザーよりも少なくないので、解らなくて当然だよな。
というか、質問内容と直結しない回答を返すな。
0967デフォルトの名無しさん2017/01/31(火) 14:52:16.71ID:z3P+Lqj+
>>959
まずはエラーを貼れ
(logの場所すらクグれないアホがlog見ても時間の無駄だろjk)
0968デフォルトの名無しさん2017/02/02(木) 00:39:15.89ID:L+tAG+MQ
100万リクエストを1秒でさばけるらしいけど
https://medium.com/@squeaky_pl/million-requests-per-second-with-python-95c137af319#.9x14xyla2
0969デフォルトの名無しさん2017/02/02(木) 00:46:20.69ID:6JPi9R+M
じゃC使えば1000000億千万リクエストくらい裁けそうだな
0970デフォルトの名無しさん2017/02/02(木) 00:58:47.39ID:4EL6pZGW
今、pythonやるならデータ解析でしょ。
jupyterってやつ使うと結構楽しくできそう
http://www.websuppli.com/datascience/676/
0971デフォルトの名無しさん2017/02/02(木) 08:25:32.59ID:eVnkZAIh
それは2年くらい前から耳が腐るほど聞いたよ
0972デフォルトの名無しさん2017/02/02(木) 08:33:11.75ID:n3kNrA44
>>877
つまり、彼は既に失敗したんだよ
南無南無
0973デフォルトの名無しさん2017/02/02(木) 08:34:44.35ID:n3kNrA44
>>878
pythonのオブジェクトの等価性はカスタマイズ可能だからね
0974デフォルトの名無しさん2017/02/02(木) 11:35:10.78ID:C3VeQWLx
>>970
ドヤ顔で書き込みに来たの?ねえねえPythonはじめたばかり?
0975デフォルトの名無しさん2017/02/02(木) 11:45:32.83ID:uye9Sri7
>>974
超初心者スレだから、何が問題なの?
君は熟練者なんでしょ? じゃあ、君の取る態度は超初心者の面倒を見るか、黙ってるかどっちかなんじゃないの?
0976デフォルトの名無しさん2017/02/02(木) 12:02:30.49ID:fddRASbF
お腹空いた
0977デフォルトの名無しさん2017/02/02(木) 16:31:42.31ID:5BscWSGx
ブログの宣伝やろ
0978デフォルトの名無しさん2017/02/02(木) 23:51:56.84ID:1pM+gvmw
データサイエンス分野でのRubyの逆襲が始まった

http://www.s-itoc.jp/report/reaserch_results/439
0979デフォルトの名無しさん2017/02/03(金) 00:05:37.94ID:hFl/emin
あんな何通りも書き方のあるゴミいらんわ
0980デフォルトの名無しさん2017/02/03(金) 09:11:58.22ID:4ah6azAT
最近データサイエンス勉強会に行ったら講師が
「今はRの方が使うケースが多いが5年、10年で考えると将来はPythonになる」
って言ってた
0981デフォルトの名無しさん2017/02/03(金) 16:18:47.55ID:Jl+ODihZ
>>979
ぱいちょんも何通りにも書けますが
0982デフォルトの名無しさん2017/02/03(金) 17:06:32.80ID:exVIRWS1
まあRubyも嫌いじゃないよ
まともなライブラリちゃんと揃えたら使ってやってもいい
0983デフォルトの名無しさん2017/02/03(金) 17:21:03.78ID:o+jvYSTV
インフラ側は、JavaというかApacheの独壇場なおかげで、
RubyなんかよりScalaの方が遥かに可能性高いだろ。
0984デフォルトの名無しさん2017/02/03(金) 19:18:02.95ID:AJ3KjdBu
Rubyなんて所詮Webサイト作成用言語
PHPが出来るならRubyなんて覚える必要ない
Rubyなんてrailsの人気が終わったらオワコンだから
PHPのほうが仕事がある
0985デフォルトの名無しさん2017/02/03(金) 21:37:02.36ID:HLUtHxR2
最近本屋さんに並んでいるオライリーのデータマインニング、AI、統計関連の書籍はほぼPythonが使われているようだけど、やっぱ時代はパイチンくんですね。
0986デフォルトの名無しさん2017/02/04(土) 00:43:48.41ID:Op+daOjJ
PHPだけはガチでありえない
1度使ったら2度と使う気にならない
保守でどうしもなく使わされるならまだ理解できなくないが
今さら新規で選択するとか、正気じゃないわ
0987デフォルトの名無しさん2017/02/04(土) 00:48:03.28ID:PcwerU6k
そういうの要らないわいちいち対立煽りたいだけのやつ
他所の言語をdisる必要ない、不満があるならその言語のスレでやってださい
0988デフォルトの名無しさん2017/02/04(土) 00:55:47.93ID:Op+daOjJ
対立でもdisでもない
ただの事実だ
0989デフォルトの名無しさん2017/02/04(土) 01:43:02.70ID:iy9Bpcd/
別に言語に限らないが、何かを評価するときに「比較する」というのは大事な
プロセスだと思うが、なんか2ちゃん脳だと比較するのはマジで良くないこと、
とか思ってる奴ほんとにいるよなw
0990デフォルトの名無しさん2017/02/04(土) 01:54:52.59ID:VwNoUDgI
くだスレでは良くないかもしれんね。
0991デフォルトの名無しさん2017/02/04(土) 02:50:09.54ID:5i6jjq4s
>>989
良いか悪いかはどうでもいい
今すぐ死ね
0992デフォルトの名無しさん2017/02/04(土) 06:22:42.98ID:LAgsqyPI
ありえないとか使う気にならないとか
そんなのは比較・評価ではなく
子供が好き嫌いで駄々こねてるだけ
0993デフォルトの名無しさん2017/02/04(土) 09:44:40.25ID:ciJan/WZ
慣れ
0994デフォルトの名無しさん2017/02/04(土) 09:53:54.73ID:0kBi2+7r
perlから入ったからメモ帳で乱書きできなくて
毎日、頭に来てた。

今でもちょっと、ムカァっとする事があるけど、$
入れなくて良いから速度は出るな……とか、思ってたり、初心者用の問題解くのに
ちょうど良いとか考えてる

数学だけは本当に難しい
0995デフォルトの名無しさん2017/02/04(土) 10:35:56.32ID:Op+daOjJ
>>992
ここで比較・評価垂れ流したら、それこそスレチのガキだろ
一般的結論を簡潔に述べただけだよ
ペチパーはゴミ屑
これは嘘偽りないただの事実
0996デフォルトの名無しさん2017/02/04(土) 10:49:27.11ID:koQjiQcQ
>>984
おしい
最初の一行と最後の一行だけは同意
0997デフォルトの名無しさん2017/02/04(土) 11:09:19.55ID:koQjiQcQ
くだすれPython(超初心者用) その32
http://echo.2ch.net/test/read.cgi/tech/1486173667/
0998デフォルトの名無しさん2017/02/04(土) 11:27:12.57ID:pJMir97a
>>995
すれたい読んで二度と来るな、ボケ
0999デフォルトの名無しさん2017/02/04(土) 11:51:50.46ID:Op+daOjJ
>>998
「PHPが良い」なんて嘘・勘違いを、平気で発信する犯罪者、見過ごせないだろ
スレの場所の問題じゃない

俺はみんなに不幸になってほしくないんだ

だから何度でも言うよ
PHPはゴミだ
有害放射性物質毒糞尿吐瀉塵屑悪不良廃棄汚染疫病公害膿蛆
1000デフォルトの名無しさん2017/02/04(土) 11:52:12.65ID:Op+daOjJ
ペチパーはみんな死んで、どうぞ!
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 114日 22時間 17分 23秒
10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

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

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