[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 04/08 07:38 / Filesize : 228 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれPython(超初心者用) その16



1 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 16:36:03.35 ]
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その15
toro.2ch.net/test/read.cgi/tech/1350718465/
関連スレ
Pythonのお勉強 Part48
toro.2ch.net/test/read.cgi/tech/1358750040/
【実験台】 Python 3.0 のお勉強 Part 1 【非互換】
toro.2ch.net/test/read.cgi/tech/1235050215/
◆関連リンク
Python の Home Page
ttp://www.python.org/

586 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 01:38:09.21 ]
>>584
現実が見えてない馬鹿はお前な

587 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 07:28:18.97 ]
wxPython のエラーが表示されるwxPython: stdout/stderr ウィンドウが
応答なしになってデバッグしづらいです。
応答なしにならないようにする、または出力先を idle に変えるような方法はありますか?

環境は win7 64 bit, python 2.7.3, wxPython2.8-win32-unicode-2.8.12.1-py27 で idle から実行しています。
例えばフレームのタイトルに "日本語文字列" などを unicode にしていない場合のエラーでも
wxPython: stdout/stderr ウィンドウが応答無しになりエラーメッセージがスクロールすらできません。

588 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 09:41:17.49 ]
>>587
pyscripterならwxのエラーも出てるけど

589 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 09:56:25.70 ]
>>855
PyScripter-v2.5.3-Setup.exe からインストールしてやってみました。
こちらだと例外ダイアログは正常に閉じれますが、別に表示される wxPython: stdout/stderr は
マウスを近づけただけで応答なしになってしまいます。

590 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 09:58:39.00 ]
コマンドプロンプトからスクリプトを実行したらどうなるの?

591 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 10:54:35.03 ]
>>590
python test.py として実行したら、 wxPython: stdout/stderr ダイアログは表示されませんでした。
エラーメッセージがコマンドプロンプトに表示されましたが、ダイアログに表示されたものではありません。
もしかしたらダイアログに表示される最初のメッセージなのかもしれません。

>>588
バグの原因は文字コードではなく未定義の配列要素へのアクセスが原因でした。
修正したあと別のエラーによってダイアログが表示されましたが、固まらずにエラーログが表示されました。
バグの内容によって応答なしにはならないので、このまま PyScripter を使おうと思います。ありがとうございました。

592 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 11:03:53.24 ]
>>591
www.wxpython.org/docs/api/wx.App-class.html#__init__
redirectをFalseにするとウインドウが出なくなる

593 名前: 忍法帖【Lv=5,xxxP】(1+0:5) [2013/03/16(土) 11:59:06.25 ]
みんな何で書いてる?Eclipse?

594 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:01:57.36 ]
>>593
Eclipse + PyDev + CVS



595 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:07:11.46 ]
xyzzy

596 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:09:19.21 ]
>>581
3.xは文字コード周りが「枯れてない」ので
どっちも面倒くさいことになるのはいっしょ。
まだ対処可能なケースの多い2.xの方がマシ。
3.3でかなり改善はされたけど、
おかげでバグが激しくて3.3.1待ちの状態。

597 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:11:50.28 ]
2.7でも3.2でも文字コード廻りで対処できなかったケースないわ
3.3はまだ地雷だけど

598 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:13:40.34 ]
馬鹿には無理

599 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:23:02.03 ]
と馬鹿が申しております

600 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 12:39:23.24 ]
あららー?

601 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:00:05.50 ]
間もなく6ヶ月なのに、まだrcの気配もないよ>3.3.1

602 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:07:24.38 ]
2.xの文字コード周りが明らかに糞仕様だと認めない人が何を言いたいのか殆ど理解できない

603 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:07:26.72 ]
>>593
emacs + auto-complete

604 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:09:30.05 ]
枯れてる枯れてないの議論をすれば、確かに2.xの文字コードは腐りきってるけど、糞仕様には変わりないんだよ



605 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:26:56.28 ]
自分が扱えるから糞仕様じゃないって事じゃね
100回まわさないと水が出てこない蛇口でも使えるから糞仕様ではないって言うよ、たぶん

606 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:52:22.79 ]
初心者なのでPyScripterでやってます・・・

607 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 13:53:47.76 ]
PyScripterはWin限定だからスルーされがちなだけで無茶苦茶優秀なエディタ

608 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 14:19:20.83 ]
>>593
Notepad++ プラグインのPython Scriptを入れて

609 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 15:50:27.76 ]
NppExecプラグインは便利

610 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 16:04:07.24 ]
F6
python $(FULL_CURRENT_PATH)
Enter

611 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 16:08:55.25 ]
一行目に NPP_SAVE を加えれば Ctrl+S の手間も省けるしね

612 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 16:54:14.17 ]
>>609 >>610 それも使っています。ほんと便利です。
>>611 知らなかった。やらせてもらいます。

613 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 19:16:55.47 ]
PythonはWindowsもちゃんとサポートしている言語ですか?
RubyみたいにWindowsは中途半端にサポートしてますか?

614 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 19:18:30.89 ]
今からdocs.python.jp/3.3/tutorial/index.htmlみて勉強します



615 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 19:18:50.74 ]
Rubyよりは相対的にマシだけどそれでも開発者からは嫌われてる

616 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 19:55:49.76 ]
docs.python.jp/3.3/using/windows.html

617 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 20:02:20.03 ]
Windowsベッタリで行くならIronPythonもあり
2.7ベースだけど

618 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 20:29:54.24 ]
IronPythonでimport zlib, sqlite3とかできるの?

619 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 21:21:18.30 ]
Linuxでpythonを勉強しはじめました。
ncursesを使った簡単なプログラムを作りたいと思ったのですが
その簡単なサンプルみたいなものも情報も少なく感じています。
何かおすすめみたいのがあれば教えてください m(_ _"m)

620 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 21:25:06.62 ]
馬鹿には無理

621 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 21:38:22.66 ]
そんなひどい

622 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 21:41:30.46 ]
>>618
一応Cのライブラリには対応してたはず
最悪.NETのライブラリも使える

623 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 21:48:20.04 ]
所詮インタプリタの再実装なのになぜ対応しないと思ったのかよく分からない
pastebin.com/8CgSPDJ0

624 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 22:55:41.89 ]
たしかtkinterはデフォルトで無かったけど、
GUIは.NETの使えば良いかなーって感じ



625 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 23:01:20.06 ]
>>619
プログラミング初心者の俺でもそのくらい分かる

626 名前:デフォルトの名無しさん [2013/03/16(土) 23:21:57.85 ]
3系の質問です。

L = []

for i in range(10):
L[i] = "abc" + str(i)
print(L)

上記を実行して以下のようなリストを作りたいのですがうまくいきません。

["abc0","abc1","abc2",…,"abc9"]

どうすれば意図する事が出来るでしょうか?

627 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 23:22:59.57 ]
L = ["abc" + i for i in range(10)]

628 名前:デフォルトの名無しさん mailto:sage [2013/03/16(土) 23:37:04.33 ]
方法は3つ
(1) L = [] → L = [None]*10
(2) L[i] = "abc" + str(i) → L.append("abc"+str(i))
(3) >>627 ( i をキャストしてないけど)

(3)のリスト内包表記がベスト
あと、文字列の結合は ''.join(list) を使ったほうが良い

629 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 15:23:33.27 ]
つかバージョン関係ねえ

630 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 15:50:48.92 ]
pass

631 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 16:31:44.16 ]
L = [''.join(['abc',str(i)]) for i in range(10)]

632 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 16:36:21.58 ]
map(lambda x:'abc%02d'%x, range(20))

633 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 16:42:13.81 ]
joinは汚ない。10回程度なら書きやすさ読みやすさを考えて + でも全然いいよ

634 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 16:53:45.11 ]
何回程度ならダメなんだよ



635 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 16:54:22.83 ]
女陰は汚い。

636 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:18:07.66 ]
pass

637 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:31:54.49 ]
>>626
L = ["abc%d" % i for i in range(10)]

638 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:41:28.13 ]
なぜ人が書いてることをまた書くのか

639 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:42:34.32 ]
脳が腐敗してるから

640 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:54:17.19 ]
L = map(lambda x:'abc%d'%x,range(10))

641 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:57:47.03 ]
["abc{}".format(i) for i in range(10)]
list(map("abc{}".format, range(10)))

642 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 17:58:56.75 ]
もういいぞクズ

643 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:00:48.44 ]
TIMTOWTDIですね。わかります

644 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:03:20.59 ]
同じこと連呼してドヤ顔とか…
データ構造やアルゴリズムを変えてみてから言えよ



645 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:04:30.87 ]
文字列リテラルにメソッド呼び出しするの気持ち悪い

646 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:06:27.65 ]
オブジェクトがメソッドを持つのは当然のこと

647 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:17:59.54 ]
手続き脳にオブジェクト指向やらすと起こる定番の拒否反応

648 名前: 忍法帖【Lv=6,xxxP】(1+0:5) [2013/03/17(日) 18:26:55.10 ]
ファイル一覧に対して何か処理するメソッドを作成したいです。

cl.ly/code/3R0f3S2I161j

サブディレクトリ含む場合は出来るのですが、サブディレクトリなしの場合が出来ません。

こんなエラー
cl.ly/text/2e0F0Q101l3c

どこがダメでしょうか。

649 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:33:40.26 ]
map関数は気持ち悪いなあ
どこがどうと言えないのだけど

650 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:37:08.01 ]
オブジェクト脳に関数型やらすと起こる定番の拒否反応

651 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:39:01.59 ]
>>648
os.path.joinの第二引数がリストになってるよ

652 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:39:13.06 ]
map, filter, reduceに慣れてないだけw

653 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:39:25.63 ]
論理的には文字列にメソッドは気にならないんだけど
コードの見た目が壊滅的に気持ち悪い
記号の演算子乱用する言語と同じくらい気持ち悪い

654 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:40:55.64 ]
なぜ気持ち悪いのか、どう気持ち悪いのか言えよ。ただの馬鹿じゃん



655 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:44:06.71 ]
mapは文字通り集合から集合への写像なのに何が気持ち悪いのか理解不能

656 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:45:38.30 ]
生理的嫌悪感を感じるんだ
これは不細工が嫌いとかそういうレベルの感情だからどうしようもない

657 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:46:29.71 ]
それならpythonを使うべきではないね。仕事なら別だが

658 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:50:46.49 ]
mapは気持ちわるくないけど
map("abc{}".format, range(10)) ともなると
"abc{}".format のアリティが文字列リテラルの中の {} の数によって決められるのがあれかも

659 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:51:18.44 ]
map()が気持ち悪いってプログラミングセンス皆無だぞ

660 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:52:44.49 ]
append とか join はぜんぶ関数にしてほしい。

append(lst, elem)

join(lst1, lst2)

とかしたい。

661 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 18:59:41.74 ]
>>660
joinを呼ぶ文字列は区切り文字であってリストじゃない
つまりlst1とlst2を連結するメソッドではない

662 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:00:51.44 ]
アホか
むしろシーケンスがlenメソッド持つべきだろ
頭湧いてんのか

663 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:03:18.84 ]
>>661
文字列の連結は + にしてほしい。

str1 + str2

664 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:04:40.22 ]
えっ?



665 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:05:45.15 ]
えぇ

666 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:06:21.59 ]
もともとそうだったか。

667 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:06:27.70 ]
>>663
だからそれは出来るだろ。処理系によって滅茶苦茶おそくなるが
というか、お前はPythonやオブジェクト指向言語を使わないほうが良いと思う
まあ、オブジェクト指向だからこそ演算子のオーバーロードができるわけだから
もうプログラミング辞めたほうがいいと思う

668 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:06:40.09 ]
この程度の頭で喋ってるのかい。

669 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:08:02.96 ]
呆れたからご飯のし支度でもするわ

670 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:08:50.54 ]
# unko.py
def append(a, e):
a.append(e)
def join(s, a):
s.join(a)
def map(*a, **b):
raise Exception('Hey motherfucker! Do NOT use "map" function.')

from unko import *

671 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:12:08.76 ]
>>627
>>628

ありがとうございます。

リスト末尾への追加はappend()を使うんですね。すっかり頭から抜けていました。

(1)のL = [None]*10
を使って最初のループに当てはめてみてもうまくいきました。

メソッドを使わずに代入だけでリスト内の構成を変えようとした事が失敗の原因だったんですね。

まだ内包表記まで進んでいないので内包表記は後日見直してみます。

本当にありがとうございました。

672 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:21:35.26 ]
>>670
append([1, 2, 3], 4) の結果はどこに行くの。

673 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:28:36.77 ]
どっか行くの?

674 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:37:07.83 ]
>>659
何で?
こんな変な動作をする関数は
Cなどの従来一般的な開発言語にはないでしょ。



675 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:38:17.94 ]
append(a, e)のaやreturnを書き忘れるあたりおそらくRuby初心者スレじゃないかと思う

676 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:40:54.31 ]
>>674
残念ながらC言語以前からありますw

677 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:42:12.69 ]
list.sort()とsorted(list)の違い

678 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:44:26.62 ]
lispってCより15年近く古いよね

679 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:49:47.71 ]
>>673
append([1, 2, 3], 4) に返して欲しいのは [1, 2, 3, 4] だよ。
implicit に a を書き換えるんじゃなくて。
関数定義するならこんな感じ。

def append(a, e):
 return a + [e]

680 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:51:13.44 ]
map関数がやってることもこれとほぼ同じなんだけど何故かしっくりこないらしい
人間の脳味噌って不可思議だね

681 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:52:03.61 ]
>>679
その関数に何の意味があるんだ…

682 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:58:51.65 ]
>>681
じゃあ、a.append(e) に何の意味があるんだ?

683 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 19:59:22.36 ]
>>680の言う「これ」ってどれ?

684 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 20:02:16.89 ]
>>682
aのメソッドであることに意味がある
>>660みたいな馬鹿には一生わからないだろうが



685 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 20:02:38.43 ]
とりあえずうるさいから全員黙れ
嫌なら使うのやめろ
士ね

686 名前:デフォルトの名無しさん mailto:sage [2013/03/17(日) 20:04:33.84 ]
>>684
a のメソッドであることにどんな意味があるの?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<228KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef