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


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

Pythonのお勉強 Part22



1 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 21:49:38 ]
Python オフィシャルサイト
www.python.org/
日本Pythonユーザ会
www.python.jp/Zope/
FrontPage - Pythonのお勉強
python.rdy.jp/
前スレ
pc11.2ch.net/test/read.cgi/tech/1192884897/

◆関連スレッド

Microsoft IronPython 1.0
pc11.2ch.net/test/read.cgi/tech/1157686822/
Python の宿題ここで答えます Part 1
pc11.2ch.net/test/read.cgi/tech/1153585095/
2ch検索: [python]
find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python

◆関連サイト

Python ドキュメント
www.python.jp/doc/release/
Index of Python Enhancement Proposals (PEPs)
www.python.org/dev/peps/
参考サイト - Pythonのお勉強
python.rdy.jp/wiki.cgi?page=%BB%B2%B9%CD%A5%B5%A5%A4%A5%C8
.

596 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 02:12:26 ]
いや、そんな直訳で受け取られても…。
>>587>>582に対する皮肉として書かれたんだろうし。

597 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 02:15:56 ]
文法的に間違っている英文なんて直訳すらできないだろ(wwwwwwwwwwwwww

598 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 02:23:46 ]
firefoxでURLを開くことを試しています。環境はUbuntu7.04です。
成功
os.system("firefox yahoo.co.jp")
subprocess.Popen(["firefox", "yahoo.co.jp"])
subprocess.call(["firefox", "yahoo.co.jp"])
失敗
os.spawnlp(os.P_WAIT, "firefox", "yahoo.co.jp")
os.spawnlp(os.P_NOWAIT, "firefox", "yahoo.co.jp")
なぜspawnだとうまくいかないのでしょうか。

599 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 02:25:17 ]
>>596
だから中学生からやりなおせって(WWWWWW

600 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 03:49:15 ]
print 'a','b'

ってやるとaとbの間に空白が入って「a b」って出力されるけど
この空白を挿入させないようにする方法ってありませんか?

601 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 03:55:36 ]
print 'a' + 'b'
区切りで半角スペースが入るのは仕様ってどっかに書いてた。

602 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 04:15:01 ]
>>601
トンクス。
仕様なら諦めます。

603 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 04:19:54 ]
printうんぬんの話題を見てて思うのだが、
これって対話モード時のリターン値の"表示"の延長であって、
プログラムの"出力"用途じゃない希ガス。


604 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 04:54:00 ]
>>598
質問からは少しずれるけど
標準ライブラリにwebbrowser.open(url)っていうのがあるよ。
2.5からはブラウザのタブにも対応してる。



605 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 07:25:37 ]
前スレ
pc11.2ch.net/test/read.cgi/tech/1192884897/

547 :デフォルトの名無しさん:2007/11/18(日) 21:51:04
printで一文字ずつ表示させると、間にスペースであいてしまうのはなぜ?

例)
x="hoge"
for y in x:
print "%c" % ord(y),

出力:
h o g e

548 :デフォルトの名無しさん:2007/11/18(日) 21:56:38
print i, j, k, l としたときに見やすいから


549 :デフォルトの名無しさん:2007/11/18(日) 22:10:06
printは主にデバッグ用だから


くっつけたいなら、print''.join("%c" % ord(y) for y in x)

550 :デフォルトの名無しさん:2007/11/18(日) 22:15:11
sys.stdout.write()でもいいよ


606 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 13:20:54 ]
Python3.0では

print(1,2,3) # 1 2 3
print(1,2,3,sep='') # 123
print(1,2,3,sep='|' # 1|2|3

607 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 14:34:19 ]
)

608 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 14:37:01 ]
python で書かれた 2ch ブラウザってありますか?

609 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 14:46:45 ]
昔あったな

610 名前:デフォルトの名無しさん [2007/12/30(日) 16:02:26 ]
webprogramを書くにあたっての
python特有の強みって何ですか?

611 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 16:03:10 ]
特にありません

612 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 16:56:29 ]
WebアプリケーションでPHPとPythonどっちがいい?

613 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 17:16:26 ]
PHPに決まってるだろハゲ

614 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 17:23:36 ]
PHPはなんちゃって仕様が多すぎていややもう



615 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 17:24:11 ]
あえて挙げるならASP

616 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 17:31:46 ]
>>614
kwsk

617 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 20:52:49 ]
外人のPythonの発音がどうしてもパイパンにしか聞こえません><

618 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 21:04:20 ]
>>617
耳がわるいもしくは脳内エロ辞書が充実しすぎ。

619 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 21:13:01 ]
>>480
VS2008だとRuntimeErrorが発生してVS2003でコンパイルしてくださいというエラーメッセージが表示される。

620 名前:デフォルトの名無しさん [2007/12/30(日) 21:17:56 ]
>>600どれでも好きなの使へ
print 'a''b'
print 'a' 'b'
print 'a'+'b'
print '%s%s'%('a','b')

621 名前:デフォルトの名無しさん [2007/12/30(日) 22:07:35 ]
Microthreadを使いたいんだけど、Stackless Pythonとgreenletだとどれぐらい速度が違うの?
たぶんStacklessのほうが速いと思っているんだけど。

622 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 22:15:48 ]
>>612
ttp://q.hatena.ne.jp/1198821703

623 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 22:18:22 ]
またruby厨かよ、もういいよ

624 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:02:20 ]
pythonでmdbに接続するにはどうしたらいいのでしょうか?
win32com?



625 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:12:03 ]
「pythonで」の「で」って何よって話

import win32com.client
import adodb

OpenOffice.org Scripting with Python



626 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:28:03 ]
説明不足ですまんこ

pythonを使ってMSAccessを操作したいのです。
INSERTなどはどうしたらいいのでしょう?

ちなみにみなさん開発環境ってなに使ってます?
やっぱりテキストエディタ?


627 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:33:38 ]
>>626
ttp://xwave.exblog.jp/6474694/

628 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:46:12 ]
pythonからmdb操作とか需要ないのかね・・・

説明少なすぎて解りません。
実力がないだけか

629 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 10:50:58 ]
win32comで繋ぎに行くだけであとはVBからやるのと大差ないんだが
そのwin32comの説明が少ないという罠

単にDB使いたいだけならSQLite使っちゃうしね

630 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 11:14:25 ]
既にmdbを使用してる状況なのでSQLLiteっていう選択肢はないので・・・

詳しい説明が掲載されている場所はないですかね?

631 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 11:18:44 ]
つか、何が分からんのか分からん。

632 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 12:07:24 ]
xwave.exblog.jp/m2007-02-01/

633 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 12:22:37 ]
cn = win32com.client.Dispatch('ADODB.Connection')
cn.Open('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb')
cn.Execute(u"insert into 日本語テーブル (fileda, fieldb, 日本語フィールド) values (%d, '%s', '%s')" % (5, '6', u'七'))
rs = win32com.client.Dispatch('ADODB.Recordset')
rs.Open(u'select * from 日本語テーブル', cn, 1, 3)
while not rs.EOF:
print '%d, %d, %s, %s' % (rs.Fields('id').Value, rs.Fields('a').Value, rs.Fields('b').Value, rs.Fields(u'日本語フィールド').Value, )
rs.MoveNext()
rs.Close()
cn.Close()

634 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 12:54:31 ]
おぉ、コード書いてもらえると解りやすか!

pythonはじめたばかりだけど、みんなどんな用途に使ってる?



635 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 13:09:58 ]
バッチ処理に関数計算機にGUIアプリにwebアプリに…
ようするになんでも。

636 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 15:07:17 ]
テキスト処理周りでいろいろ。

637 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 18:19:39 ]
単調な作業とかをこなすときに、小さなツールガリガリ書いてる


638 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 19:22:50 ]
僕たちが従事するドカタ仕事には欠かせないアイテムですね!

639 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 20:43:29 ]
俺はドカタ仕事はJava使ってるので
Python弄ってると心が癒される

640 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 20:58:23 ]
>>639
ドカタ乙(wwwwwww

641 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 21:29:41 ]
>>639
会社で年越しでつか?

642 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 21:52:43 ]
そうです

643 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 22:03:04 ]
使い捨ての低賃金労働者が、会社で年越しか。
Pythonで憂さ晴らしでもしないと、やってられないよね。

644 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 22:12:36 ]
職業人はマ板いってくれんか



645 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 22:14:06 ]
そうそう。
ここはニートでPython覚えればGoogleに入れると信じて疑わないメルヘン専用のスレですよ。

646 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 23:07:05 ]
x メルヘン
o メンヘル


647 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 23:32:03 ]
幾スレにも渡ってメルヘンと書き続けて来た>>645
よいお年を

648 名前: 【大吉】 【233円】 mailto:sage [2008/01/01(火) 00:07:51 ]
ことよろ


649 名前: 【ぴょん吉】 mailto:sage [2008/01/01(火) 00:09:32 ]
ことしもPythonよろ

650 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 00:11:36 ]
あけおめ
Python3000とそれに隠れがちなPython2.6に期待

651 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 00:22:47 ]
会社で年越しでつ
ことよろ

652 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 04:45:59 ]
Python2.99999....とかで止まらないかなぁ。

653 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 05:41:10 ]
2.999... という循環小数は 3 と等しいんだぞ。

654 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 05:44:51 ]
2.9.6
2.9.7
2.9.8
2.9.9
2.9.9.1
2.9.9.2
...
2.9.9.9
2.9.9.9.1
...
2.9.9.9.9




655 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 06:10:11 ]
2.999....999...
==
3.1.0 !!!

656 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 07:31:33 ]
おめでとうございます

657 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 09:02:20 ]
>>655
それはない

2.6の次の2.7で2.xシリーズは終わりで、
メンテナンスリリースが2.7.1.8.2.8... という妄想ならしたことある

658 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 09:25:33 ]
なにそのMETAFONT

659 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 13:56:21 ]
>>652
それはRubyで期待しろwww

660 名前:デフォルトの名無しさん [2008/01/01(火) 21:27:28 ]
py***/&+

661 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 18:23:26 ]
defFnRule = "([0-9][0-9])__(.*)"
ldir = os.listdir( os.getcwd() )
for fn in ldir:
  chk = re.match( defFnRule, fn )
  if chk != None :
    matchList = re.findall( defFnRule, fn )
    newName = matchList[0] + "_" + matchList[1]
    print "New:>> [%s]" % newName

こんなコード書くと、
newName = matchList[0] + "_" + matchList[1]
ここで怒られるんだが…
連結できるのはstrではなくタプルだ…って意味が良く分からんのですが…。

662 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 18:48:30 ]
>>> import re
>>> L = re.findall('(\d\d)__(.*)', '00__foo.txt')
>>> L
[('00', 'foo.txt')]
>>> L[0] + '_'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate tuple (not "str") to tuple

663 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 19:07:16 ]
>>662
ありがとう。いろいろいじってて、どうも根本的に二重リスト?みたいになってるのは理解した。

    n0 = matchList[0][0]
    n1 = matchList[0][1]
    newName = n0 + "_" + n1
    print "New:>> [%s]" % newName

こんな感じで稼働するのは確認。
でも、なんで二重になったのか、よくわからん。
python、悪くない感触なんだけど…うーん。

664 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 19:10:33 ]
newName = chk.group(1) + "_" + chk.group(2)



665 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 19:45:40 ]
>>663
defFnRule内に複数のグループがあるから

>>> import re
>>> re.findall("(.)(.)", "123456789")
[('1', '2'), ('3', '4'), ('5', '6'), ('7', '8')]

666 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 20:11:31 ]
>>663
つまりこんな感触だといいわけだなw

re_once : あるかないかだけの正規表現モジュール(新規)
re : re_onceに加えてnまで使える正規表現モジュール(既存)


ついでにfor、rangeとかも増やした方がいいな

for_once : 0(実行しない), 1(1回だけ実行)
for_n : 0(実行しない), 1(1回だけ実行), n(n回実行)

range_0() : []を返す
range_1() : [0]を返す
range_n(n) : [0,1,2...n-1]を返す


667 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 20:11:39 ]
>>664も書いてるように
いっぺんre.match()して結果chkを得てるのに
またre.findall()するのは如何なものか。

668 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 20:16:38 ]
>>661
ldirとかchkとか、わざわざ変数用意するの読みづらくね?

669 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 21:06:21 ]
その前に正規表現をコンパイルしろよ

670 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 22:21:47 ]
>>661
どこ出身だ
なんかmicrosoftのコードを思い出すんだが

671 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 22:24:30 ]
二重になってる理由は、つまり正規表現の処理対象にListが取れるから、でいいのかなぁ
いや、>>665見ると違うなぁ…。というか、これは俺が正規表現良く分かってないのも原因かな。

>>669
ごめん。でもファイル名の一括変更やるだけの作り捨てscriptだし、ついでにお試しでpython使っただけだから。
>>668
否定しないw
>>667
言われてみればその通りだなぁ。
要は条件に合わないファイルを無視しようとして、なんとなく書いてたらああなっただけで、他意はない。


672 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 22:25:51 ]
>>670
色々。C++、Java、PHPとか。
でも出身という話になると…N88BasicとかVBとかってあたりかも。
とりあえず、動いたんで、もう消えまする。
ありがとうございました。>皆様

673 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 22:43:24 ]
re.match でコンパイルされてキャッシュされるからいいじゃない

674 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 23:30:38 ]
>>673
前から気になってたんだけど、re.matchとかre.searchってコンパイルした正規表現をキャッシュしてくれるのかな?
それってどっかに書いてある?



675 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 23:41:02 ]
ソースに書いてある。


676 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 23:42:27 ]
re モジュール見るとキャッシュしてるね
ただ _MAXCACHE = 100 を越えるとキャッシュを全てクリアするようになってる

677 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 23:43:01 ]
re.py:

_cache = {}
_cache_repl = {}

_pattern_type = type(sre_compile.compile("", 0))

_MAXCACHE = 100

def _compile(*key):
    # internal: compile pattern
    cachekey = (type(key[0]),) + key
    p = _cache.get(cachekey)
    if p is not None:
        return p

678 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 11:01:39 ]
keyの計算の手間ぶん損してない?

679 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 16:19:59 ]
>>671
4. パターンにもっと力を
www.python.jp/Zope/articles/tips/regex_howto/regex_howto_4
Python reモジュールで使える正規表現演算子
www.kt.rim.or.jp/~kbk/regex/pythonre.html

>>> p = re.compile('(a(b)c)d')
>>> m = p.match('abcd')
>>> m.group(0)
'abcd'
>>> m.group(1)
'abc'
>>> m.group(2)
'b'

>>> m.groups()
('abc', 'b')

グルーピングまわりで躓いてると思う。match とか search の項目は
解説してるとこ多いけど よく使う findall はあまり解説されてない罠。
findall は厳密には正規表現にはカテゴライズされないからか…

680 名前:679 mailto:sage [2008/01/03(木) 16:50:03 ]
>>671
ttp://kazamachi.blogspot.com/
>具体的には、ElementPathはXPathを分解するのにre.filndall()メソッドを使ってリスト
>の要素としてタプルが含まれていることを期待しているのですが、IronPython 1.0.1の
>re.findall()メソッドはリストのみを返すためにエラーとなります。

ごめんたぶんグルーピング関係ないw

681 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 17:12:25 ]
なんという不思議レス

682 名前:679 mailto:sage [2008/01/03(木) 18:41:20 ]
>>> re.findall("(.)(.)", "123456789") ## [Tuple(g(0),g(1)),…]
[('1', '2'), ('3', '4'), ('5', '6'), ('7', '8')]

>>> re.findall("((.)(.))", "123456789") ## [Tuple(g(0),g(1),g(2)),…]
[('12', '1', '2'), ('34', '3', '4'), ('56', '5', '6'), ('78', '7', '8')]

>>> re.findall("(..)", "123456789") ## [g(0),…]
['12', '34', '56', '78']

やっぱグルーピング関係あるかも orz

683 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 18:43:39 ]
>>681
俺も勉強中なんよ(爆)
スルーしる

684 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 19:05:09 ]
ヒント: help(re.findall)



685 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 19:15:09 ]
>>682
グループの数によって変わる。
グループなし、グループ一つはマッチリストかグループリスト
>>>re.findall('test','testtesttest')
['test', 'test', 'test']
>>>re.findall('(tes)t','testtesttest')
['tes', 'tes', 'tes']
複数のグループはグループをタプルで返してマッチしたものをリストで返す
>>> re.findall('(t)e(s)t','testtesttest')
[('t', 's'), ('t', 's'), ('t', 's')]

686 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 19:24:47 ]
((.)(.)) グルーピングが三つ揃っておっPython

687 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 22:32:54 ]
誰か使いやすい開発環境教えてちょんまげ


688 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 22:43:52 ]
Pythonじゃないけど
某スレで脳内環境が最強だと話題になってた

689 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 22:45:37 ]
クセのある環境ばかりで使いづらい
みんなどんな環境?

690 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 23:06:50 ]
>>689
テキストエディタ(emacs or vi)

691 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 23:10:37 ]
クセありすぎだろそれ

692 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 23:47:05 ]
俺もvimなんだけど。最初はバカにしてたけど、
pythonに限って言うとかなり使いやすい。

693 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 23:53:56 ]
idleとpydevを使ってます
idleは軽くていいんだけど、補完がpydevに比べるといまいち
ただpydevはstdinとかのエンコーディングがNoneになっていて
文字コードの変換とかしたらこけて、その解決法が良く分からないのが難しい
このスレのPert20にその話題が出ているみたいなんですけど、誰か>>1のまとめサイトに
アップしていただけないでしょうか?

694 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 00:11:24 ]
>>692 vimで補完できる??



695 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 00:23:08 ]
俺はxyzzyでpy-modeだな

696 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 02:41:50 ]
ソースの中に日本語書かないならPythonWinで結構用が足りてる。

697 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 03:52:45 ]
>>694
もちろん。

698 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 05:01:34 ]
>>594
ようつべわらた

699 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 05:36:55 ]
みなさん4tabですか?2tabですか?

700 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 05:51:50 ]
デパは0.5mgでも4tabだと爆睡しちゃうので2tが限界かな

701 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 08:13:08 ]
>>697
vimの補完てomni?

702 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 09:36:03 ]
いろいろ試したけどPyDevの補完が最強

703 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 09:36:24 ]
>>699
4タブ

704 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 10:22:11 ]
>>702
Eclipseって起動もっさりしてね?



705 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 10:28:31 ]
どんなIDEでも基本的にはモッサリしてる

706 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 10:35:09 ]
Eclipseはプラグインしだい。
何も入ってないのを立ち上げたらびっくりするほど速かった。
立ち上げただけで何も出来なかったけど。

707 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 11:40:23 ]
How many projects do you open in same workspace ?

708 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 13:24:54 ]
>>707
14

709 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 13:25:59 ]
Zero, I mean I'm on wintervacation NOW (wwwwwww.

710 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 14:11:25 ]
みんなemacsかviだと思ってた
・・しかしpythonをeclipseで書くって凄いな。想像したことも無い
なんか嬉しい事ある?起動もっさりでイラつかない?


711 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 15:48:38 ]
>>710
CVSとかsvnとかとの連携が楽>eclipse

712 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 17:32:56 ]
>>711
710はソースコード管理をしない人なんだよ。
その必要がないんだろう。
なぜなら(ry

713 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 18:29:14 ]
emacs にも pcvs とか psvn とかあるのに…


714 名前:デフォルトの名無しさん mailto:sage [2008/01/05(土) 01:11:59 ]
>>710
さすがにviはないな。vimは良いと思うけど。

>>712
EclipseはJavaでは使うけど、他の用途では便利だとはおもわんなぁ。
cvs/svnクライアントも別にIDE連動である必要って感じないし。

でもまぁPythonはスクリプト言語にしては開発環境充実してるよね。
そうやってどれがいいとか選べるのも面白い。



715 名前:デフォルトの名無しさん mailto:sage [2008/01/05(土) 01:45:36 ]
vi

716 名前:デフォルトの名無しさん mailto:sage [2008/01/05(土) 10:53:04 ]
>>704
朝起きたら一度起動してずっとそのままだから

717 名前:デフォルトの名無しさん mailto:sage [2008/01/05(土) 12:47:17 ]
「経験上、ほとんどのプログラマは以下の『宗派』のいずれかに分類される」

経験カルト 最適化カルト 簡単カルト 高速カルト
不確実性カルト 完璧カルト カーゴ・カルト

ttp://slashdot.jp/developers/08/01/04/001246.shtml

718 名前:デフォルトの名無しさん mailto:sage [2008/01/05(土) 15:37:07 ]
俺は完璧カルトか・・・

719 名前:デフォルトの名無しさん mailto:sage [2008/01/05(土) 17:12:43 ]
元記事読んだけど、自分は簡単カルトだった。
Uncertainty Cultはカルトというよりはただの慎重派のような・・

720 名前:デフォルトの名無しさん [2008/01/05(土) 20:23:07 ]
macでpythonを始めました.
IDLEで日本語を扱えるようにするにはどうすれば良いですか?
お願いします

721 名前:デフォルトの名無しさん [2008/01/05(土) 20:26:57 ]
質問板で聞いてきます
スレ汚しすいませんでした

722 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 11:51:13 ]
これから勉強するならバージョン3系と2系どっちがいい?

723 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 12:05:00 ]
>>722
いまから始める程度の知識ならどちらも変わらない罠

安定しているor手に入っている処理系を使えばよかろ

724 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 12:51:39 ]
3で勉強は無理



725 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 12:54:13 ]
Py2.0 から Py3.0 への移植に当たって
/ 演算子の挙動変更が一番怖い。
気づかぬところで何かが起こりそうだ

726 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 14:23:15 ]
>>725
Introduction to Crunchy tutorial video - Crunchy - Learn: programming_tools, demonstration, open-source, cross-platform, interpreter, Python, interactive
showmedo.com/videos/video?name=1430000&fromSeriesID=143

切り捨て除算//が、普通の除算/になるんだっけか
どこに書いてあるんだ3.0の仕様とか,よくわからん

727 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 14:45:04 ]
この辺りじゃね?
ttp://www.python.org/dev/peps/pep-0238/
ttp://docs.python.org/dev/3.0/whatsnew/3.0.html

728 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 15:19:41 ]
py3000のやること、やらないことリスト
www.python.org/dev/peps/pep-3099/
www.python.org/dev/peps/pep-3100/

729 名前:デフォルトの名無しさん [2008/01/06(日) 16:06:13 ]
Alarm clock と表示されて終了してしまう場合,
何が問題でしょうか?
どの部分が問題なのかわからないので対処できずに困っています

730 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 16:17:37 ]
再現コードが張られないので対処できずに困っています

731 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 16:40:00 ]
>>726


732 名前:デフォルトの名無しさん [2008/01/06(日) 18:36:24 ]
「みんなのpython」 という本を買ったのですが
52pくらいで既に何をしてるか意味がわかりません。
そんな僕でも↑で挙げられていた「pythonで学ぶプログラム作法」
を理解することができるでしょうか?
他にも初心者に分かりやすい入門書があれば教えてください。

733 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 19:16:54 ]
>>732
Pythonの前に一般常識や日本語を勉強した方がいいと思うぜ。

734 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 19:27:53 ]
>>732
その本はたぶん一番易しい部類に入る。
もう一冊入門書を買うのは無駄だから、
何がわからないのか整理してからここで質問すべし。
あと対話型シェルでサンプルコードを試すこと。



735 名前:732 [2008/01/06(日) 20:51:17 ]
ありがとうございます!
頑張って理解できるようにしてみますっ!

736 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:45:38 ]
便乗
初めてのPython買ったんですが、
表紙の絵の意味がわかりません。
なぜねずみなんですか?

737 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:51:34 ]
Pythonクックブック(ウサギ)と並んで、蛇の獲物説が過去スレで言われていたな。

738 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 22:53:22 ]
日常の細々とした用途なら最初の50ページくらいで間に合うんだよ。
イテレータとかオブジェクト指向とかわざわざ使うこともない

739 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:09:59 ]
プログラミングPythonはヘビだからそれで我慢しる
あとはPythonシリーズ全部ヘビだと見分けが付かなくてよろしくないってのもあるかと

>>738
なんて本の最初の50ページ?

740 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:12:52 ]
>最初の50ページ
初めてのPythonならビルトインオブジェクトの項にすら入っていないな

741 名前:デフォルトの名無しさん mailto:sage [2008/01/06(日) 23:37:56 ]
みんPyで確認したらリスト操作の途中だった。
116ページまでは頑張ってみましょう。
みんPyは用例不足なんで、説明の手際はいいけど
プログラムが初めての人にはイメージ沸きにくいね

742 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 02:53:09 ]
ちょっと端末の再起動をpythonでやりたいのですが、どう書いたらいいのか教えてください

743 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 02:59:56 ]
>>742
> ちょっと端末の再起動
ここをもっと環境含めて明示的に書いたら教えてくれるかも。

744 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 03:11:32 ]
携帯のsymbianってOS積んでるX01NKなんです。他のNOKIAでも同じなんですが。。。
WMだと.netで簡単にできたのですが、pythonでもやろうとおもって適当に連想できるコマンドで書いても再起動できないのでどのように書いたらいいのかと思いまして




745 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 03:20:22 ]
X01NKって法人向け専用でしょ?
会社の端末で遊ぶんじゃありません。

746 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 03:25:46 ]
いえ、個人で買いましたよ。何せ学生ですからw

747 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 03:31:46 ]
ttp://slashdot.jp/~patagon/journal/413497


748 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 03:48:04 ]
ありです。
でも、それだと、ネットワーク越しのPCを再起動する方法っすよね?オイラがやりたいのは携帯自体を再起動させる方法なんす

749 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 06:03:15 ]
対象は決まってるんだし、元の方法からその指定部分削れる分、
かえって楽なコードじゃないかと思った俺素人

750 名前:デフォルトの名無しさん [2008/01/08(火) 11:28:43 ]
PyDev使ってる方で、IronPython 設定できた方いらっしゃいませんか?
設定しようとすると 以下のエラーが出ます。
...
eclipse\plugins\org.python.pydev_1.3.10\PySrc\interpreterInfo.py, line 15, in Initialize

  File , line 0, in __import__##4

ImportError: No module named os

調べてみたところ 環境変数 IRONPYTHONPATH に %PYTHONPATH%\Lib を 設定すると出来るらしいのですが、ダメでした。
参考:sourceforge.net/tracker/index.php?func=detail&aid=1535901&group_id=85796&atid=577329

よろしくお願いします。

環境
  WinXP
  Eclipse 3.3.1.1
  PyDev 1.3.10
  CPython2.5.1
  IronPython1.1



751 名前:750 [2008/01/08(火) 11:51:45 ]
>>750 です。
パソコン再起動したらできました。
Eclipse を 再起動してもできなかったのに。。。

スレ汚しごめんなさい

752 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 14:08:48 ]
>>751
ランチャーとかから起動すると、
ランチャーが起動したときの環境変数しかみなかったりするよ。

753 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 15:20:14 ]
×ランチャー
○ローンチャ

754 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:04:52 ]
>>753
△ゲンマイチャ



755 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:13:50 ]
燃えるお兄さん?コアすぎるだろ常考

756 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 21:16:17 ]
>753
◎launcher

757 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 01:04:00 ]
Δ隠されし 禁断の ゲンマイチャ

758 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 01:18:25 ]
>>752
☆ラウンチャの男

759 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 04:50:25 ]
ロケットローンチャ

760 名前:750 [2008/01/09(水) 07:23:53 ]
>>752

それだ!
ランチャ使ってます。
なるほど、以後気を付けます

ありがと!

761 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 08:40:55 ]
CでPythonの独自クラスを定義して、さらにそれを継承したクラスもCで記述する場合って、
継承とかどうやるの?
ttp://www.python.jp/doc/release/ext/dnt-basics.html
ttp://www.python.jp/doc/release/api/type-structs.html
を見ながらやってるんだけど、継承して作る場合がいまいち良く分からない。

例えば、継承元クラスの構造体が
typedef struct {
PyObject_HEAD
PyObject *first;
PyObject *last;
int number;
} Noddy;
だったとして、これを継承したクラスを作りたい場合は
typedef struct {
 Noddy noddy;
 int mydata;
} NoddyEx;
でいいのかね? そのうえで、継承元 Noddy の PyTypeObject である noddy_NoddyType を
noddy_NoddyExType の tp_base に指定すればいいんだよね。
ただその場合、 tp_alloc とかの実装はどうなるんだろうか。今のところゼロで初期化して
継承元の設定を使ってるけど、NoddyEx で新たに確保しなきゃならない項目がある場合に
どう書いていいのかよくわからん。

762 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 08:47:14 ]
あと、
def __init__(self, A, B=0, *args, *kwargs):
 SUPERCLASS.__init__(self, *args, **kwargs)
 ...
に相当するコードをCで書く場合、*args と **kwargs の処理ってどうやってる?

int b=0;
PyObject* kw = PyDict_New();
PyDict_Update(kw, kwargs);
PyObject* val = PyDict_GetItemString("B", kw);
if (val) {
 b = PyInt_AsLong(val);
 PyDict_DelItemString(val);
}

て感じで、キーワード辞書のコピーを取っておいて、必要な値を pop してから
残骸を SUPERCLASS.__init__ (に相当するC関数)に渡す?

763 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 08:50:10 ]
まちがえた
PyObject* val = PyDict_GetItemString(kw, "B");
if (val) {
 b = PyInt_AsLong(val);
 PyDict_DelItemString(kw, "B");
}


764 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 09:20:42 ]
ローンチャ・ストラトス



765 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 12:15:58 ]
質問失礼します。

def ptest( *a ):
  for b in a: print b,
  print ""

上記の関数呼び出しを、

ptest( "a=", 1, " b=", 2 )
ptest( "a=%d,%s" %( 1, "hoge" ) )

などではなく、通常のprint文のように、

ptest "a=", 1, " b=", 2
ptest "a=%d,%s" %( 1, "hoge" )

としたいのですが、どうしたら良いでしょうか?
分かる方お願いします。

766 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 12:29:52 ]
できないよ。考え直すといいよ。

767 名前:デフォルトの名無しさん [2008/01/09(水) 12:49:54 ]
ttp://gihyo.jp/dev/feature/01/python3000/0001

768 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 12:53:13 ]
>>765
関数呼び出しと文はまったく別物。文は自分では作れない。

769 名前:765 mailto:sage [2008/01/09(水) 13:29:31 ]
>>766
>>768
勉強になりました。
ありがとうございました。

770 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 13:32:44 ]
>>761
boost.pythonじゃだめなの?
d.hatena.ne.jp/niitsuma/20080108


771 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 16:58:23 ]
>>765
ruby

772 名前:デフォルトの名無しさん [2008/01/10(木) 02:57:18 ]
pythonにおける変数名等の標準的な命名規則って何ですか?

773 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 03:02:13 ]
>>772
PEP 8 -- Style Guide for Python Code
www.python.org/dev/peps/pep-0008/

774 名前:デフォルトの名無しさん [2008/01/10(木) 03:25:17 ]
/bin/sh シェルのバッククォートを置き換える
www.python.jp/doc/release/lib/node235.html
これってshより複雑になってないですか?
もっとシンプルに`command`を実現することはできないのでしょうか?



775 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 03:27:34 ]
>>772
www.oldriver.org/python/pep-0008j.html

776 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 03:30:08 ]
コマンドの出力を取りたいだけならcommands.getoutput('command')でいいんでない

777 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 03:37:06 ]
>>776
こんなのあったんですね
ありがとうございました

778 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 06:25:05 ]
>>774
ttp://python.matrix.jp/tips/mini-tips.html
>>> args = ['python', '-c', 'print raw_input()']
>>> from subprocess import Popen, PIPE
>>> proc = Popen(args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
>>> proc.stdin.write('input text')
>>> proc.stdin.close()
>>> proc.wait()
0
>>> print proc.stdout.read()
input text

>>> print proc.stderr.read()

>>>


779 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 06:28:48 ]
より現実的な例ではこうなるでしょう:

try:
retcode = call("mycmd" + " myarg", shell=True)
if retcode < 0:
print >>sys.stderr, "子プロセスがシグナルによって中止されました", -retcode
else:
print >>sys.stderr, "子プロセスが終了コードを返しました", retcode
except OSError, e:
print >>sys.stderr, "実行に失敗しました:", e


780 名前:デフォルトの名無しさん [2008/01/10(木) 10:02:17 ]
>>777
PEP 8を知らない奴がPythonやるなよ

781 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 10:34:43 ]
>> 780
「愚かな一貫性は小人物に憑いたおばけである」

782 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 10:50:01 ]
おばけ(wwwwwwwww
幼稚園児かよ(wwwwwwwwwwwwwwwwwwwwwwwwwwwww

783 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 10:57:02 ]
おばけ。
おばけ怖いね。たしかに怖い。
愚かな一貫性を捨ててPerlをやることにするよ。

784 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 11:08:49 ]
おばけより人間の方が怖い



785 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 11:12:54 ]
まんじゅうもこわい。
ついでにお茶もこわいんだけど。

786 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 14:13:05 ]
>>775
>プログラミングにおける推奨案
> - ソースコードは Python の実装(PyPy、Jython、IronPython、Pyrex、
> Psyco など)ごとの欠点を引き出さないように書くべきである。たとえば、
> CPython が a+=b や a=a+b などの文字列連結をインプレイス処理して、効
> 率よく動作する実装に依存してはならない。これでは Jython での動作が遅く
> なってしまう。パフォーマンスに敏感な部分では、''.join() を使うべき
> である。こう書いておけば、様々な実装において、連結処理は線形時間で
> 処理できる。

PythonSpeed
newworld.ddo.jp/doc/PythonSpeed

合わせて読みたい。

787 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 15:17:15 ]
Pythonの文字列って不変だから、+=演算子の振る舞いはあくまで
  s = s + "hoge"
  s = s.add("hoge")
であって
  s.add("hoge")
では無いんだよな。

Pythonを始めたころは+=演算子ないのかよと思っていたら
仕様拡張されて文字列にも適用されたけど、
今になって思えば失敗な気がする。
(何で当時の俺はまんせーしてたんだか…)


788 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 16:01:26 ]
>>782
別に幼児語じゃないぞ。

789 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 19:29:49 ]
問題はおばけではなく小人物の方だからな
つまりどこに行っても同じ

790 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 21:22:38 ]
はいはい。
おばけこわい。小人物こわい。

791 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 21:41:20 ]
>>789
このねちっこさは小人物の仕業だろ常識的に考えて(wwwwww

792 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 22:22:58 ]
>>786
PEP8の次にくるようにブックマークしたー

って、setオブジェクトってなんだよ…(しょっぱなで躓く)

793 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 22:39:49 ]
>>787
In Java, we had well known it's difference same as 'String / StringBuffer'.


794 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 22:59:28 ]
英語ダメな人キタコレwww



795 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:10:09 ]
Would you please correct it?

796 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:34:39 ]
とりあえず日本語でおk

797 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:38:47 ]
どこから直して良いのかわかんないけど・・・
とりあえず過去完了は昔のある出来事以前のことをあらわすので
そこを現在完了に変えて、ついでに時制の一致とかも考えて・・・
You'd know it as defference between String and StringBuffer in Java.
ぐらいじゃないの?

798 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:39:28 ]
It totally SUCK !!

799 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:40:41 ]
sucksな。

800 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:46:24 ]
「愚かな一貫性は小人物に憑いたおばけである」


801 名前:デフォルトの名無しさん mailto:sage [2008/01/10(木) 23:58:18 ]
kinnnen mare ni miru kuso sure no nagare

802 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 00:05:30 ]
>>801
典型的なクソレス

803 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 01:11:53 ]
>「おろかな一貫性は、・・
調べてたら元ネタがあった。

"A foolish consistency is the hobgoblin of little minds, adored by little
statesmen and philosophers and divines. With consistency a great soul has
simply nothing to do." - Ralph Waldo Emerson

(愚かな一貫性というものはちっぽけな精神にひそむお化けで、ちっぽけな
政治家や哲学者や聖職者達に崇められるものだ。偉大なる魂は一貫性など
とは全く無縁である。 - ラルフ・ワルド・エマソン)

割と有名な引用らしい。(知らんかったけど

804 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 04:42:52 ]
質問させて下さい
python2.5+Vista環境でpywin32(Python for Windows extensions)を導入してみました
ところが付属Demoを実行すると次のようなエラーが出ます

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\python25\lib\site-packages\pywin32-210.0004_s-py2.5-win32.egg\win32com\__init__.py", line 5, in <module>
import win32api, sys, os
ImportError: No module named win32api

3時間あれこれしてみたのですが一向に分かりません
包含関係はwin32api∈pywin32だと思うのですが・・・
何か初歩的な設定ミスなどしているのでしょうか

原因の思い当たる方どうぞご教示願います




805 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 05:08:56 ]
>>797
Thank you so much.


806 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 05:15:14 ]
>>804
ttp://starship.python.net/crew/mhammond/win32/
For some overviews of the Win32 API as exposed to Python,
see ttp://www.python.org/windows/win32/




807 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 05:18:10 ]
ttp://www.python.org/download/windows/
Win32all, Mark Hammond's add-on for the regular Python installer
(also including the Win32 API, COM support, and Pythonwin),
is available from the pywin32 project on SourceForge.
ttp://sourceforge.net/projects/pywin32/


808 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 06:35:50 ]
>>804
eggの中身はzipだからpeなwin32api.pydは標準ではインポートできない
setuptoolsもインポートの拡張してなかったと思うし

というかそのeggファイルって非公式なものなんじゃ

809 名前:804 mailto:sage [2008/01/11(金) 10:54:55 ]
>>806-808
egg排除してインストーラを使ってインストールし直したら
できました! みんなありがとう!!! 大感謝です!!!

今回の件でeasy_installやeggの特性も少し分かったので
スレタイ通り勉強になりました。今後も精進します。押忍



810 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 22:02:13 ]
>>803
こっちのことわざで言えば

君子豹変す

あたりのことかな。

811 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 22:31:57 ]
Jinsei iro iro


812 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 22:46:35 ]
URLをパースして分解してくれるようなライブラリはありますか。

813 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 22:48:22 ]
君子豹変す
小人面を革む (易経)

814 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 22:49:54 ]
>>812
urlparse



815 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 22:57:39 ]
で、結局怖いのは小人物なのか? それともおばけ(苦笑)なのか?

816 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 23:57:07 ]
馬鹿な突っ込みしちゃったのが心のささくれになってるのはわかるけど、
おばけにこだわってるのはもう君だけだから、無理に苦笑とかしても、ログ遡られて「ああこの子ね」となるだけかと。

817 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 00:04:31 ]
>>816
小人物乙(ww

818 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 01:22:01 ]
即レスw

819 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 01:34:38 ]
子供は寝ろよ

820 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 02:38:16 ]
小人閑居して不善を為す

821 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 02:49:09 ]
馬鹿の考え休むに似たり

822 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 03:29:59 ]
生兵法は怪我の元

823 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 06:34:36 ]
journal.mycom.co.jp/news/2008/01/08/045/
JythonでDjangoが動いたようです。

824 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 07:16:04 ]
>より最新のバージョンに対応したJythonの登場はそうとおい未来の話ではなさそうだ。

あと1年くらいか




825 名前:デフォルトの名無しさん [2008/01/12(土) 12:18:35 ]
花よりだんご

826 名前:デフォルトの名無しさん [2008/01/12(土) 15:26:24 ]
花よりだんごより金

827 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 15:41:16 ]
それにつけても金の欲しさよ

828 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 16:41:28 ]
談合三兄弟

829 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2008/01/12(土) 16:51:25 ]
 

830 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 20:02:35 ]
Py3.0では set がリテラル表記できると聞きましたが。。。。。。。
あたらしい文法増えるってことかい?

831 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 23:52:32 ]
>>830
{'増', 'え', 'る', 'よ'}

{i for i in 'さらに、setとdictの'}
{k: v for k, v in enumarate('内包表記も。')}

832 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 01:42:26 ]
pypyっていいね

833 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 02:38:35 ]
{} を 空dict にするか 空set にするかという議論もあったようだけど、空dict になったらしい。
個人的には 空set の方がよかった。

834 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 07:48:25 ]
>>833
無意味に後方互換性を崩すあんたのセンスを疑う。



835 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 08:31:58 ]
>>831
Yさん、ご苦労様です

836 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 10:12:27 ]
>>835
Yさんて誰よ

>>833-834
{} == set()
{:} == dict()
が自然じゃないかなぁ、と思ってた

確かに後方互換性がネックなんだけどね

837 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 11:56:25 ]
pythonって、dictの要素を繰り返すのに
for k, v in dct.iteritems(): print k, v
としますけど、なんで
for k, v in dct: print k, v
でできるようにしなかったんでしょう?
for v in dct: print v
としたら、キーが表示されました。
どうせなら、next()で(k, v)が返されればいいのに。

838 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 13:15:05 ]
for k, v in dct.items(): print k, v

839 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 14:41:03 ]
for k in dct: print k, dct[k] じゃだめなんか

840 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 14:55:21 ]
if k in dict: ....との一貫性のため、
だと思ってたけど。

841 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 16:41:24 ]
>>840
あ、そう、それだ、
そういうのを Guido は、if k in dict と for k in dict がライムする(韻を踏む(?))と表現しているね。
mail.python.org/pipermail/python-3000/2007-September/010222.html

842 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 16:42:28 ]
Pythonの開発環境はIDLEで充分ですか?
まだPythonは初心者ですが

843 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 17:08:30 ]
学習段階ならぶっちゃけメモ帳でも

844 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 17:14:30 ]
いやさすがにメモ帳は

最低でも複数行をまとめてインデントしたり
コメントアウトできるエディターは必要



845 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 17:47:11 ]
>>843-844
ありがとうございます
探してみます

846 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 18:29:17 ]
pythonで入力フォームを作っているのですが、
入力値のチェックで全角のみ許可する場合は
どのようにすればいいのでしょうか?

正規表現でどのように書けばいいのでしょう?
お願いします

847 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 18:37:26 ]
文字コード総合スレ part3
ttp://pc11.2ch.net/test/read.cgi/tech/1180250376/


848 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 19:09:38 ]
>>846
正規表現ライブラリの動作をかんがえると
簡潔にできないなら別に正規表現にする必要はないかと。
Unicodeに統一させるのは前提として
文字単位で確認するようなコードをこさえればいいと思う。
速度求めるようなもんでもなさそうだし。

849 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:27:29 ]

$KCODE = 'SJIS'
dat = ['Alpha', 'ひらがな', '漢字', 'カタカナ', '0123', 'ねこ大好き']

dat.each{ |str|
p str
case str
when /^[A-z]+$/s
p 'アルファベットのみ'
when /^[0-9]+$/s
p '数字のみ'
when /^[あ-ん]+$/s
p 'ひらがなのみ'
when /^[ア-ン]+$/s
p 'カタカナのみ'
when /^[亜-煕]+$/s
p '漢字のみ'
else
p '混合か全角英数字か記号'
end
}

850 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:33:46 ]
先生、ここはPythonスレです・・・

851 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 21:41:43 ]
UNICODEにしたときも
^[亜-煕]+$
って保証されるんかいな?

852 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 22:22:29 ]
「半角のみ」禁止なら割と簡単だけど・・・

853 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 22:23:01 ]
unicodedataつかいなよ

854 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 22:50:41 ]
>>851
UNICODEなら、漢字全部って意味でそれ書いちゃ間違い



855 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 22:56:46 ]
UNICODE(UCS-2)の文字コード順で書かないとな

漢字(統合漢字とExt.Aだけ)はこうか
r'^[\u4E00-\u9FBB\u3400-\u4DB5]+$'

856 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 23:32:08 ]
>>> unicodedata.east_asian_width(u'A') # 全角のA
'F'
>>> unicodedata.east_asian_width(u'ア') # 半角のア
'H'
>>> unicodedata.east_asian_width(u'あ')
'W'
>>> unicodedata.east_asian_width(u'A') # ASCII のA
'Na'
>>> unicodedata.east_asian_width(u'W')
'A'
>>> unicodedata.east_asian_width(u'\u0E20') # タイ語の文字
'N'
ttp://0xcc.net/blog/archives/000191.html


857 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 23:48:22 ]
……「半角が混じってたらNG」
というロジックにしちゃえというのは禁句だろうか

858 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 00:03:10 ]
2バイト半角もあるからな

859 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 04:39:57 ]
もう全部UTF-32でいいよもう

860 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 09:28:22 ]
禁止にするとかじゃなくて
内部でお好みの全角のみか何かに正規化するのが定石じゃん?

全角のみでおねがいします、の入力フォームを見るたびに
殴りたくなるぜ

861 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 10:53:30 ]
俺も正規化すればいいと思う。

862 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 12:55:16 ]
>>846
一旦EUC-JPかShift_JISにしてASCIIの範囲の文字とそれ以外に分ければいいと思う。

863 名前:862 mailto:sage [2008/01/14(月) 13:42:18 ]
# -*- coding: utf-8 -*-

def is_zenkaku(s):
    assert isinstance(s, unicode)
    try:
        s = s.encode("euc-jp")
    except UnicodeError:
        return False
    i = 0
    while i < len(s):
        if s[i] < '\x80': # ASCII
            return False
        elif s[i] == '\x8e': # JIS X 0201 Katakana
            return False
        elif s[i] == '\x8f': # JIS X 0212 Supplementary Kanji
            i = i + 3
        else: # JIS X 0208
            i = i + 2
    return True

864 名前:863の続き mailto:sage [2008/01/14(月) 13:43:21 ]
if __name__ == "__main__":
    assert is_zenkaku(u"日本語") == True
    assert is_zenkaku(u"Kanji") == False
    assert is_zenkaku(u"Kanji") == True
    assert is_zenkaku(u"12345") == False
    assert is_zenkaku(u"12345") == True
    assert is_zenkaku(u"パイソン") == False
    assert is_zenkaku(u"パイソン") == True
    assert is_zenkaku(u"森\u9dd7外") == True
    assert is_zenkaku(u"Espa\u00f1ol") == False
    assert is_zenkaku(u"Россия") == True
    assert is_zenkaku(u"Αθηνα") == True
    assert is_zenkaku(u"(・∀・)イイ!") == True
    assert is_zenkaku(u"(・A・)イクナイ!") == False



865 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 18:26:52 ]
>>849
rubyってそんな面倒なことしないと分けれないのかよwww

>>863
そんな面倒なことせずに
east_asian_width使えばいいだろ

866 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:08:51 ]
>>865
ソースに問題点あるみたいなのでそっちの方が面倒そう<east_asian_width
d.hatena.ne.jp/methane/20070109/1168316594

867 名前:methane mailto:sage [2008/01/14(月) 19:27:05 ]
>>866
それはdocutilsの中でeast_asian_width()の結果をどう扱ってるかって話。
日本限定で使う分にはこんな感じで良いと思う。
def char_width(s):
  if type(s) == 'str': s = unicode(s)
  return 2 if east_asian_width(s) in 'WFA' else 1

868 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:41:43 ]
なるほど・・

869 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:51:10 ]
>>866
それは、現在の実装がblogの人の想定と違ってるってだけでそ。
そこにある修正したら、\u00A1(INVERTED EXCLAMATION MARK)とかもWide&Full-widthと同じ扱いされてまうやん。


870 名前:methane mailto:sage [2008/01/14(月) 20:53:09 ]
スマン、east_asian_width() == 'A' の文字ってCJK圏では全部Wide文字扱いかと思ってた。
>>867 のも、'A'を入れるか入れないかは微妙なんだな。

871 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 21:12:40 ]
A - East Asian Ambiguous
Ambiguous : あいまい(な)
なわけで。
ttp://www.unicode.org/reports/tr11/tr11.h1.gif


872 名前:methane mailto:sage [2008/01/14(月) 21:18:31 ]
いや、A=Ambigious=「あいまい」は知ってたけど、
CJK圏ではWide、それ以外ではNarrow、という意味で「あいまい」だと思ってた。
Unicodeメンドイな。

873 名前:862 mailto:sage [2008/01/14(月) 21:21:25 ]
>>865
へー、unicodedata.east_asian_width() なんてあるんだ。知らんかった。Thanx

874 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 22:03:15 ]
Rubyのgets.to_iにあたる、数値入力を取得する命令ってどう書いたらいいんでしょうか?



875 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 22:37:06 ]
数値計算libでnumarray numpyとか似たようなのが複数あるけど
どれが一番いいの?


876 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 00:02:47 ]
>>874
try:
  a = input()
except NameError:
  a = 0

877 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 00:09:30 ]
>>876
その発想は無かった。

878 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 00:16:05 ]
>>874
import sys
x = int(sys.stdin.readline())

impoすらメンドいならint(raw_input())

879 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 00:26:31 ]
>>876
>>878
ありがとうございました。

880 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 13:37:12 ]
自鯖でpythonを動かし、rssなんかを取得したいのですが、
cgiからurllibでgetするとソケットエラーになります。
pythonを起動してやれば、普通に取得できます。
分かる方いたらお願いします。

OS : CentOS release 5 (Final)
Server : Apache/2.2.3
python : 2.4.3

881 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 15:26:14 ]
>>880
> urllibでgetするとソケットエラーになります。
「ソケットエラー」なんてエラー出力にはならないと思うし
勝手な省略したらわかるものもわからなくなるよ?

その環境にはないけどオチとしてはSELinuxが働いている、かな。

882 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 16:11:03 ]
>>881
動きました。ありがとうございます。
エラー文見て、適当に略してしまいました、すいません。
IOError: [Errno socket error] (-3, 'Temporary failure in name resolution')

883 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 16:34:40 ]
frobnicate - Google 検索
www.google.co.jp/search?q=frobnicate&hl=ja&lr=lang_ja&start=20&sa=N

質問
frobnicateってどういう意味ですか?

884 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 16:50:24 ]
>>883
その検索結果のROT13の頁を見よ



885 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 19:01:23 ]
>>884
ROT13 - Wikipedia
ja.wikipedia.org/wiki/ROT13
>このルーチンはROT13と同じ目的で用いられるが、任意の二進データに利用可能である
>(ユーモアをこめて、「意味不明化」(en:frobnicate)関数と呼ばれる)。このルーチンではデータの
>各8-bitバイトをとり、二進数の00101010(十進表記では42。人生、宇宙、すべての答え参照)と
>の間のビット毎の排他的論理和 (XOR) を計算する

ですね

Re: [Python-Dev] Replacement for print in Python 3.0 :: ASPN Mail Archive :: python-dev
aspn.activestate.com/ASPN/Mail/Message/python-dev/2808632
>printf('$1 forgot to frobnicate the $2!\n', username, file.name,
>    to=sys.stderr)

>While that's a little less self-descriptive for a translator to deal
>with (who would only see the string, not the call site), it certainly
>looks nicer for a non-i18n application, and could certainly work for an
>i18n app too. It's a neat idea worth exploring.

意味不明化する、いう使い方をするみたいですね
dくす

886 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 19:39:21 ]
>> I request the addition of prod():
>>  
>> def prod(seq):
>>      s = 1
>>      for x in seq:
>>          s *= x
>>  
>> prod is always as useful as sum()

>It would have to be called product(), and I believe it has been proposed
>multiple times and been rejected under the "not every 3-line function
>has to be builtin" rule.

そんなルール在ったんだw

887 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 00:46:04 ]
set に含まれる要素うち、2つを取り出して比較ってのを全組み合わせについて
やりたいんだけど、効率よく処理するにはどうすればいいだろう。
最初に思いたのは s = set([.........]) として
seq = tuple(s)
for i in range(len(seq)-1):
 for j in range(1, len(seq)):
  my_cmp(seq[i], seq[j])
なんだけど、すごい遠回りして処理してる気がする。
意外とベタに
[my_cmp(i, j) for i in seq: for j in seq]
ってインラインぽくやった方が早いのかな。ちなみに
my_cmp での比較順番は関係なし。(交換法則が成り立つ)

これを C で実装できればなおいいんだけど
C-APIには集合オブジェクトの処理がないんだよね。。。


888 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 01:08:04 ]
for x in list(s):
    s.remove(x)
    for y in s:
        my_cmp(x, y)

889 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 12:27:57 ]
効率よく、という趣旨からは外れるかもしれないけど、
aspn.activestate.com/ASPN/Cookbook/Python/Recipe/474124
の下の方のやつを使えば、

for p in comb(list(s), 2):
 my_cmp(*p)
とすっきり書ける。

890 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 23:41:58 ]
ls = list(s)
for i in ls[:-2]:
 for j in ls[1:]:
  my_cmp(i, j)

891 名前:デフォルトの名無しさん [2008/01/17(木) 17:57:12 ]
総当たりになってないw

892 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 03:10:51 ]
www.python.org/dev/peps/pep-0370/
面倒臭そうだ

893 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 12:05:26 ]
${HOME}/bin
${HOME}/lib/python2.5
${HOME}/share
俺は↑みたいにやってパスを通している。
/usr/local = ${HOME} の位置づけ

${HOME}/.local/lib/python2.6
わざわざ隠さなくてもいいよ。
存在を忘れそうだ。
タイプも面倒くさいし。

894 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 21:21:23 ]
半角と全角が混じった文字列を途中から改行するには
どうすればいいですか?



895 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 22:45:40 ]
unicode に変換したら

896 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 23:15:20 ]
禁則処理のことを云って居るのか?

897 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 23:34:09 ]
この質問にちゃんと答えられたら
その人はPGじゃなくてエスパーだろ。

898 名前:デフォルトの名無しさん mailto:sage [2008/01/18(金) 23:57:27 ]
マルチバイト文字が入ってる文字列に改行を挿入したら泣き別れが
起きてしまうんですがどうしたらいいですか、なのかなぁ

899 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 01:38:32 ]
半角と全角とか言ってるからそこらへんかも

つ Unicode 文字列

900 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 06:26:07 ]
lxmlの最新バージョンのwindows用インストーラーがないんだけど

901 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 11:00:18 ]
あんたRubyにいいたいことがあるんじゃないんですか? とくにPythonと比べてみて。
ttp://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=Bruce+Eckel%A4%CE%A1%D6Ruby%A4%CB%A5%A4%A5%A4%A5%BF%A5%A4%A5%B3%A5%C8%A1%D7%A5%B3%A1%BC%A5%CA%A1%BC



902 名前:デフォルトの名無しさん [2008/01/19(土) 13:40:00 ]
他の言語なんて放っておけ

903 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 16:00:57 ]
Pythonの勉強をしにきました!

904 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 16:02:35 ]
やっぱやめた!



905 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 16:17:47 ]
>903
あきらめ早すぎ。

906 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 19:30:12 ]
Pythonチュートリアル重要だねえ

print時の文字フォーマットは辞書を使って
>>>fuga = {'hoge':'doutei'}
>>>print("%(hoge)s" % fuga)
>>>doutei
ができることを知ったよ。恥ずかしいのですべて読み切る。

907 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 19:31:03 ]
なんでprintに()つけるん?

908 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 19:31:51 ]
>>907
Python3000から付けるようになるとのことで、
今のうちから括弧付ける癖付けてる

909 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 19:40:02 ]
print("%(hoge)s" % (fuga,))
が正しい

910 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 19:55:33 ]
>>907
かっこつかないだろ



後悔はしていない

911 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 19:56:37 ]
>>909
Traceback (most recent call last):
File "<pyshell#909>", line 1, in <module>
print("%(hoge)s" % (fuga,))
TypeError: format requires a mapping

適当なことを言うのはやめるんだ

912 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 20:20:07 ]
( "ヮ")

913 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 20:37:41 ]
import string
print string.Template('$hoge').substitute(fuga)

というのも一応ある

914 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 22:57:31 ]
slashdot.jp/articles/08/01/18/070215.shtml



915 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 02:24:27 ]
ただいまメンテナンス中です

Slashdot Japan は現在メンテナンスを行っております。
ご迷惑をおかけして、誠に申し訳ございません。
しばらく後にもう一度アクセス頂けますよう、お願い申し上げます。


916 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 03:01:44 ]
メンテ終わったよ

917 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 03:02:55 ]
>>906

>>> hoge = 'doutei'
>>> print '%(hoge)s' % locals()
doutei

こんな技もあるから覚えておくといいよチェリーボーイ

918 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 14:50:00 ]
>>916
39

919 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 16:12:47 ]
もう伸びないってさ

920 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 20:10:47 ]
>>917
どもども

921 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 22:08:28 ]
今日からPython始めようと思うのだけれど
まずはチュートリアルを読めばいいのかな?

922 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 22:25:12 ]
多言語を知っているのなら
でもそんな人はそんな質問しないだろうな

923 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:10:31 ]
>>919
そうそう。Pythonはもう伸びない。
だからこんなに便利なプログラミング言語を使わなくていいよ。
今すぐ別の言語に移ってくれていいよ。

924 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:14:57 ]
>>923
今の所、今年のキモレスNo1



925 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:16:44 ]
>>924
もうPythonから離れていいよ。
100000万キロくらい離れていいよ。
むしろ二度と近寄らなくていいから。

926 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:18:29 ]
>>925
子供はプログラミングじゃなくてお勉強してろ

927 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:31:54 ]
暗いと不平を言うよりも、すすんであかりをつけましょう

928 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:41:06 ]
>>926
日本語も満足にできない低脳はPythonを使わない方がいいよ。

929 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:46:07 ]
100000万キロなんて今時小学生でも使わないだろ・・・

930 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:55:53 ]
>921
チュートリアルよりお気楽 Python プログラミング入門ってのがいいと思うんだ

931 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 00:57:34 ]
ガリレイの相対性原理も、アインシュタインの相対性理論も
破棄されました。!

21世紀の科学、物理学は支配の法則が支配する!!!!!

home9.highway.ne.jp/cym10262/fenomina.html

932 名前:デフォルトの名無しさん [2008/01/21(月) 04:32:37 ]
初心者講座作れ!

933 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 06:32:20 ]
すいません。質問させてください。
Pythonの拡張とかフレームワークみたいなのを使わないで、
jspやerbみたいにhtmlにコードを埋め込むことはできますか?
テーブル作るときにレコードを一行ずつprintするのが嫌で、
配列をhtmlに渡して、レコードの数だけ埋め込んだコードでループさせたいと考えています。
まだ勉強し始めたばかりで、パイソン流の方法がわからず苦労しています。
よろしくお願いします。

934 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 08:25:44 ]
テンプレート



935 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 09:35:44 ]
>>933
テンプレートエンジンをつかいましょう。
Rubyと違って、PythonにはERBみたいなのは付属しないので、自分でインストールする必要があります。
ERBみたいなのでよければ、MakoやTenjinあたりが高速です。
www.kuwata-lab.com/tenjin/
に各種テンプレートエンジンへのリンクとベンチマークがあります。

936 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 20:27:54 ]
>>935
やっぱり何かをインストールしないとできないのですね。
紹介していただいたTenjinを使ってみました。
欲しかった使い勝手は、まさにコレでした。
使うときもtenjin.pyだけあれば管理者でサーバーにインストールする必要もないですし、
Tenjinを使っていこうと思います。
良いアドバイスをいただき、ありがとうございました。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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