くだすれPython(超初心者用) その2
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2008/08/08(金) 09:24:54もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、
お礼は Python の布教と初心者の救済をお願いします。
前スレ
くだすれPython(超初心者用)
http://pc11.2ch.net/test/read.cgi/tech/1207878910/
関連スレ
Pythonのお勉強 Part 28
http://pc11.2ch.net/test/read.cgi/tech/1217836194/
0002デフォルトの名無しさん
2008/08/08(金) 12:16:220003デフォルトの名無しさん
2008/08/08(金) 12:17:34Python の Home Page
http://www.python.org/
日本Pythonユーザ会
http://www.python.jp/Zope/
Python 日本語ドキュメント - Pythonistaのお友達
http://www.python.jp/doc/release/
Pythonのバイブル的書籍
http://www.amazon.co.jp/dp/4797341815
0004デフォルトの名無しさん
2008/08/08(金) 12:44:000005デフォルトの名無しさん
2008/08/08(金) 14:05:27ttp://pc11.2ch.net/test/read.cgi/tech/1218125335/
0006デフォルトの名無しさん
2008/08/08(金) 14:44:230007デフォルトの名無しさん
2008/08/08(金) 14:50:440008デフォルトの名無しさん
2008/08/08(金) 15:52:52どうすればいいのでしょうか?
0009デフォルトの名無しさん
2008/08/08(金) 23:01:48import os
if '/usr/bin/firefox' in os.popen('ps').read(): ...
0010デフォルトの名無しさん
2008/08/08(金) 23:05:290011デフォルトの名無しさん
2008/08/08(金) 23:13:34popen の種類がたくさんあったりして、いつもこれでうまくいくのかよく分からんとか・・・
0012デフォルトの名無しさん
2008/08/08(金) 23:27:060013デフォルトの名無しさん
2008/08/09(土) 21:40:14困った時にはこの本を注文しよう。
http://www.amazon.co.jp/exec/obidos/ASIN/486191423X/
0014デフォルトの名無しさん
2008/08/10(日) 02:01:080015デフォルトの名無しさん
2008/08/11(月) 21:31:02<a href="省略2">省略</a>
...
みたいな、リンクが列挙されてるソースから
省略1を関数に投げて、返ってきた文字列で置換
省略2を関数に投げて、返ってきた文字列で置換
...
という処理をしたいんだけど、どういう方法が考えられる?
re.compile('<a href="(.+?)".+?</a>').findall(ソース)でリストを取得
して、それを元にaタグごと生成し直す方法しか思いつかない。
要は、re.sub('a','b','ソース')でa→bって置換する過程で、マッチした文字列
に応じてbを変化させるような処理をしたいんだ。
長文&説明下手でスマソ
0016デフォルトの名無しさん
2008/08/11(月) 21:51:060017デフォルトの名無しさん
2008/08/11(月) 21:53:090018デフォルトの名無しさん
2008/08/11(月) 21:56:07具体例を挙げてくれないと、全然分からん。
0019デフォルトの名無しさん
2008/08/11(月) 22:09:42>>16が言ってるが、
re.sub()には置換先(repl)として、ただの文字列ではなく
matchオブジェクトを受け取って文字列を返す関数を渡すこともできるよ
たとえばこんな風に
s = '1 234 5678'
print re.sub(r'\d+', lambda m: str(int(m.group()) * 2), s)
が、一般論としては、htmlを扱ってるんならlxmlなりBeautifulSoupなり
使ったほうがいいと思う
0020デフォルトの名無しさん
2008/08/11(月) 22:11:13gオプション付きの正規表現をwhileループさせれば簡単に順次処理できる。
あえてPythonならこんな感じで
for m in re.finditer(regex, source): print m.span(), m.group()
これだとヒットした位置(span)から前後の読み飛ばした文字列を
じぶんで拾う必要がある。
もっとスマートのがあってもよさげだけど思いつかん。
0021デフォルトの名無しさん
2008/08/11(月) 23:12:42力不足ですみません。とりあえずは、
>>17
でやりました。
>>19
のやり方がスマートなのかな
>>20
実装するには、逐次処理する方法が簡単なんですかね
参考になりました。ありがとうございます!
0022デフォルトの名無しさん
2008/08/13(水) 04:09:560023デフォルトの名無しさん
2008/08/13(水) 13:13:51普通にあってワロタ
公式ページってここ?
ttp://www.mindswap.org/~katz/pychinko/
0024デフォルトの名無しさん
2008/08/13(水) 15:51:480025デフォルトの名無しさん
2008/08/13(水) 16:51:20Pychinko
Python始まってるな。
0026デフォルトの名無しさん
2008/08/14(木) 17:53:340027デフォルトの名無しさん
2008/08/14(木) 18:02:06http://wiki.python.org/moin/WorkingWithTime
0028デフォルトの名無しさん
2008/08/17(日) 19:21:32FOAF関連のモジュールなんだから
ともだちんこの捩りだろう
0029デフォルトの名無しさん
2008/08/23(土) 23:45:280030デフォルトの名無しさん
2008/08/24(日) 00:01:57pylintいれたら?
0031デフォルトの名無しさん
2008/08/24(日) 00:07:13pylintってなんですか?
0032デフォルトの名無しさん
2008/08/24(日) 02:03:510033デフォルトの名無しさん
2008/08/26(火) 10:45:03-h を別の意味で使いたい時にはどうすればいいの?
parser.add_option("-h", "--host", dest="host")
ってやると
optparse.OptionConflictError: option -h/--host: conflicting option string(s): -h
になっちゃう (>_<)
0034デフォルトの名無しさん
2008/08/26(火) 11:41:36>add_help_option (default: True)
> If true, optparse will add a help option (with option strings "-h" and --help) to the parser.
0035デフォルトの名無しさん
2008/08/26(火) 12:36:35import optparse
from gettext import gettext
parser = optparse.OptionParser(add_help_option=False)
parser.add_option('--help', action='help',
help=gettext('show this help message and exit'))
parser.add_option('-h', '--host', dest='host')
options, args = parser.parse_args(['-h', 'www.example.com'])
print options # {'host': 'www.example.com'}
0036デフォルトの名無しさん
2008/08/26(火) 13:13:21それに含まれる情報を宛てにしていろいろ例外処理できるけど,
Python だと例外として投げられるのは具体的にはなに?
except MyExceptionClass:
見たいに書くわけだけど,じゃ,その例外クラスの
インスタンスは本当にどこかに生成されているの?
0037デフォルトの名無しさん
2008/08/26(火) 13:32:09>>> try:
... f = open('NOTEXIST')
... except IOError, e:
... print (e.errno, e.strerror, e.filename)
...
(2, 'No such file or directory', 'NOTEXIST')
ttp://www.python.jp/doc/release/lib/module-exceptions.html
0038デフォルトの名無しさん
2008/08/26(火) 19:00:200039デフォルトの名無しさん
2008/08/28(木) 00:32:22http://dmf.shrinemaiden.org/OpenDMF:_About_Python
https://www.shrinemaiden.org/forum/index.php?topic=501.0
0040デフォルトの名無しさん
2008/08/28(木) 00:35:54flaxeater 1ポイント 5ヶ月 前[-] Easier in what way?
mcantelon 3ポイント 5ヶ月 前[-] Less dependencies.
依存性高めると、後から動かし難い・・・
引き際も大切か・・・
0041デフォルトの名無しさん
2008/08/29(金) 12:36:18j = i
i = 2
print i,j ってすると当たり前のように 2 1 って表示されるんですが、
「Python の代入は束縛だ」って書いてあったので 2 2 ってのが
正しい気がするのですが、何が間違っているんでしょうか(俺が)
0042デフォルトの名無しさん
2008/08/29(金) 12:40:320043デフォルトの名無しさん
2008/08/29(金) 12:53:010044デフォルトの名無しさん
2008/08/29(金) 12:55:54j=iで、jはiと同じ1というオブジェクトを参照する。
i=2で新たに2というオブジェクトが生成されiはそれを参照する。
この時点でiは2を指し、jは1を指す。
0045デフォルトの名無しさん
2008/08/29(金) 12:55:58>何が間違っているんでしょうか(俺が)
そう、オマエの存在自体が間違っているのだよ.
0046デフォルトの名無しさん
2008/08/29(金) 12:58:04j = iは「jをiの別名、エイリアスとせよ」という意味ではなくて、
同じオブジェクトを指すようになるだけだ
その後のi = 2で、iは2に束縛される(iという名前が2を指すようになる)が、
別にjはiの別名じゃないから、(弄られてない)jは、1に束縛されたままだ
つーか、束縛って別名のことじゃないと思うんだが、なぜそのように動くと
思ったんだい?
0047デフォルトの名無しさん
2008/08/29(金) 13:00:01a は immutable object への参照
>>> b = a
b は a の指し示す immutable object への参照
>>> a = (1,)
a は新しい immutable object への参照
>>> print a, b
(1,) ()
Python には名前への参照はないというだけ
0048デフォルトの名無しさん
2008/08/29(金) 13:00:16こらこら、別にmutableだろうが
i = [1]
j = i
i = [2]
で、jが[2]を指すようになるわけじゃないんだから
いい加減なことを言わないように
0049デフォルトの名無しさん
2008/08/29(金) 13:06:410050デフォルトの名無しさん
2008/08/29(金) 13:18:01>>> j = i
>>> i = 2
>>> print i, j
2 2
>>> i += 1
>>> print i, j
3 3
こんなクソ言語だれも使わないよな常考
005141
2008/08/29(金) 13:31:00boost::shared_ptr<T> のようなものか・・・
0052デフォルトの名無しさん
2008/08/29(金) 14:57:31"もし〜だったら"を入れないと勘違いしそう
0053デフォルトの名無しさん
2008/08/29(金) 14:57:35いちいちインタプリタを再起動するのが面倒ですorz
0054デフォルトの名無しさん
2008/08/29(金) 15:03:12>>> reload(foo)
005553
2008/08/29(金) 15:16:36天才
0056デフォルトの名無しさん
2008/08/29(金) 16:54:16IDLEならCtrl+F6を押すだけでリスタートできる。
0057デフォルトの名無しさん
2008/08/29(金) 17:27:170058デフォルトの名無しさん
2008/08/29(金) 23:05:53import cPickle
o = "a"
f = file("pick.txt","w")
cPickle.dump(o, f)
は正常に動いたんですが、
import pickle
o = "a"
f = file("pick.txt","w")
pickle.dump(o, f)
は
raceback (most recent call last):
AttributeError: 'module' object has no attribute 'dump'
って感じんのエラーがでるんですが、誰かpickleのサンプル書いてもらえませんか?
0059デフォルトの名無しさん
2008/08/29(金) 23:20:37import pickle
dir(pickle)
0060デフォルトの名無しさん
2008/08/29(金) 23:59:132chを読み書きするためのPythonを教えてください
0061デフォルトの名無しさん
2008/08/30(土) 00:18:22wgetだけでできるので
pythonの出る幕はない
0062デフォルトの名無しさん
2008/08/30(土) 00:35:40urllib
urllib2
cookielib
0063デフォルトの名無しさん
2008/08/30(土) 11:29:19そのテストスクリプトにpickle.pyと付けちゃったていうオチか?
006458
2008/08/30(土) 12:59:04きたーーwwwwナイスエスパー!!
0065デフォルトの名無しさん
2008/08/30(土) 13:10:03前に書いた奴。
クッキーの保持の方法が分からないので2回連続POSTしてるがご愛嬌。
# coding: utf-8
import urllib2, cookielib
from urllib import urlencode
def cnvChar(str, code, code2='utf-8'):
return unicode(str, code2).encode(code)
cj = cookielib.CookieJar()
pd = {'bbs': 'board', 'key': 'key', 'time': '1',
'submit': cnvChar('書き込む','cp932'), 'FROM': cnvChar('名前','cp932'),
'mail': cnvChar('メール','cp932'), 'MESSAGE': cnvChar('内容','cp932'), 'hana': 'mogera'}
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.addheaders = [('User-agent', 'Monazilla/1.00 Python/2.5'),
('Referer', 'http://host.2ch.net/board/')]
r = opener.open("http://host.2ch.net/test/bbs.cgi", urlencode(pd))
r = opener.open("http://host.2ch.net/test/bbs.cgi", urlencode(pd))
教えて君にはソースを見せるのが一番だね
0066デフォルトの名無しさん
2008/08/30(土) 21:34:29しかし、なんとも作りかけのスクリプトだなw
まあ、とっかかりにはよいだろうが
0067デフォルトの名無しさん
2008/08/31(日) 00:31:390068デフォルトの名無しさん
2008/08/31(日) 00:32:210069デフォルトの名無しさん
2008/08/31(日) 00:39:500070デフォルトの名無しさん
2008/08/31(日) 01:00:350071デフォルトの名無しさん
2008/08/31(日) 01:06:49金銭リソースが食い尽くされた
007241
2008/08/31(日) 06:08:58Python から自分自身を nice する方法ってありますか?
0073デフォルトの名無しさん
2008/08/31(日) 09:58:480074デフォルトの名無しさん
2008/08/31(日) 14:50:460075デフォルトの名無しさん
2008/09/01(月) 22:57:25Pythonの入門書は色々出ているみたいで、始めてやる場合ににはどの本がいいのか分からないです。
プログラム歴はCの入門書をある程度理解している程度です。(実用で使った事はない。)
0076デフォルトの名無しさん
2008/09/01(月) 23:29:53http://www.python.jp/doc/release/tut/
0077デフォルトの名無しさん
2008/09/02(火) 14:50:51pythonを勉強したいのですが何をインストールするべきでしょうか?
http://www.python.jp/Zope/downloadのページの・Python標準リリースってところと
日本語環境用インストーラの二つありますが、どちらを使ったほうがいいでしょうか?
0078デフォルトの名無しさん
2008/09/02(火) 14:56:19標準リリースの2.5.2のやつ。
日本語環境用のやつは古いし、選ぶ理由はないよ。
0079デフォルトの名無しさん
2008/09/02(火) 15:03:11ありがとうございました
0080デフォルトの名無しさん
2008/09/02(火) 16:51:19誰が得するんだよ
0081デフォルトの名無しさん
2008/09/02(火) 17:12:24検索結果から除外するように
NGサイトを登録することができればいいのにな。
個人単位で。
0082デフォルトの名無しさん
2008/09/02(火) 19:00:310083デフォルトの名無しさん
2008/09/02(火) 19:02:080084デフォルトの名無しさん
2008/09/02(火) 23:51:07元気にしてるのかな?
アッーー!
0085デフォルトの名無しさん
2008/09/03(水) 00:20:230086デフォルトの名無しさん
2008/09/03(水) 00:29:44角電池くらい入れられるようにならないとな
0087デフォルトの名無しさん
2008/09/03(水) 00:35:14今回もキャバクラ行くんだろうな
今からキャバクラ芸を練習しておくことにするよ
0088デフォルトの名無しさん
2008/09/03(水) 00:39:380089デフォルトの名無しさん
2008/09/03(水) 00:47:180090デフォルトの名無しさん
2008/09/03(水) 00:48:28勝手に疎外感を感じてしまいがちなボクチムは
寂しい気持ちを慰めるためにキャバクラに通います
最近はお金がないので,もっぱらイケメンのあの人を思い浮かべながら
単三電池や角電池で自分を慰めているかもしれません
そんな毎日なのでずっと万年厨房の日陰者です
0091デフォルトの名無しさん
2008/09/03(水) 01:26:070092デフォルトの名無しさん
2008/09/03(水) 13:45:31すぐキレるような奴はいらないから今すぐ消えて欲しい
0093デフォルトの名無しさん
2008/09/03(水) 15:26:28parser.add_option("-w", "--width", dest="width", default=100,
help = "Width of output image (default is 100)")
などとやることを考えます。
このときdefault=100と指定しているのにも関わらず、
helpの説明にdefaultが幾つかを手で書かないといけません。
これを自動化させるような方法はoptparseの標準機能では存在しないでしょうか。
0094デフォルトの名無しさん
2008/09/03(水) 15:28:480095デフォルトの名無しさん
2008/09/03(水) 17:46:07input(u"日本語文字列")ってすると文字化けします。
明示的にコマンドプロンプトの文字コード(cp932とか)にエンコードしないと駄目なんでしょうか?
0096デフォルトの名無しさん
2008/09/03(水) 17:49:06環境に合わせて自動的に決定されるようにできるよ
0097デフォルトの名無しさん
2008/09/03(水) 17:54:35ご回答ありがとうございます。
もうちょっと調べてみます。
0098デフォルトの名無しさん
2008/09/03(水) 23:18:04>書籍は大量に売れたよ。品切れになるぐらい。
どの本だよ(wwWwwWwwwwwWWwwwWwwww
0099デフォルトの名無しさん
2008/09/04(木) 01:26:230100デフォルトの名無しさん
2008/09/04(木) 02:12:500101デフォルトの名無しさん
2008/09/04(木) 12:15:01>そういえば、日本のPythonコミュニティをどうこうするとか息巻いて玉砕してた人たちがいたよな
>>85
>python温泉はレベル高いから遠慮しておいたほうがいいな
どこの中二病だよ(wwwwwwwwwwwwwwwwwwwwwwwww
Pythonはじまったな(wwwwwwwwwww
0102デフォルトの名無しさん
2008/09/04(木) 16:53:380103デフォルトの名無しさん
2008/09/04(木) 22:52:490104デフォルトの名無しさん
2008/09/04(木) 23:34:380105デフォルトの名無しさん
2008/09/04(木) 23:49:010106デフォルトの名無しさん
2008/09/05(金) 01:36:480107デフォルトの名無しさん
2008/09/05(金) 02:03:200108デフォルトの名無しさん
2008/09/05(金) 05:43:510110デフォルトの名無しさん
2008/09/05(金) 09:04:570111デフォルトの名無しさん
2008/09/05(金) 09:57:38あるとすれば ocaml とか
0112デフォルトの名無しさん
2008/09/05(金) 10:10:15>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110
0113デフォルトの名無しさん
2008/09/05(金) 10:44:49さっくりと python から扱えるようになる?
0114デフォルトの名無しさん
2008/09/05(金) 12:28:040115デフォルトの名無しさん
2008/09/05(金) 13:09:44以下の一文を適宜付け加えておいてくれ
自分の能力のなさを棚に上げて他人を逆恨みする
0116デフォルトの名無しさん
2008/09/05(金) 22:08:05javaのドキュメントのようには、なかなかクラスとメソッドの関係とかが
分かりません。
0117デフォルトの名無しさん
2008/09/05(金) 22:36:140118デフォルトの名無しさん
2008/09/05(金) 23:43:57さすがに親クラスとかパッケージに含まれるクラスにリンクで飛ぶようなことは
出来ないですよね?それが出来れば最高なんですけど
0119デフォルトの名無しさん
2008/09/05(金) 23:45:48iに1加える場合
i = i + 1
よりも簡単な方法ってないですか?
0120デフォルトの名無しさん
2008/09/05(金) 23:47:530121デフォルトの名無しさん
2008/09/06(土) 00:11:32http://pydoc.org/2.5.1/
http://epydoc.sourceforge.net/stdlib/
0122デフォルトの名無しさん
2008/09/06(土) 00:50:29それ、あんま好きになれん。
結局iは+1した値を指しなおすわけで全くの構文糖てのが。
0123デフォルトの名無しさん
2008/09/06(土) 01:33:33pythonで数字は普遍性を持つので
CPUにとっての「簡単な方法」を追求するなら
CやPerlなどの「純粋」手続き型言語を選択すべき。
0124デフォルトの名無しさん
2008/09/06(土) 01:51:25pythonの場合はintがimmutableだから仕方が無いんだろう
__add__()と__iadd__()は別物だから、mutableなobjectに関しては、
C++と同じように+と+=は別物として定義できるし
一般には後者のほうが効率がいいわな
0125デフォルトの名無しさん
2008/09/06(土) 02:08:44__iadd__()って別個にあるんだな。しらんかった。
0126デフォルトの名無しさん
2008/09/06(土) 03:31:060127デフォルトの名無しさん
2008/09/06(土) 04:19:04エディタでおすすめはなんでしょうか??
0128デフォルトの名無しさん
2008/09/06(土) 04:22:510129デフォルトの名無しさん
2008/09/06(土) 04:43:17Windows なんですけど、Meadow とかすか?
できれば 22 系の情報キボンヌ
0130デフォルトの名無しさん
2008/09/06(土) 05:22:030131デフォルトの名無しさん
2008/09/06(土) 05:26:18うまくcmdファイルを書けばいけるよたぶん。
ドライブレター固定もわざわざディスクの管理でせずに
substで回避するとかで。(ダブってるとダメだけど)
0132デフォルトの名無しさん
2008/09/06(土) 08:08:38しかし!
よく考えたらそもそも Python 自体をどうやって持ち歩くんだ?
C:\Python25 以下をごそっとコピーしただけでいいんだろうか?
だけどたしかその位置(C:\Python25)ってレジストリに
登録されてるんだよなぁ。
0133デフォルトの名無しさん
2008/09/06(土) 09:44:10なくても動く
C:\Python2Xをそのままコピーすればおk
0134デフォルトの名無しさん
2008/09/07(日) 15:35:04import sys
for line in sys.stdin: print line,
コンソールから実行してみると、入力して改行しても出力されません。
そこでwhileとreadline()を使って、
import sys
line = sys.stdin..readline()
while line:
print line,
line = sys.stdin.readline()
のように書き直しました。これで望む結果は得られたものの、どうもいまひとつです。
もっとスマートな方法があれば教えてください。よろしくお願いします。
0135デフォルトの名無しさん
2008/09/07(日) 15:36:31import sys
line = sys.stdin..readline()
while line:
print line,
line = sys.stdin.readline()
0136デフォルトの名無しさん
2008/09/07(日) 16:11:05下のと同じ意味で
for line in iter(sys.stdin.readline, ""): print line,
0137デフォルトの名無しさん
2008/09/07(日) 16:26:01独自のバッファを使うことを意識しておかないと。
結局、whileループを
while True:
line = sys.stdin.readline()
if not line: break
print line,
と書き直すことで解決しました。今後はこっちを使うことにします。
0138今日の日記
2008/09/08(月) 01:49:32このメソッドの中では
object.__setattr__(self, name, value)
という形式で値を代入するらしいけど、この"object"ってなによ????( ;´Д`)
自分の参考書には
class MyClass(object):
ってクラスの()の中に1箇所だけ記述されてるんだけど、
これって"継承"してるってこと???objectは基底クラスってこと?
objectはどこに定義してあるのよ?おれはしてないよww
( ´Д`)
( ´Д`)
( ;´Д`)
寝る
0139デフォルトの名無しさん
2008/09/08(月) 01:52:48http://pc11.2ch.net/test/read.cgi/tech/1220604777/
0140デフォルトの名無しさん
2008/09/08(月) 08:11:18まともな入門書嫁。
0141デフォルトの名無しさん
2008/09/08(月) 09:13:05def __setattr__(self,method,value):
self.__dict__[method] = value
self.method = value
とするとself.methodの時点で
__setattr__の条件を満たしてしまい
永久ループに突入してしまうので、
オブジェクトのディクショナリを参照し、
そこに代入する形を取る。
0142デフォルトの名無しさん
2008/09/08(月) 09:19:000143デフォルトの名無しさん
2008/09/08(月) 09:57:31ありがとうございます
危うく嘘を覚えるところでした ( ;´Д`)
引き続き解説募集中です (^o^)
0144デフォルトの名無しさん
2008/09/08(月) 13:16:45class MyClass(object):...
は object を継承してる。
0145デフォルトの名無しさん
2008/09/08(月) 23:55:24なにか
if __name__ == '__main__':
main()
という形式を見かけたんですかなぜこのようにしているのでしょうか?
0146デフォルトの名無しさん
2008/09/08(月) 23:57:45必ずmain関数が動いてほしい、という時の為のおまじない。
0147デフォルトの名無しさん
2008/09/09(火) 00:04:58http://docs.python.org/tut/node8.html#SECTION008110000000000000000
0148デフォルトの名無しさん
2008/09/09(火) 00:05:540150デフォルトの名無しさん
2008/09/09(火) 00:13:34ありがとうございます
よくわかりました
0151デフォルトの名無しさん
2008/09/09(火) 00:33:310152デフォルトの名無しさん
2008/09/09(火) 00:56:48モジュールとしてして利用するとmainは実行されない。
単体で実行するとmainが実行される。
たいがいはテスト目的かな。
0153デフォルトの名無しさん
2008/09/09(火) 01:29:17説明してあげないと
0154デフォルトの名無しさん
2008/09/09(火) 01:47:41import sys
print(sys.__name__)
とやると'sys'が戻る。
でトップレベルで実行(自分自身を実行)
すると'__main__'になる。
そのため、__name__ = '__main__'が成りたつ場合
自分自身が実行された、ということがわかるため、
その後にmain関数だのを列挙しておけば実行される
0155デフォルトの名無しさん
2008/09/09(火) 02:00:07importの内容について語るかと思ったら嘘張られるとは
0156デフォルトの名無しさん
2008/09/09(火) 03:43:020157デフォルトの名無しさん
2008/09/09(火) 08:58:290158デフォルトの名無しさん
2008/09/09(火) 09:56:150159デフォルトの名無しさん
2008/09/09(火) 10:19:00詳しく
0160デフォルトの名無しさん
2008/09/09(火) 10:42:590161デフォルトの名無しさん
2008/09/09(火) 13:22:270162デフォルトの名無しさん
2008/09/12(金) 23:34:57print urllib.urlopen("http:example.com").info()
info()って一部のヘッダー情報しか出力しないよね?
httpステータス(200とか)をurllibで取得することってできますか?
0163デフォルトの名無しさん
2008/09/13(土) 00:06:51urllib2か直接httplibをつかうしかないと思う。
0164デフォルトの名無しさん
2008/09/13(土) 07:58:24なるほど。了解です。
0165デフォルトの名無しさん
2008/09/15(月) 00:48:05urllib2.urlopenの返してくるオブジェクトには、なぜかcodeってプロパティがあって
そこに200とかそのものずばり入ってる
0166デフォルトの名無しさん
2008/09/15(月) 11:00:51ソースビルドして動きを確かめるぐらい?
0167デフォルトの名無しさん
2008/09/15(月) 12:00:590168デフォルトの名無しさん
2008/09/15(月) 13:49:160169デフォルトの名無しさん
2008/09/15(月) 13:50:45本家にあるマニュアルを眺める
0170デフォルトの名無しさん
2008/09/15(月) 13:51:27参考までに理由を教えて
0171162
2008/09/15(月) 20:07:56まじっすかww自分urllibの方のコード必死に潜ってましたww
クラスURLOpenerのhttp_openメソッドでhttpステータスが入った変数errcodeが
if文の分岐に使われてるのを見つけたんですが、
どうやってアクセスするのが良いか悩んでたとこだったんです。。
助かります。ありがとうございました。
0172デフォルトの名無しさん
2008/09/17(水) 14:18:43print arg
p = None
f(p)
f()のargを空タプルにしたい場合、
変数pへはどんな値を代入すればいいでしょう??
ちなみに、上の場合は
(None,)
となってしまいます。。
0173デフォルトの名無しさん
2008/09/17(水) 14:29:520174デフォルトの名無しさん
2008/09/17(水) 14:36:01f(*p)
0175デフォルトの名無しさん
2008/09/17(水) 14:37:30と書くべきじゃないの
0176シベリアよりのお手紙
2008/09/21(日) 08:14:33ハードディスクにあるファイルを、更新日の新しいものだけUSBメモリにコピーするという
スクリプトを書いたのですが、大きなファイルをコピーするとファイルの断片化がひどいです。
Explorerのコピーのように一旦連続した領域を確保してからそこにコピーというような処理は
書けないでしょうか?
ついでの質問ですが、比較関数を指定したlistのsortはどうやるんですか?
# Rubyでいうとこの、ary.sort{|a,b| a <=> b } みたいなやつです。
動作効率向上のために機能を削ったとかいうのは、メーリングリストで見かけましたが
全く方法がないと言うことはないと思うのですが。
0177デフォルトの名無しさん
2008/09/21(日) 09:01:19L = ['one', 'two', 'three', 'four']
L.sort(cmp = lambda a, b: len(a) - len(b)) # 文字数で昇順ソート
大抵の場合はkey指定で間に合うと思うけどね
(上の例の場合、L.sort(key = len)
0178デフォルトの名無しさん
2008/09/21(日) 09:25:32ファイルを扱う側からすれば領域が連続するかしないかなんてどうでもいい話だから
どうしてもやりたいならボリュームを直接開いてファイルシステムを直接いじることになるんじゃないの?
explorer云々が本当ならどんなことしてるかスパイツール使って調べてみればいい
0179デフォルトの名無しさん
2008/09/21(日) 09:41:09低レベルI/Oでファイルサイズ分lseek()して空write()かな。
モダンなOS・FSならこれでヒントになるとおもう。
py3kで実現できるかは試してないから不明。
0180デフォルトの名無しさん
2008/09/21(日) 22:40:40解決方法もしくは他にオススメのエディタがあったら教えていただけませんか
0181デフォルトの名無しさん
2008/09/21(日) 22:49:540182デフォルトの名無しさん
2008/09/21(日) 23:11:520183デフォルトの名無しさん
2008/09/22(月) 07:16:22こんなに簡単に書けてしまっていいのだろうか…
0184デフォルトの名無しさん
2008/09/22(月) 23:07:38一度学習した事のチェックがしたいんです
0185デフォルトの名無しさん
2008/09/22(月) 23:17:11http://www.pythonchallenge.com/
http://projecteuler.net/
http://ja.doukaku.org/
0186デフォルトの名無しさん
2008/09/22(月) 23:27:220187デフォルトの名無しさん
2008/09/23(火) 01:51:04うおあありがとう
>>186
なるほど
0188176
2008/09/23(火) 08:48:59断片化に関してはだいぶよくなったような感じがします。
ですが、挙動が思ってたものと違うようで、lseekしてからwriteすると
パッとそのサイズのファイルができるのではなくて、ファイル先頭から
順次\x00を書き込んでいってるような感じでした。なので全体の書き込み速度は半分に。
178氏の言うように、近いうちにexplorerの挙動を調べてみたいと思います。
分かったとしても、Cで拡張ライブラリ書くことになるのかなぁ。
>>177
Python 3.0b3 (r30b3:66303, Sep 8 2008, 14:01:02) [MSC v.1500 32 bit (Intel)] on win32
>>> L = ['one', 'two', 'three', 'four']
>>> L.sort(cmp = lambda a, b: len(a) - len(b)) # 文字数で昇順ソート
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'cmp' is an invalid keyword argument for this function
cmpは動かないようです。L.sort(key = len) なら動きます。
python3000の啓蒙サイトでもcmpを使ったコードがあったんですけど動かないのはうちだけ?
0189デフォルトの名無しさん
2008/09/23(火) 09:37:08おまいらも気をつけろよ
というか組み込み関数だけでも色分けしてくれるエディタを使うべきか
0190189
2008/09/23(火) 09:58:030191デフォルトの名無しさん
2008/09/23(火) 10:03:43Python3000ではcmpパラメータは撤去されたらしい。すまんかった。
ttp://www.python.org/dev/peps/pep-3100/
>list.sort() and builtin.sorted() methods: eliminate cmp parameter
0192デフォルトの名無しさん
2008/09/23(火) 12:37:43Windows上ではfile.truncateでファイルサイズ増やせる
後はctypesでCopyFileW,SHFileOperationWあたりを使ってみるとか
0193デフォルトの名無しさん
2008/09/24(水) 21:40:39ここのpycgi.cgiの中にtest.cgiって書いてあるけどこれらは同じじゃないと
動きませんよね?
0194デフォルトの名無しさん
2008/09/24(水) 22:18:258年前の記事なんて誰も読まないから気付かなかったんだろう。
0195193
2008/09/24(水) 23:45:58もし中の人がいたら修正お願いします、私みたいな初心者がつまずかないために。
0196デフォルトの名無しさん
2008/09/27(土) 11:25:25(と言ってもログ監視とかその程度だけど)
ちょっとしたウェブインターフェイスを付けたいと思っています。
こういう目的で使える HTTP を扱うモジュールってありますか?
http://www.athana.org/
なんかは単体のウェブサーバだし・・
0197デフォルトの名無しさん
2008/09/27(土) 12:14:53http://www.python.jp/doc/release/lib/internet.html
0198デフォルトの名無しさん
2008/09/27(土) 19:32:500199デフォルトの名無しさん
2008/09/28(日) 21:39:05C:\cygwin\usr\local\bin\sandbox.py
を変換すると
/C|/cygwin/usr/local/bin/sandbox.py
になります。
ドライブレターの後続の : が | になっています。
実際にはこれを URL として使おうとすると
file:///C%7c/cygwin/usr/local/bin/sandbox.py
となります。たしかに IE も含めてこのURLで
ローカルファイルシステムのファイルを開くことができます。
: ではなく | を使う理由は、初期のNetscapeで : の
代替として | が使われていた(しかも RFC に反して
%エンコードの対象から外されていた)という以外に
何か理由があるのでしょうか?
また、
file:///C%7c/cygwin/usr/local/bin/sandbox.py
と
file:///C:/cygwin/usr/local/bin/sandbox.py
のいずれが正規形なのでしょうか?
0200デフォルトの名無しさん
2008/09/28(日) 22:15:10the original URL syntax とやらの出典がないので真偽は不明。
http://en.wikipedia.org/wiki/File_URI_scheme
> On MS Windows systems, the normal colon (:) after a device letter has sometimes been
> replaced by a vertical bar (|) in file URLs. For example, to refer to file FOO.BAR in the
> top level directory of the C disk, the URL file:///C|/FOO.BAR was used. This reflected
> the original URL syntax, which made the colon a reserved character in a path part.
0201デフォルトの名無しさん
2008/09/28(日) 22:23:130202デフォルトの名無しさん
2008/09/28(日) 22:23:45RFC2396 から RFC 3986 で増えているのもそれに関連しているのかも。
RFC2396 "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")"
RFC3986 ではそれに加えて /"&" / "$" / "+" / "," / ";" / "=" / ":" / "@"
ただ、RFC2396の時点でも既に | は含まれてないんだよな…
たとえ : の代わりに | を使ったとしても %エンコードしなきゃ
いけないことには変わりないんだけど、ネスケはそれを無視してたらしい。
「the URL file:///C|/FOO.BAR was used」ってことで今は
file:///C:/FOO.BAR でいいわけで、なんで urllib では
そうなってないんだろうな、と疑問に思った次第。
0203デフォルトの名無しさん
2008/09/28(日) 22:59:54ドキュメントには「urllib.pathname2url() は urllib.quote()
処理された結果が返る」って書いてあるのに「|」が
urllib.quote() 処理されてないじゃん、ってことが言いたかった。
バグじゃねぇ?って思ったんだけど、仕様なのかね。
0204デフォルトの名無しさん
2008/09/28(日) 23:02:04は
///C|/cygwin/usr/local/bin/sand%7Ebox.py
に返還されるので ~ はエスケープ処理されるんだ。
まぁ昔のNetscapeに合わせた仕様ということなんだろう。
とはいえ RFC3986 に準拠したい自分にとっては気持ち悪い。
再度 urllib.quote() かけると % が二重にエンコードされちゃうし。
0205デフォルトの名無しさん
2008/09/28(日) 23:20:04なんのことはない、urllib.quote() は RFC3986 ではなく
RFC2396 の reserved をエンコードしているだけ。
ただし "/" は引数 safe のデフォルト値なので除く。
で、そのreservedは何かというと
RFC2396 reserved = ;/?@&=+$,
RFC3986 reserved = :/?@&=+$,#[]!'()*;
0206デフォルトの名無しさん
2008/09/29(月) 00:09:140207デフォルトの名無しさん
2008/09/29(月) 11:39:14メソッド__getattr__()、__setattr__()、__delattr__()って
どっちか一方があれば事足りるような気もするんですが、
何が違うんでしょう??
0208デフォルトの名無しさん
2008/09/29(月) 12:24:32__???attr__ は動的なプロパティに使えて柔軟。
propertyは用途が制限されている変わりに、単純にクラスにプロパティを追加したいだけなら楽に書ける。
0209207
2008/09/29(月) 13:04:42ありがとうございます。
0210デフォルトの名無しさん
2008/09/30(火) 03:45:11キャプチャしたパケットをpdf表示するのにTeXが必要なんだけど
MiKTeXだと上手くいくけど
pLaTeX2eだとdvi出力でタイムアウトしてしまいます。
ちょっとソースみてみたところ、PyXのtext.texrunnerでexpextのパターン指定がないせいで
TeXプロンプトが表示される前に入力を流し込んでるっぽい。
expextにどんなパターンを渡すかってとこで、なんだかわからずお手上げです。
まぁMiKTeX使えばいいんですけど
せっかくTeXなんていう巨大なシステム入れるなら
日本語も使えるようにしたいっす。
0211デフォルトの名無しさん
2008/10/01(水) 15:21:52a = 'a desu'
b = 'b desu'
def a_print():
print a
return
def b_print():
print b
return
class c(object):
def a(self):
print a
def b(self):
print b
print 'a printed!\n'
a_print()
print 'b printed!\n'
b_print()
x = c()
print 'class-a printed!\n'
x.a()
print 'class-b printed!\n'
x.b()
exit()
グローバル変数って何なの?意味ないの?
0212デフォルトの名無しさん
2008/10/01(水) 15:34:38x = 10
def func2():
global x
x = 20
x = 0
func1()
print "x =", x
func2()
print "x =", x
0213デフォルトの名無しさん
2008/10/01(水) 15:48:34Pythonのglobal文は、global変数を定義するときじゃなくて
それを使うとき(正確には、global変数に代入するとき)に使うもんだぞ
global bってのは「bというグローバル変数を定義します」
じゃなくて
「このローカルスコープでbというグローバル変数に代入したいです」
という意味だ
なにもなしでローカルスコープで
b = 1
とか書いたら、単にローカルにbという変数が作られてしまうからな
Pythonでは
0214デフォルトの名無しさん
2008/10/01(水) 23:43:37クライントのIPアドレスを付加して保存したいのですが,
アドレスはどのように得ればいいでしょうか?
class Server:
def __init__(self, port):
self.server=SimpleXMLRPCServer(('localhost', self.port))
self.server.register_instance(XMLRPCMethod)
self.server.servforever()
class XMLRPCMethod:
def __init__(self):
self.database=[]
def senddata(self, data): #引数が送るデータ
self.database.append((data, addr))
return True
0215デフォルトの名無しさん
2008/10/02(木) 22:11:25普通に動かせばデフォルトでアクセスログがstderrに吐かれるみたい
あとハンドラにaddress_stringなるメンバもあるから使えるんじゃないかと
0216デフォルトの名無しさん
2008/10/03(金) 00:01:56たとえば boost.python を使って VC9 でビルドした
DLL を使うような Python アプリケーションでも
py2exe が使えるものなのでしょうか?
異なるバージョンのランタイムを使うDLLが混在
していても問題ないものなのでしょうか?
boost.python をつかった Python アプリを
Linux から Windows に移植しようとしています。
0217デフォルトの名無しさん
2008/10/03(金) 01:31:22こう、なんか、その、うまく連携してくれないものでしょうか?
0218デフォルトの名無しさん
2008/10/03(金) 04:53:11FILE*に触ってなければ異なるコンパイラでも動くはず
msvc7とmingw gccでは大丈夫だった
0219デフォルトの名無しさん
2008/10/03(金) 09:59:050220デフォルトの名無しさん
2008/10/03(金) 14:15:170221デフォルトの名無しさん
2008/10/03(金) 15:04:130222デフォルトの名無しさん
2008/10/03(金) 16:12:160223デフォルトの名無しさん
2008/10/03(金) 17:02:56環境変数「QUERY_STRING」にはどうやってアクセスすればいいんでしょ??
test.cgi?a=1&b2
の場合は
a=1&b2
を取得したいです。
0224デフォルトの名無しさん
2008/10/03(金) 17:06:19import cgi
data = cgi.FieldStorage()
a = data.getfirst('a','')
0225デフォルトの名無しさん
2008/10/03(金) 17:07:340226デフォルトの名無しさん
2008/10/03(金) 17:09:38http://pc11.2ch.net/test/read.cgi/php/1163513344/
0227223
2008/10/04(土) 16:42:07ありがとうございます!助かりました!
>WebProg板には、こんなスレッドもあるのだ
>http://pc11.2ch.net/test/read.cgi/php/1163513344/
まさかこんなスレがあるとはw
0228デフォルトの名無しさん
2008/10/05(日) 02:45:07emacsに慣れちゃってるんで,Meadowのgud-modeで
pdbを動かしたいんだけど,新規バッファに何も表示されず
"q"で終了するとした時に,今まで溜まってたのが表示される・・・
WinPdbは使いにくいんだよなぁ・・・
0229デフォルトの名無しさん
2008/10/05(日) 03:19:590230デフォルトの名無しさん
2008/10/05(日) 04:00:090231デフォルトの名無しさん
2008/10/05(日) 07:34:410232デフォルトの名無しさん
2008/10/05(日) 11:17:130233デフォルトの名無しさん
2008/10/05(日) 11:41:000234デフォルトの名無しさん
2008/10/05(日) 11:47:01linuxでeclipse動くだろw
0235デフォルトの名無しさん
2008/10/05(日) 12:03:500236デフォルトの名無しさん
2008/10/05(日) 12:07:550237デフォルトの名無しさん
2008/10/05(日) 12:20:290238デフォルトの名無しさん
2008/10/05(日) 12:35:280239228
2008/10/05(日) 13:25:39>>229
これはすごいIDEですね!
こんなものがフリーで使えるとは・・・Python恐るべし!!
もう少し頑張ってみて,どうしようもなかったら乗り換えを検討します.
>>230
VMware上で試したんですけど,linuxのemacsだと問題ないんですよね〜
>>231
結構,定番っぽいですね
>>236
それならWinPDBの方がいいかなぁ
ちょっとググってみたら,NTEmacsで
同じ現象に陥っている人を発見!
ttp://mail.python.org/pipermail/python-mode/2005-January/000236.html
でも,特に情報なし・・・
バックグラウンドでpdbが動いていることは確かで
新規バッファに表示されないだけなので
もう少し調べてみようと思います.
0240228
2008/10/05(日) 13:33:09スレチですが,rubyも本家で配布しているelispでは
Meadowでrubydbが使えません.
ドライブ文字を含むパスを通すように,rubydb3x.elを修正する必要があります.
Meadowは少数派なのかなぁ・・・
0241デフォルトの名無しさん
2008/10/05(日) 14:18:08本家にあるWindows用は2.5向けしかないようです。
0242デフォルトの名無しさん
2008/10/05(日) 14:22:06一般にCで実装されていてコンパイルが必要なライブラリのバイナリ配布物は
メジャーバージョンが違えば*全て*使えない
ソースからコンパイルすれば使える*可能性*はあるが、公式にサポートが
表明されていないなら、全て自己責任の世界
0244デフォルトの名無しさん
2008/10/05(日) 17:37:40でもpsycoで高速化される場面は限られるよ
0245デフォルトの名無しさん
2008/10/05(日) 22:23:330246デフォルトの名無しさん
2008/10/05(日) 23:34:170247デフォルトの名無しさん
2008/10/06(月) 00:11:380248デフォルトの名無しさん
2008/10/06(月) 16:11:15どうしてもPloneを使いたいのですが、zopeがPython2.4対応なので
Ploneのインストーラが勝手に2.4をインストールするらしいのですが、
2.5がインストールされていても問題無いでしょうか?
初心者なのでただのスクリプトは2.5を使いたいのです・・・
0249デフォルトの名無しさん
2008/10/07(火) 01:52:180250デフォルトの名無しさん
2008/10/07(火) 02:03:08Plone は知らないけど、TracLightなんかだとTrac用のPythonをインスコして環境変数まで書き込むんで既存のPythonのパスが見えなくなったりした。
そのときは環境変数を弄って対処した。
TracLightはコンソール操作用のbatがあってその中で環境変数設定をしているのでシステムの環境変数は無くても平気だったからそういうことが出来た。
いずれにしても初心者といわれたら難しいと答えるしかないと思う。
0252デフォルトの名無しさん
2008/10/07(火) 19:10:29関数の戻り値を取る方法はありますか?
def myfunc(arg):
sleep 2
return arg * 2
th = threading.Thread(target=myfunc, kwargs={'arg': 2})
0253デフォルトの名無しさん
2008/10/07(火) 20:05:390254デフォルトの名無しさん
2008/10/07(火) 23:48:07かと思いましたが、それを呼んでるところにも手を加えなければな
らないみたいで挫折しました。別な方法を考えます。
0255デフォルトの名無しさん
2008/10/08(水) 11:08:58http://www.python.jp/doc/contrib/modpython/tut-what-it-do.html
をテストしてたんですが
<Directory /usr/local/apache2/htdocs/py>
AddHandler mod_python .py
PythonHandler myscript
PythonDebug On
</Directory>
と設定すると正常に動くんですが、
<Directory /usr/local/apache2/htdocs>
のようにディレクトリの階層を1つあげると
ImportError: No module named myscript
がでてしまいます。。
上のリンク先によると「サブディレクトッリでもmod_pythonは処理します。」
みたいに書いてあるんですが、何か自分の設定が間違ってるんでしょうか??
ちなみに、Linux,Python2.5,mod_python3です。
0256255
2008/10/08(水) 14:11:18sys.pathへ指定しておくか
subdir/myscript
のように記述しないといけなかったようです。
0257デフォルトの名無しさん
2008/10/08(水) 23:53:53a.pyとb.pyの2つのスクリプトがあって、
a.pyから子プロセスを生成してb.pyを実行しようと思います。
ただ、a.pyはb.pyの終了ステータスを確認せずに終了させたいです。(waitしない)
2パターンのa.pyを作ったんですがどっちが良いコードでしょう?
""" a.py パターン1 """
import os
pid = os.fork()
if pid == 0:
os.execv("/usr/bin/python",("","b.py"))
else:
import signal
signal.signal(signal.SIGCHLD, signal.SIG_IGN)
""" a.py パターン2 """
import os
os.popen2("/usr/bin/python b.py")
0258デフォルトの名無しさん
2008/10/10(金) 11:39:44スクリプトばかり書いていたのですが,最近ちょっと
大がかりなものを書いて複数のマシンに撒かなけりゃ
ならなくなったので distutils を使ってみようと
思い立ちました.
で,インスコはそれでいいんですが,アンインスコは
なんか簡単にできないものでしょうか?というか
アンインスコのための仕掛けは用意されていませんか?
バージョンアップ時の入れ替えとか考えたら
結局 deb ファイルにパッケージしなきゃなら名ないのかな
なんて思ってます(Ubuntuなので).
できれば Python 世界だけで閉じたいのですが・・・
0259デフォルトの名無しさん
2008/10/10(金) 12:04:53それを全てfloatに変換するにはどうすれば簡単でしょうか。
0260デフォルトの名無しさん
2008/10/10(金) 12:18:18Djangoをつかいんたいんですが。
0261デフォルトの名無しさん
2008/10/10(金) 14:05:19array(arr, type=Float64)
0262デフォルトの名無しさん
2008/10/10(金) 16:48:41RPM 系のディストリだと setup.py bdist_rpm とか、
Windows だと setup.py bdist_wininst とか出来るんだけどね。
0263デフォルトの名無しさん
2008/10/10(金) 23:51:27正規表現どうやって書けばいいでしょ?
# before
test
test
test
↓
#after
test
test
test
こんな感じにしたいのです。
0264デフォルトの名無しさん
2008/10/11(土) 00:06:500265デフォルトの名無しさん
2008/10/11(土) 00:08:220266デフォルトの名無しさん
2008/10/11(土) 00:11:17"\n".join(i for i in s.splitlines() if i)
0267デフォルトの名無しさん
2008/10/11(土) 01:36:210268デフォルトの名無しさん
2008/10/11(土) 02:21:480269デフォルトの名無しさん
2008/10/11(土) 10:52:03ありがとうございます!
0270デフォルトの名無しさん
2008/10/11(土) 11:39:02def shrink(x, c="\n"):
a = x.replace(c * 2, c)
return a if a == x else shrink(a, c)
0271デフォルトの名無しさん
2008/10/11(土) 12:18:07def shrink(s, ch):
if not s: return s
return s[0] + shrink(s[1:].lstrip(ch) if s[0] == ch else s[1:], ch)
0272デフォルトの名無しさん
2008/10/11(土) 21:09:040273デフォルトの名無しさん
2008/10/11(土) 21:11:18http://docs.python.org/using/cmdline.html#interface-options
0274デフォルトの名無しさん
2008/10/12(日) 02:02:49require("lib/$nnn.php");
call_user_func($nnn);
importするファイルを動的に指定ってできないんでしょうか。その前にlib/nnの/の部分でSyntax errorがでてしまいます。
仕方なく、その後に行うcall_user_func($nnn);の処理の方法を先に調べて寝ようとしたら見事にハマっております。
PHPでいうcall_user_func($nnn)はできないんでしょうか。
ぐぐっても見つからずこのままだと寝れません。ご教授お願いします。
0275デフォルトの名無しさん
2008/10/12(日) 02:07:27http://www.python.jp/doc/2.4/lib/module-imp.html
0276デフォルトの名無しさん
2008/10/12(日) 02:18:14foo/bar/hoge.pyのfuncなら
import sys
sys.path.append("foo/bar")
import hoge
getattr(hoge, "func")(arg1, arg2)
0277デフォルトの名無しさん
2008/10/12(日) 02:19:590278デフォルトの名無しさん
2008/10/12(日) 02:26:01modname = os.path.splitext(basename)[0]
mod = imp.load_module(modname, *imp.find_module(modname, [dirname]))
0279デフォルトの名無しさん
2008/10/12(日) 02:47:450280デフォルトの名無しさん
2008/10/12(日) 10:57:11聞くだけ聞いて、何もしないで寝たな。
0281デフォルトの名無しさん
2008/10/12(日) 13:05:02何かご不満でも????
0282デフォルトの名無しさん
2008/10/12(日) 13:25:480283デフォルトの名無しさん
2008/10/13(月) 10:44:08Hentai
Perl
0284デフォルトの名無しさん
2008/10/14(火) 19:52:33IDLEでは入力できるのですが、コマンドラインでも日本語入力をするには
どうすればいいのでしょうか?
0285デフォルトの名無しさん
2008/10/14(火) 19:54:190286デフォルトの名無しさん
2008/10/14(火) 20:16:26日本語入力できました。
迅速なお答えありがとうございました。
0287デフォルトの名無しさん
2008/10/14(火) 21:17:120288デフォルトの名無しさん
2008/10/14(火) 22:27:32例えば、Pythonで DB からデータを取得して、そのデータをC++のオブジェクトに渡す、というようなことです。
最初からC++で取得すれば良いとか、そういう突っ込みは抜きで御願いします。
0289デフォルトの名無しさん
2008/10/14(火) 22:44:300290デフォルトの名無しさん
2008/10/14(火) 23:06:19C/C++で拡張ライブラリ作るとか
0291デフォルトの名無しさん
2008/10/15(水) 01:35:370292デフォルトの名無しさん
2008/10/15(水) 02:13:410293デフォルトの名無しさん
2008/10/15(水) 02:50:030294デフォルトの名無しさん
2008/10/15(水) 07:00:560295デフォルトの名無しさん
2008/10/15(水) 12:57:18その前後に指定の文字列を挿入する方法はありますでしょうか。(-人-)
0296デフォルトの名無しさん
2008/10/15(水) 14:11:04>>> text.replace("a", "fooabar")
'fooabarfooabarbbfooabarfooabarccfooabarfooabar'
>>> import re
>>> re.sub(r"(a)", r"foo\1bar", text)
'fooabarfooabarbbfooabarfooabarccfooabarfooabar'
0297デフォルトの名無しさん
2008/10/15(水) 14:58:230298デフォルトの名無しさん
2008/10/15(水) 16:17:10マッピング(連想配列)の出力結果がエディタで書いた
順番と違うのはなぜでしょうか?
0299デフォルトの名無しさん
2008/10/15(水) 16:19:460300デフォルトの名無しさん
2008/10/15(水) 17:00:020301デフォルトの名無しさん
2008/10/15(水) 17:28:560302デフォルトの名無しさん
2008/10/15(水) 23:58:250303デフォルトの名無しさん
2008/10/16(木) 00:22:550304デフォルトの名無しさん
2008/10/17(金) 21:47:02SOAPpy というライブラリのインストールができません。
○ぐぐったところ
ttp://freethink.way-nifty.com/action/2006/02/pythonsoap_e4fd.html
ttp://www.freia.jp/taka/blog/504
○やったこと:
http://www.python.jp/Zope/download/pythoncore
から、Python 2.5.2 の msi でインストール。c:\Python25 にインストールした。
SOAPy には fpconst が事前インストール必要らしいので、
http://pypi.python.org/pypi/fpconst/0.7.2
から tar.gz をダウンロードして c:\tmp に解凍、
C:\tmp\fpconst-0.7.2> c:\Python25\python setup.py install
running install
running build
running build_py
creating build
creating build\lib
copying fpconst.py -> build\lib
running install_lib
copying build\lib\fpconst.py -> c:\Python25\Lib\site-packages
byte-compiling c:\Python25\Lib\site-packages\fpconst.py to fpconst.pyc
running install_egg_info
Writing c:\Python25\Lib\site-packages\fpconst-0.7.2-py2.5.egg-info
ここまではうまくいってますよね?
0305304
2008/10/17(金) 21:51:32http://sourceforge.net/project/showfiles.php?group_id=26590
c:\tmp に解凍、zip の中に入っている readme.txt を見ると、setup.py build しろとあるので、やってみると
以下のエラーになる。
C:\tmp\SOAPpy-0.12.0> c:\Python25\python setup.py build
Traceback (most recent call last):
File "setup.py", line 8, in <module>
from SOAPpy.version import __version__
File "C:\tmp\SOAPpy-0.12.0\SOAPpy\__init__.py", line 5, in <module>
from Client import *
File "C:\tmp\SOAPpy-0.12.0\SOAPpy\Client.py", line 46
from __future__ import nested_scopes
SyntaxError: from __future__ imports must occur at the beginning of the file
Client.py の中身を見て、46行目にある以下の行を、
from __future__ import nested_scopes
ファイルの先頭に持っていってやりなおしてもだめだった。
このあとどうすればいいのでしょうか?
0306デフォルトの名無しさん
2008/10/17(金) 22:11:340307デフォルトの名無しさん
2008/10/17(金) 22:12:28Client.py に関する SyntaxError が消えなかったの?
0308304
2008/10/17(金) 22:22:24すみません、Client.py をなおしたあとの build のエラーメッセージをよく見ていませんでした。
おっしゃるとおり、Client.py を直すと Types.py で、その次は Server.py で
同じエラーが出たので、それぞれ移動して build しなおすとエラーがなくなりました。
最後に setup.py install でインストールしました。
ところで python のライブラリのインストールって、こういうふうにソース直すことがよくあるのですか?
PHP の PEAR だったら、依存するバージョンはないとか言われるけど、ライブラリの中のソースをいじることは
なかったのですが・・・・
0309デフォルトの名無しさん
2008/10/17(金) 23:29:28いっぱいあるよ! だから 304 はPHPをつかえばいいとおもうよ。
検索結果 約 70,200 件
http://www.google.co.jp/search?q=SyntaxError%3A+from+__future__+imports+must+occur+at+the+beginning+of+the+file
0310デフォルトの名無しさん
2008/10/17(金) 23:57:270311デフォルトの名無しさん
2008/10/18(土) 19:24:01普通にGoogleから検索するだけなら
import webbrowser
print "search: "
word = raw_input("> ")
webbrowser.open("http://www.google.co.jp/search?hl=ja&q=" + word +\
"&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=&aq=f&oq=")
で行けたんですが、たとえば入力する時に"y "を最初に付けるとYouTubeから、
"w "を最初に付けるとWikipediaからとか指定したい場合、どのように書けば
いいのでしょうか。if で分岐させるのは解っているのですが、その書き方が
思いつきません。
0312デフォルトの名無しさん
2008/10/18(土) 20:14:41import webbrowser
from urllib import quote
print 'search:',
word = raw_input()
if word.startswith('w '):
url = 'http://ja.wikipedia.org/wiki/Special:Search?search=%s'
word = word[2:]
elif word.startswith('y '):
url = 'http://jp.youtube.com/results?search_query=%s'
word = word[2:]
else:
url = 'http://www.google.co.jp/search?hl=ja&q=%s'
webbrowser.open(url % quote(word))
0313デフォルトの名無しさん
2008/10/18(土) 20:54:45ありがとうございます。早速コピーして保存しました。
いまPyGTK使ってこんなの作ってます
ttp://www.imgup.org/iup711603.png
最終的にはGnome Doみたくショートカットキーで呼び出して
調べたいときにすぐ検索できるようなものになる予定です。
昨日の夜から急にPyGTKのFAQが繋がらなくなって困ってます
0314デフォルトの名無しさん
2008/10/20(月) 19:52:350315デフォルトの名無しさん
2008/10/21(火) 18:48:140316デフォルトの名無しさん
2008/10/22(水) 02:31:03ググレばすぐ出てくると思う
0317デフォルトの名無しさん
2008/10/22(水) 02:36:470318デフォルトの名無しさん
2008/10/22(水) 12:34:38fom = util.FieldStorage(req)
form.has_key("formname"):
だとダメみたいなので
req.form.has_key("formname"):
って感じやってるんですが、この方法でいいんでしょうか?
0319デフォルトの名無しさん
2008/10/22(水) 17:01:31s = ""
for x in L:
s = "%s%s" % (s, x)
print s # "abc"
シーケンスの要素を1つの文字列にする場合、
上のやり方以外に簡単な方法ありますか????
0320デフォルトの名無しさん
2008/10/22(水) 17:04:400322デフォルトの名無しさん
2008/10/23(木) 08:14:20シューティングでも作ろうとコードかいてみたんですが、
なんかキャラを一定速度で移動させると、一定の間隔で動きが
乱れるんですが対策ありますか?
「スーーー」っと動くのを期待しているのに、「スーッ、スーッ、スーッ」
という感じになります。
書いたコードはこれ。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7828.txt
0323デフォルトの名無しさん
2008/10/23(木) 08:47:01http://pc11.2ch.net/test/read.cgi/gamedev/1126605105/416
0324デフォルトの名無しさん
2008/10/23(木) 08:50:360325デフォルトの名無しさん
2008/10/27(月) 20:28:16a = array([-1,0,1])
for i in range(len(a)):
a[i] = max(a[i],0)
と書かずに一行で済ます方法ありませんでしょうか?
matlabならmax(a,0)でいけたんですが.
0326デフォルトの名無しさん
2008/10/27(月) 20:47:48それはさておき
L = range(-2, 3) # [-2, -1, 0, 1, 2]
L = map(lambda x: max(x, 0), L) # [0, 0, 0, 1, 2]
0327デフォルトの名無しさん
2008/10/27(月) 20:56:020328デフォルトの名無しさん
2008/10/27(月) 21:02:15>>> a = array([-1,0,1])
>>> maximum(a, 0)
array([0, 0, 1])
0329デフォルトの名無しさん
2008/10/27(月) 21:30:240330デフォルトの名無しさん
2008/10/27(月) 21:33:07参考になった。ちょっとおれの頭が固かったみたいだ。
0331325
2008/10/28(火) 10:08:21ありがとうございました.
0332デフォルトの名無しさん
2008/10/28(火) 11:49:16極めて小さい非ゼロの値が欲しいんですが。
0333デフォルトの名無しさん
2008/10/28(火) 13:37:48「極めて小さい非エロのメイド」と刮目した
0334デフォルトの名無しさん
2008/10/28(火) 19:46:07一人称が「あたい」なわけですね?
0335デフォルトの名無しさん
2008/10/29(水) 12:17:56>>> math.tan(math.pi)
-1.2246063538223773e-016
0336デフォルトの名無しさん
2008/10/29(水) 18:56:304.9406564584124654e-324
>>> math.exp(-746)
0.0
0337デフォルトの名無しさん
2008/10/29(水) 19:30:48相対精度表示というのが何のことか分からないんだが
print "%e" % 1e-16
じゃだめなの?
0338デフォルトの名無しさん
2008/10/29(水) 23:32:11文を作りメモ帳をname.pyで保存し、それをコマンドプロントに表示させる
のですが、
#codeing: UTF-8
print "こんにちわ"でコマンドプロントから普通に表示できるのですが、
print u"こんにちわ"だとエラーが出てしまいます。
UnicodeDecodeError: 'utf8' codec can't decode byte 0x82 in posid code byte
となってしまいます。
なぜuが使えないのでしょうか;
0339デフォルトの名無しさん
2008/10/29(水) 23:38:350340デフォルトの名無しさん
2008/10/29(水) 23:39:59#coding指定はソースコードのエンコードを指定するためのもんだぞ
実際のソースのエンコードと一致してないとダメだ
多分name.pyはcp932になってるんだろ
0341デフォルトの名無しさん
2008/10/29(水) 23:56:37>>340
素早い返答ありがとうございます。
はい、まさにcp932になっています。
しかし・・・すいません、テキストを見ているのですがソースとエンコード
の一致の仕方がわかりません;
0342デフォルトの名無しさん
2008/10/30(木) 00:04:36ソースがcp932ならエンコード指定もcp932にすればいいだけなんだぜ?
0343デフォルトの名無しさん
2008/10/30(木) 00:08:07ぉぉぉ・*:.。. (ノ´ω`・。)・*:.。. クスン
理解できました。ありがとうございます!
0344デフォルトの名無しさん
2008/10/30(木) 00:29:340345デフォルトの名無しさん
2008/10/30(木) 01:55:100346デフォルトの名無しさん
2008/10/30(木) 04:46:25でも Eclipse + PyDev が便利だが
0347デフォルトの名無しさん
2008/10/30(木) 09:38:400348デフォルトの名無しさん
2008/10/30(木) 12:55:41そんな夢のような機能は聴いたことがない。
0349デフォルトの名無しさん
2008/10/30(木) 19:43:55あまり理解を深める事が出来なかったんですがやはりみんなのPythonとかそのあたりを買ってみるべきですかね
0350デフォルトの名無しさん
2008/10/30(木) 19:47:380351デフォルトの名無しさん
2008/10/30(木) 19:49:430352デフォルトの名無しさん
2008/10/30(木) 19:51:190353デフォルトの名無しさん
2008/10/30(木) 20:41:500354デフォルトの名無しさん
2008/10/30(木) 21:12:19ttp://diveintopython.org/
ttp://swaroopch.com/notes/Python
ttp://openbookproject.net//thinkCSpy/
ttp://www.freenetpages.co.uk/hp/alan.gauld/
0355デフォルトの名無しさん
2008/10/31(金) 02:26:01駄目元で書き込んだ。
賛同してくれる人はこのレスに同意のアンカーをつけてくれ。
0356デフォルトの名無しさん
2008/10/31(金) 08:33:140357デフォルトの名無しさん
2008/10/31(金) 10:16:090358デフォルトの名無しさん
2008/10/31(金) 10:21:000359デフォルトの名無しさん
2008/10/31(金) 22:07:14print "日本語"
のように日本語を含むプログラムを実行すると、
ウィンドウ下部に表示される実行結果が文字化けするのですが
これを改善する方法はありますでしょうか。
ちなみにインタープリタエディタオプションにて、フォントは日本語フォントに変更してあります。
0360デフォルトの名無しさん
2008/11/01(土) 12:35:230361デフォルトの名無しさん
2008/11/01(土) 12:40:250362デフォルトの名無しさん
2008/11/01(土) 12:43:52Options
IDE Options
Python Interpreter
UTF8 interactive interpreter [ ]
OK
>>> print "日本語"
日本語
0363デフォルトの名無しさん
2008/11/01(土) 12:44:28ちなみに改悪だから
0364デフォルトの名無しさん
2008/11/01(土) 16:36:44ありがとうございます。
utf-8とunicodeの違いを把握していなかったのが原因でした。
0365デフォルトの名無しさん
2008/11/01(土) 17:43:070366デフォルトの名無しさん
2008/11/01(土) 20:40:43x = array([0,1,2,3])
y = array([0,1,2,3])
for i in range(10):
plot(x,i*y)
show()
matplotlibを導入しました。
例えば上のように次々と一次直線をグラフに表示させたいのですが、一回目のshow()で止まってしまいます。
どのように書けばよろしいでしょうか?
0367デフォルトの名無しさん
2008/11/02(日) 09:12:22インタラクティブシェルでユニコードを使おうと思いましてた。
ustr = u"日本語"
print u
で、エラーが発生してしまいます。
pythonのverは2.4.4です。
ver的に問題はないかと思うのですが・・・・・・・
どうしたらユニコードが使えますか?
0368デフォルトの名無しさん
2008/11/02(日) 09:33:48File "http://pc11.2ch.net/test/read.cgi/tech/1218155094/367", line 2, in <module>
print u
NameError: name 'u' is not defined
どんなエラーかぐらい言いなさい
0369デフォルトの名無しさん
2008/11/02(日) 12:07:21すみません・・・・・・・
真面目な答えを希望してるんですが・・・・・・・
0370デフォルトの名無しさん
2008/11/02(日) 12:14:120371デフォルトの名無しさん
2008/11/02(日) 12:17:47> print u
その「u」って変数名はどこから出てきたんだ?
文字列を代入した変数は「ustr」だろ?
俺も>>370に同意する。
0372デフォルトの名無しさん
2008/11/02(日) 12:19:45丁寧に答えようという気にもなるだろうけど
> print u
ustr はどこへ行ったんだ
0373372
2008/11/02(日) 12:21:27吊ってくる
0374デフォルトの名無しさん
2008/11/02(日) 12:41:06素養ってなんですか?
0375デフォルトの名無しさん
2008/11/02(日) 12:51:460376デフォルトの名無しさん
2008/11/02(日) 13:00:08ここのスレにいる人たちは自分たちが答えられない質問が
書かれると、叩きに入るから無視してしまったほうがいいよ。
0377デフォルトの名無しさん
2008/11/02(日) 13:30:110378377
2008/11/02(日) 13:48:370379デフォルトの名無しさん
2008/11/02(日) 14:04:050380デフォルトの名無しさん
2008/11/02(日) 14:24:280381デフォルトの名無しさん
2008/11/02(日) 15:01:400382367
2008/11/02(日) 16:10:34皆さんご迷惑おかけしてごめんなさい・・・
ustr = u"日本語"
print ustr
でした。
みんなのpythonに表記されている通りにしたのですが、
ユニコードを使うにあたって、アプリケーションの設定が必要やら
と書いてありました。もしかしたらそれなのかもしれません。
ただ、その設定の仕方はあえて載せてないみたいです。
0383デフォルトの名無しさん
2008/11/02(日) 16:13:570384デフォルトの名無しさん
2008/11/02(日) 16:16:59駄目元で書き込んだ。
賛同してくれる人はこのレスに同意のアンカーをつけてくれ。
0385デフォルトの名無しさん
2008/11/02(日) 16:17:52実は6〜7年前銭湯で幼稚園ぐらいの女の子に「パパー この人のちんちん大きー」と指をさされて大声で言われた。
確かに俺の息子は大きい方だったが、指をさされたのは初めてだった。俺は特にタオルで隠すことはしなかったので特に目立ったのだろう。
その子のお父さんは「すみません」と恥ずかしそうに謝っていた。
しかし、それだけでは終わらなかった。
俺が体を洗っているとその女の子が友達の女の子2人を連れてきて「ほら、この人のちんちんとっても大きいんだよ」とわざわざ見に来た。
お父さんが「やめなさい」と言ったのと同じくらいに女湯の方から「○○ちゃ〜ん、なにお話してるの?」と同じくらいの女の子の声が聞こえてきた。
すると「この人、とってもちんちんが大きいの。ゾウさんみたいなの」とありったけの大声で叫んでいた。
すると男湯、女湯の両方からくすくすと笑い声が聞こえた。
俺はとんでもなく恥ずかしくなって石鹸を流して早く上がろうと思い立ち上がったとき、不覚にも勃起してしまった。
その場にいた女の子3人から「わっ!」と声が上がり「○○ちゃ〜ん、大変〜、この人のちんちん上にいっちゃったの〜、パオーンしてるの〜」と
女湯に向かって叫んだ。男湯・女湯同時に大爆笑がおこった。その女の子達は「すごーい! すごーい!」と俺の息子に向かって拍手をしていた。
それを見た男湯の人たちがさらに爆笑し、その爆笑につられて女湯でもいっそう大きな爆笑になった。
恥ずかしさをこらえて体を洗っていると、女の子3人もとなりで体を洗い始めた。
「ぞうさんのお鼻も洗ってあげようね」といって、俺の息子を洗い始めた。不覚にも俺は子どもの石鹸遊びのような洗いで
射精してしまった。「わー。ぞうさんのくしゃみすごーい。白いはなみずが鉄砲みたいに飛んだー」
「ちがうよ。お鼻でミルクのんだのはきだしちゃったんだよ」銭湯中が爆笑の渦となった。
俺は逃げ出すようにして銭湯から出て行った。
その日以来、その銭湯へは行かなくなった…。
0386デフォルトの名無しさん
2008/11/02(日) 16:19:33File "http://pc11.2ch.net/test/read.cgi/tech/1218155094/382", line 2, in <module>
print ustr
NameError: name 'ustr' is not defined
どんなエラーかぐらい言いなさい
0387デフォルトの名無しさん
2008/11/02(日) 21:22:44UnicodeEncodeErrorって出てるんじゃないの?
print ustr.encode(utf-8') とかしてみたら
この質問もいい加減テンプレが必要だな
0388デフォルトの名無しさん
2008/11/02(日) 22:33:300389367
2008/11/02(日) 22:55:19>>383
脱ぐのだけは勘弁してください
>>386
えと、エラーの表示はですね。
Traceback (most recent call last) :
File "<stdin>", line 1, in?
UnicodeEncodeError: 'euc_jp' codec can't encode character u'\x97'
in position 1; illegal multibyte sequence
と表示されました。
>>387
UnicodeEncodeErrorって出ました。
print ustr.encode('utf8')と入れてやってみたところ
文字化けが起きました。
度々すみませんがよろしくお願いします。
0390367
2008/11/02(日) 23:29:35でした。
0391デフォルトの名無しさん
2008/11/03(月) 09:47:18どうしてですか?
0392デフォルトの名無しさん
2008/11/03(月) 11:05:06スクリプトの一行目 (一行目が #! で始まってたら 2行目)に
# coding: euc-jp
と記述して、スクリプトファイルを euc-jp で保存して実行してみ。
それでもだめなら、エラーメッセージを全部貼ってくれ。
0393デフォルトの名無しさん
2008/11/03(月) 18:04:020394デフォルトの名無しさん
2008/11/07(金) 06:06:47もしよろしければ、知恵をお貸しいただきたいと思っています。
文字列中における空白で文字列を2つに分けるという作業をやっています。
そのためsplitのメソッドを使って分けたところ、日本語が[\x90\x09]のような
\が付きコードのようになってしまいます。
これはlistでの仕様なんでしょうか?
これをなんとか日本語にしたいと思っているんですが無理なんですかね?
この問題が解決してくれないと、いまやっている作業が全然進まないため、
よろしければ解決方法を教えてください。よろしくお願いします。
バージョンはPython2.5.2です。
0395デフォルトの名無しさん
2008/11/07(金) 07:27:00実際のコードを示したほうがいいよ。
0396デフォルトの名無しさん
2008/11/07(金) 08:07:32printで表示させれば日本語のまま出てくるかと。
0397デフォルトの名無しさん
2008/11/07(金) 09:54:44[u'\u3075\u304c', u'\u30db\u30b2']
>>> print u'ふが ホゲ'.split(' ')
[u'\u3075\u304c', u'\u30db\u30b2']
>>> print repr(u'ふが ホゲ'.split(' ')).decode('unicode-escape')
[u'ふが', u'ホゲ']
0398デフォルトの名無しさん
2008/11/07(金) 10:02:100399デフォルトの名無しさん
2008/11/07(金) 10:02:490400デフォルトの名無しさん
2008/11/08(土) 23:39:050401デフォルトの名無しさん
2008/11/08(土) 23:42:360402デフォルトの名無しさん
2008/11/08(土) 23:52:360403デフォルトの名無しさん
2008/11/08(土) 23:55:04皆さんの回答を参考にさせていただいて、解決しました!!
めちゃくちゃ簡単なことで詰まっていたとわかって、とても恥ずかしいです・・・
本当にありがとうございました。
0404デフォルトの名無しさん
2008/11/09(日) 01:51:53最初は誰でもそんなもんだし、まったく気にする必要ないよ。
0405デフォルトの名無しさん
2008/11/10(月) 12:23:45トラブルやミスの99%以上は「簡単なこと」が原因。
0406デフォルトの名無しさん
2008/11/10(月) 12:29:58>>394みたいにエスケープされていたのが、エスケープされずに表示されるようになる。
0407デフォルトの名無しさん
2008/11/11(火) 00:39:57このページに載っているスクリプトの使い方を教えてください。
C言語は慣れているのですが、他の言語は使ったことがないので…
とりあえずスクリプトをaaa.pyとかの名前で保存して、
対象のxmlファイルと同じディレクトリに入れて実行したのですが、何も起きませんでした。
pythonのバージョンは2.5.2で、OSはwindowsXPです。
0408デフォルトの名無しさん
2008/11/11(火) 00:44:05多分実際には何も起きなかったのではなくエラーメッセージを吐いて
終了したんじゃないのか
見たところ、コマンドプロンプトで
python aaa.py -d 保存先ディレクトリ XMLファイル名
のようにして実行するとよさそうだぞ
0409デフォルトの名無しさん
2008/11/11(火) 01:07:54ありがとうございます! windowsのコマンドプロンプトで
D:\xml>aaa.py -d D:\xml jawiki.xml
と入力したところ、動作が始まりました。
0410デフォルトの名無しさん
2008/11/11(火) 03:45:04pgdbを使おうと考えているんですが、使ったことのある方の意見を聞かせてください。
インストールのし易さや、使いやすさ、または私はこういう物を使っている等。
pythonバージョン:2.5.2でOS:windowsXPです。よろしくお願いします。
0411デフォルトの名無しさん
2008/11/11(火) 10:20:550412デフォルトの名無しさん
2008/11/11(火) 11:59:24悪いことは言わないから MySQL 使っとけ。
現場で使える知識を得ることは大事だぞ。
0413デフォルトの名無しさん
2008/11/11(火) 22:04:460414デフォルトの名無しさん
2008/11/11(火) 22:45:49Ubuntuでpygresql使ってるけど、
ドキュメント見ながらやってて別に詰まったりはしなかった。
WinXPで使ったことはないからインストールはよくわからない。
0415デフォルトの名無しさん
2008/11/12(水) 00:02:590416デフォルトの名無しさん
2008/11/12(水) 01:42:11ぞうさんマークだしね。
0417デフォルトの名無しさん
2008/11/12(水) 09:07:100418デフォルトの名無しさん
2008/11/12(水) 09:35:51label1:entryBox
label2:クリックで現れる文字
ボタン
って配置にしたいんだけどこのコードじゃうまくいかないんです。
self.label1.grid(row = 1, column = 1)
self.entry.grid(row =1, column = 2)
self.label2.grid(row = 2, column = 1)
self.button.grid(row = 3, columnspan = 1)
どうしたら上のような配置にできるでしょうか?
0419デフォルトの名無しさん
2008/11/12(水) 10:05:05self.srice.grid(row =3, column =2)
self.txt.grid(row = 4, column = 1)
とやると、self.button.gridより
self.label2が上にきて、その下にself.txt.gridが真ん中にくる感じです。
どうしたらよいのでしょうか?
0420デフォルトの名無しさん
2008/11/12(水) 12:09:28self.entry.grid(row=0, column=1)
self.label2.grid(row=1, column=0)
self.button.grid(row=2, columnspan=2, sticky="w")
0421418
2008/11/12(水) 13:34:57もう1つ問題が出てきたんですが
ボタンをクリックしたら結果を出すようにしてるんですが、
結果は出てくるものの欲しい結果が出ません。。
def buttonAction(self):
book = self.entry.get()
if book < 1:
self.label3.config(text = "0 point.")
elif book == 1:
self.label3.config(text = "5 points.")
elif book == 2:
self.label3.config(text = "15 points.")
else:
self.label3.config(text = "30 points.")
という風にユーザーが本の数を入力すると
その入力数によってポイントを出すっていうやつなのですが、
どの数字をあてはめても30 pointsを出力してしまいます。。
if文が間違っているのでしょうか?
0422デフォルトの名無しさん
2008/11/12(水) 14:01:21intに変換するか、文字列と比較するかじゃないだろうか
0423デフォルトの名無しさん
2008/11/12(水) 22:05:22洋書とかを中身を読んでから買いたいんだけど、
横浜有隣堂・紀伊國屋じゃ置いてなかったので。
0424デフォルトの名無しさん
2008/11/12(水) 22:41:47webで十分じゃね?と言っておく
0425デフォルトの名無しさん
2008/11/12(水) 23:18:20今は池袋ジュンク堂の6階ぐらいか? 紀伊國屋新宿南店の洋書フロアと
神田三省堂も置いてたかな。
0427デフォルトの名無しさん
2008/11/14(金) 07:15:29遅くなってすいません。回答本当にありがとうございました!!
Ubuntuのpygresqlを使うことにしようと思いました。
しかし、pythonのバージョンが2.4用の物しかないように思えるんですけど、
python2.5用のpygresqlってどこに置いてあるか教えてもらえませんか?
0428デフォルトの名無しさん
2008/11/14(金) 08:14:14すいません、自己解決することができました!!
0429デフォルトの名無しさん
2008/11/14(金) 09:26:17すぐに回答ください。
0430デフォルトの名無しさん
2008/11/14(金) 09:54:370431デフォルトの名無しさん
2008/11/14(金) 10:00:570432デフォルトの名無しさん
2008/11/14(金) 11:04:010433デフォルトの名無しさん
2008/11/14(金) 22:49:160434デフォルトの名無しさん
2008/11/14(金) 23:04:220435デフォルトの名無しさん
2008/11/15(土) 00:57:14>>433トリップってなんですか新しいモジュールか処理系の名称でしょうか
0436デフォルトの名無しさん
2008/11/15(土) 01:22:21もう自己解決したんですから
0437デフォルトの名無しさん
2008/11/15(土) 01:28:10すみません、私が本物なのですがこっそりと
なりすまそうとするのはやめてくださいもう自己解決したんですから
0438デフォルトの名無しさん
2008/11/15(土) 06:28:490439デフォルトの名無しさん
2008/11/15(土) 13:37:54本にも載ってないしググっても見つからなくてスクリプトが起動できないんですけど
0440デフォルトの名無しさん
2008/11/15(土) 13:46:58os.getcwd() # 現在の作業ディレクトリを返す
もしWindowsを使ってるなら、ファイルアイコンの右クリックメニューから
そのファイルのパスを作業ディレクトリとしてコマンドプロンプトを起動できる
拡張があったような気がするから探してみるといいかも
0441デフォルトの名無しさん
2008/11/15(土) 14:22:340442デフォルトの名無しさん
2008/11/15(土) 15:20:34cdでディレクトリ移動もできるよ。
0443デフォルトの名無しさん
2008/11/15(土) 16:26:13インタラクティブシェルからのスクリプトが起動の仕方が分かりません
python test.py
と打ち込んでもエラーが出てしまいます
0444デフォルトの名無しさん
2008/11/15(土) 16:39:59インタラクティブシェルってシェルって付いてるけどshとかと違うよ
ていうか短いコード実行して試行錯誤したいならIDLE使え
スクリプト実行したいならターミナルなりcmd.exeから実行すればいい
0445デフォルトの名無しさん
2008/11/15(土) 17:07:23ありがとうございます。解決できました
勘違いしていました。
0446デフォルトの名無しさん
2008/11/15(土) 19:29:25ipythonなら !python test.py でできる。
もしくは、 exec test.py
0447デフォルトの名無しさん
2008/11/15(土) 22:12:170448デフォルトの名無しさん
2008/11/15(土) 23:11:590449デフォルトの名無しさん
2008/11/16(日) 00:21:49簡単なスクリプトをいろいろ試してたんですが、突然
printで文字が表示されなくなりました。
WindowsXPのDOS窓で、実行していた状況です。
再起動しても状況変わらずです。
何が原因なのでしょうか?
0450449
2008/11/16(日) 00:52:57python test.py
のようにpythonを頭につけないと動かないようです。
最初はそんなことなかったんだけど・・
0451デフォルトの名無しさん
2008/11/16(日) 01:03:020453デフォルトの名無しさん
2008/11/16(日) 11:02:050454デフォルトの名無しさん
2008/11/16(日) 11:14:360455デフォルトの名無しさん
2008/11/16(日) 14:44:380456デフォルトの名無しさん
2008/11/18(火) 11:15:14f = open("hoge.txt")
"hまで打ってタブを押すと、.txtまで出てほしい。
0457デフォルトの名無しさん
2008/11/18(火) 11:34:29ipython
0458デフォルトの名無しさん
2008/11/19(水) 06:05:49ipythonじゃん。
0459デフォルトの名無しさん
2008/11/19(水) 09:20:46ちょ、>>456で一言もipythonって言われてないんだが。
ipythonで補完がとまるなら、ほかに hoge で始まるファイル名なり、
変数名なりがあるんじゃないの?
候補がひとつなら普通に拡張子まで一気に補完されるよ。
0460デフォルトの名無しさん
2008/11/19(水) 09:32:03ipythonだろjk。
0461デフォルトの名無しさん
2008/11/19(水) 09:38:04思ってたよ。
普通のPython Shellでもちょっと設定するだけで補完できるし
0462デフォルトの名無しさん
2008/11/19(水) 13:32:34「ちょっと設定するだけ」
0463デフォルトの名無しさん
2008/11/19(水) 21:00:090464デフォルトの名無しさん
2008/11/19(水) 21:04:150465デフォルトの名無しさん
2008/11/19(水) 22:12:130466デフォルトの名無しさん
2008/11/20(木) 05:33:44int(List[0])
print type(List[0])
と、テストで書いたんですが<type 'str'>と出てしまいます。
どうすればlistの型変換でできるんでしょうか?よろしくお願いします。
0467デフォルトの名無しさん
2008/11/20(木) 06:26:030468デフォルトの名無しさん
2008/11/20(木) 13:37:06めちゃくちゃ初歩的な事で申し訳ありません。
0469デフォルトの名無しさん
2008/11/20(木) 17:46:13ガベージコレクションとかいうやつで自動的に破棄されちゃうの?
0470デフォルトの名無しさん
2008/11/20(木) 19:39:46入門書でわかりやすいのを教えてください
0471デフォルトの名無しさん
2008/11/20(木) 20:22:11オライリー
0472デフォルトの名無しさん
2008/11/20(木) 22:03:37オライリーの初めてのパイソンは難しいという話がありましたが、大丈夫でしょうか?
0473デフォルトの名無しさん
2008/11/20(木) 22:34:44簡単にさくっと読みたいなら、適当なの1冊読んでネットで色々調べればいいんでないな
0474デフォルトの名無しさん
2008/11/21(金) 01:29:04難しいよ。始めは誰でも難しいよ。
けど、難しいでしょうか?と質問ができる
あなたなら買ったあとに活用できると思う。
ネットでもドキュメントが普通に公開されているし、
プログラミングはなんだろうか?というのなら
他のサイトを見ながらテストコードを書けば良いよ
0475デフォルトの名無しさん
2008/11/21(金) 08:13:19リストの中の数字の平均を出したいんですが、うまくいきません。
ちなみに自分で考えたコードは
numList = []
numList.append(value)
value = input("Enter a number: ")
def numbers(numList):
total = 0
count = 0
numList = []
for value in numList:
total = total + value
count = count + 1
average = total / count
print average です。
0476デフォルトの名無しさん
2008/11/21(金) 09:07:56numbers関数は numList = [] ってとこを消せば動くように思うよ。
0477475
2008/11/21(金) 11:06:17いろいろ試行錯誤してるのでどんなエラーかは覚えてません。。
>>476
numList=[]消してみましたがだめでした。
0478デフォルトの名無しさん
2008/11/21(金) 11:08:390479デフォルトの名無しさん
2008/11/21(金) 11:38:410480デフォルトの名無しさん
2008/11/21(金) 11:42:48なにかそのようなモジュールとかご存じではないですか?
バージョンはpython2.5です。
0481デフォルトの名無しさん
2008/11/21(金) 11:49:34import urllib
f = urllib.urlopen('http://www.yahoo.co.jp/')
html = f.read()
f.close()
unicode_string = html.decode('utf8')
sjis_string = unicode_string.encode('sjis')
eucjp_string = unicode_string.encode('eucjp')
0482デフォルトの名無しさん
2008/11/21(金) 12:12:15unicodeを経由して変換するだけだが、
多分そのhtmlは、Shift_JISといいつつ十中八九はWINDOWS-31J(cp932)
でエンコードされているのでcp932を指定したほうが安全。
しかし、それをunicode経由でeuc-jpに変換しようとすると、文字セットやマッピング
が異なるので、コケるケースが出てくる。
PythonはいわゆるeucJP-msをサポートしていないので、eucJP-msを使いたいなら
自分で作りこむか、subprocessやctypesで外のプログラムやライブラリを
使うことになる。
もっとも、単にhtmlを出力したくて、文字を実体参照に変換しても良いのなら、
htmlstr.decode('cp932').encode('euc-jp', 'xmlcharrefreplace')
で良い。
0483481
2008/11/21(金) 12:36:56>>> uchar.encode('cp932')
'\x87@' # CP932 での (1)
>>> uchar.encode('sjis')
... UnicodeEncodeError: 'shift_jis' codec can't encode character u'\u2460' ...
>>> uchar.encode('eucjp')
... UnicodeEncodeError: 'euc_jp' codec can't encode character u'\u2460' ...
>>> uchar.encode('sjis', 'xmlcharrefreplace')
'&#9312;' # 文字実体参照での (1)
勉強になりました。>>482
0484デフォルトの名無しさん
2008/11/21(金) 12:46:050485デフォルトの名無しさん
2008/11/22(土) 06:32:04釣り針大きすぎです><
0486デフォルトの名無しさん
2008/11/23(日) 01:16:19ありがとうございました!!早速やってみました。
import urllib
html = data.read
unicode_string = html.decode('cp932')
data = unicode_string.encode('utf8')
print data
しかし,これだと文字化けしてしまい必要な処理ができなくなってしまいます。
現在、このhtmlの中にある必要な情報だけを取り出し、データベースに書き込むという作業をしているのですが、
ERROR: invalid byte sequence for encoding "EUC_JP" とエラーを吐いてしまいます。
どうも、データベース自体のencodeがEUC_JPなのに対してこの文字がshift-jisのため
おこられているとわかりました。それで、なんとかshift-jis -> EUC-JPに変換できないかと四苦八苦しています。
これが482さんが言われていた、こけるケースですかね?
0487デフォルトの名無しさん
2008/11/23(日) 02:10:530488デフォルトの名無しさん
2008/11/23(日) 02:18:19>unicode_string = html.decode('cp932')
>data = unicode_string.encode('utf8')
ここの'utf8'を'euc-jp'にしたらUnicodeEncodeErrorが
起きたっつーことでいいのかな?
だとすれば>>482の通りだな
どの程度のパフォーマンスを要求されるのか知らんが、
どうでもいいならnkfあたりに変換させるのが楽だと思われ
0489デフォルトの名無しさん
2008/11/23(日) 02:38:32data = unicode_string.encode('utf8')
↓
data = unicode_string.encode('euc-jp')
でした。
488さんのご指摘の通りです。
0490デフォルトの名無しさん
2008/11/23(日) 03:46:06私も一度JapaneseCodecsでやろうと思ってたんですが、
pythonのバージョンが2.3までしか見つけることができずに諦めました。
0491デフォルトの名無しさん
2008/11/24(月) 19:56:03例えば Windows で日本語を入力すると CP932 の文字セットが使われるので
Unicode 経由で EUC-JP に変換すると対応する文字がないという問題が起こる。
具体的には以下の8つの記号が問題になる。次のように置き換えから変換するとよい。
>>> text = u"\u2014\uFF5E\u2225\u22EF\uFF0D\uFFE0\uFFE1\uFFE2"
>>> text.encode("euc-jp")
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
text.encode("euc-jp")
UnicodeEncodeError: 'euc_jp' codec can't encode character u'\u2014' in position 0: illegal multibyte sequence
>>> unification = {
0x2014: 0x2015, # HORIZONTAL BAR
0xFF5E: 0x301C, # WAVE DASH
0x2225: 0x2016, # DOUBLE VERTICAL LINE
0x22EF: 0x2026, # HORIZONTAL ELLIPSIS
0xFF0D: 0x2212, # MINUS SIGN
0xFFE0: 0x00A2, # CENT SIGN
0xFFE1: 0x00A3, # POUND SIGN
0xFFE2: 0x00AC} # NOT SIGN
>>> text = text.translate(unification) # 問題になる記号を置換
>>> text.encode("euc-jp")
0492デフォルトの名無しさん
2008/11/24(月) 20:08:16それらはマッピングの違いの問題だね
それとは別に、13区の丸付き数字などのいわゆる「機種依存文字」の問題がある
0493デフォルトの名無しさん
2008/11/26(水) 18:36:560494デフォルトの名無しさん
2008/11/27(木) 12:25:44http://www.python.jp/Zope/downloadのサイトの
Python標準リリースと日本語環境用インストーラ(Win32),Python 2.3.4ベースのどちらを
インストールしたらいいのでしょうか?
基本的にutf8でコード書くので問題はないのですが、前者でインストールする場合はsjisは使えないということですか?
0495デフォルトの名無しさん
2008/11/27(木) 12:28:28http://www.python.org/download/
Python 2.6 Windows installer
0496デフォルトの名無しさん
2008/11/27(木) 12:33:06バージョン2.6をダウンロードしました
0497デフォルトの名無しさん
2008/11/27(木) 13:49:150498デフォルトの名無しさん
2008/11/27(木) 14:17:38よくある話じゃない。
0499デフォルトの名無しさん
2008/11/27(木) 14:23:37行間の開け方は Extra Lines でできるのですが、
文字同士の間隔は設定できないのでしょうか。もう少し狭くしたいです…
0500デフォルトの名無しさん
2008/11/27(木) 18:20:440501デフォルトの名無しさん
2008/11/27(木) 18:45:250502デフォルトの名無しさん
2008/11/30(日) 23:52:32>>500のような適当なレスは信用しない方が良いですよ。
0503デフォルトの名無しさん
2008/12/01(月) 02:24:34よくある話じゃない。
0504デフォルトの名無しさん
2008/12/01(月) 08:17:380505デフォルトの名無しさん
2008/12/01(月) 08:20:52ここはただの雑談場だからな。
0506デフォルトの名無しさん
2008/12/01(月) 10:54:100507デフォルトの名無しさん
2008/12/01(月) 11:05:08パピプペポ
バビブベボ
0508デフォルトの名無しさん
2008/12/02(火) 13:37:47好みの問題でしょうか?
自分の遠い記憶によるとGuideは半角スペースを推奨していたような気がするんですがどうでしょう?
0509デフォルトの名無しさん
2008/12/02(火) 14:16:55http://www.python.org/dev/peps/pep-0008/
>The most popular way of indenting Python is with spaces only.
0510デフォルトの名無しさん
2008/12/02(火) 16:44:57cdコマンドがうまく機能してない。
In [9]: !cd
D:\Pytmp
In [10]: !cd ./sudoku
In [11]: !cd
D:\Pytmp
Pytmp下にあるsudokuフォルダに移動しようとしたけど効いてないみたい。
0511デフォルトの名無しさん
2008/12/02(火) 16:46:19コマンドプロンプトの方ではちゃんとcd使えてます。
0512デフォルトの名無しさん
2008/12/02(火) 18:22:47!はシェルにコマンドを実行させるので、シェルのカレントディレクトリが
変わるだけで、pythonインタプリタ自身のカレントディレクトリは変わらない
cd使うときは!をつけずにやれ
他に、pwdだのlsだのも!なしのものが使えるよ
0513デフォルトの名無しさん
2008/12/02(火) 18:41:52あー、ほんとだ!
インタプリタのカレントディレクトリは独立していたのか。
!無しでうまくいきました。ありがとう。
0514デフォルトの名無しさん
2008/12/02(火) 19:13:57基本的にカレントディレクトリというのはプロセスに属するものだから、
子プロセスがカレントディレクトリを移動しても(!でcdを実行しても)
現在のプロセスのカレントディレクトリは変わらない。
cdが外部コマンドだと意味がない理由、という奴ね。
0516デフォルトの名無しさん
2008/12/05(金) 07:43:39File "<stdin>", line 1
0700
^
SyntaxError: invalid token
え・・・?
0517デフォルトの名無しさん
2008/12/05(金) 13:46:48700
>>> 0700
448
>>>
0518デフォルトの名無しさん
2008/12/05(金) 13:54:260519デフォルトの名無しさん
2008/12/05(金) 14:54:17> Octal literals are no longer of the form 0720; use 0o720 instead.
見落としてたスマソ
0520デフォルトの名無しさん
2008/12/07(日) 00:54:510521デフォルトの名無しさん
2008/12/07(日) 14:00:23print line
こんなコードを書いた時、line に入っているのはどんな
文字コードなんでしょうか? line のタイプは
<type 'str'> とのことです。unicode だったら明確なんですが、
str って単なる何でも入れられるバイト列なんでしょうか?
画像データなんかでモノホンのバイト列を扱うときも
str にぶち込んでしまっていいものなんでしょうか?
そういや raw 文字列などというものがあるらしい・・・
混乱中
0522デフォルトの名無しさん
2008/12/07(日) 14:10:15バージョン2.x系ならstrはただのバイト列で、画像などのバイナリデータも扱える。
エンコーディング決め打ちでいいのなら、テキストファイルをunicodeとして
読み込みたいときはcodecs.open()を使うといい。
バイト列として読んだ後で、エンコーディングを判別して変換するほうが柔軟だがな。
0523304
2008/12/07(日) 16:50:08以下のようなスクリプトを作りました。
fin = open('input.txt', 'r')
fout = open('output', 'w')
for line in fin:
line = line.strip()
fout.write(line + '\n')
fin.close()
fout.close()
input.txt の内容を output.txt に書き出すだけなのですが、
output.txt のファイルを秀丸で開くと、改行コードが CRLF になっています。
\n は、LF として出力されると期待しているのですが・・・
Unix 環境に持って行くファイルを作るスクリプトを作っているのですが、
Windows 環境で改行コードを LF で出力するには、どうしたらいいでしょうか?
0524デフォルトの名無しさん
2008/12/07(日) 16:50:35失礼しました
0525デフォルトの名無しさん
2008/12/07(日) 16:55:320526デフォルトの名無しさん
2008/12/07(日) 16:56:330527デフォルトの名無しさん
2008/12/07(日) 17:01:52fout = open('output', 'wb')
ttp://python.matrix.jp/tips/compatibility/line_feed.html
0528523
2008/12/07(日) 17:02:19>>525
\r だと CR になってしまいます。
>>526
Unix 環境には python がインストールされていないので、
あらかじめ Windows 側でデータファイルを作成しておきたい。
0530デフォルトの名無しさん
2008/12/08(月) 10:00:450531デフォルトの名無しさん
2008/12/08(月) 11:13:39ttp://www.python.org/download/
3.0 (実験バージョン)
ttp://www.python.org/download/releases/3.0/
2.6.1 (3.0移行推進バージョン)
ttp://www.python.org/download/releases/2.6.1/
2.5.2 (安定バージョン)
ttp://www.python.org/download/releases/2.5.2/
0532デフォルトの名無しさん
2008/12/08(月) 11:16:030533デフォルトの名無しさん
2008/12/08(月) 12:38:090534デフォルトの名無しさん
2008/12/08(月) 14:55:40"実験バージョン"はないのではないかな
0535デフォルトの名無しさん
2008/12/08(月) 16:37:070536デフォルトの名無しさん
2008/12/08(月) 16:54:270537デフォルトの名無しさん
2008/12/08(月) 18:53:22>>530=>>532=>>537ですが何か
0538デフォルトの名無しさん
2008/12/08(月) 19:03:20イテテテテ
0539デフォルトの名無しさん
2008/12/08(月) 19:50:28あそこはもう死んだサイトだから……
早く検索上位からいなくなってほしい
0540デフォルトの名無しさん
2008/12/08(月) 22:59:14python。jpの関係者乙
0541デフォルトの名無しさん
2008/12/08(月) 23:41:05Python使っている人は全員関係者ですが何か(wwWwww
0542デフォルトの名無しさん
2008/12/08(月) 23:52:57python。jpの関係者乙
0543デフォルトの名無しさん
2008/12/09(火) 00:29:15自殺予告だ、通報しなければ。
0544デフォルトの名無しさん
2008/12/09(火) 02:11:02私は Python 使ってますが python.jp とは無関係です
0545デフォルトの名無しさん
2008/12/09(火) 02:13:19早く検索上位からいなくなってほしい
日本でpythonが流行らない原因を作ってる
0546デフォルトの名無しさん
2008/12/09(火) 02:19:46あんなのと一緒にしないでください
あなたとは違うんです!!
0547デフォルトの名無しさん
2008/12/09(火) 07:09:260548デフォルトの名無しさん
2008/12/09(火) 07:50:16nan = float("nan")
if nan == nan:
print "nan is nan"
else:
print "nan is not nan"
の実行結果が、else文の中身になります。
nanとnanを比較するにはどうしたら良いでしょうか。
infとinfの比較を同様に行うと、正しい結果に辿り着きます。
0549デフォルトの名無しさん
2008/12/09(火) 07:55:32def is_finite(x): return x not in (Infinity, -Infinity)
0550デフォルトの名無しさん
2008/12/09(火) 08:46:510552デフォルトの名無しさん
2008/12/09(火) 08:56:58翻訳ドキュメントにはお世話になるなあ
手の掛かる翻訳を無償で公開してくれている人たちには心底頭が下がる
あのサイトを死んでるとか言う奴は、Python使ってないんじゃないのか???
0553デフォルトの名無しさん
2008/12/09(火) 10:10:33python.jp と 翻訳プロジェクトは独立してる。
0554デフォルトの名無しさん
2008/12/09(火) 10:12:31苦なく読めるのにお世話になる意味が分からん。
0555デフォルトの名無しさん
2008/12/09(火) 10:21:21屁理屈にしか聞こえないんだけど。
0556デフォルトの名無しさん
2008/12/09(火) 10:35:590557デフォルトの名無しさん
2008/12/09(火) 10:36:540558デフォルトの名無しさん
2008/12/09(火) 10:43:130559デフォルトの名無しさん
2008/12/09(火) 10:53:320560デフォルトの名無しさん
2008/12/09(火) 12:00:46元気にしてるのかな?
アッーー!
0561デフォルトの名無しさん
2008/12/09(火) 16:50:050562デフォルトの名無しさん
2008/12/09(火) 17:06:130563デフォルトの名無しさん
2008/12/09(火) 17:58:16へー、どんなことがあったの?
0564デフォルトの名無しさん
2008/12/09(火) 18:01:14きめえええええええええwwwwwwwwwwwwwwwwwwwwwwwwww
0565デフォルトの名無しさん
2008/12/09(火) 19:50:310566デフォルトの名無しさん
2008/12/09(火) 21:49:180567デフォルトの名無しさん
2008/12/10(水) 00:35:01python-doc-jp という ML 見たら?
翻訳プロジェクトの中のアクティブなメンバーのうち、 python.jp の中の人は一人だけ。
python.jp と関係の無い翻訳プロジェクトメンバーは、ミスを修正するたびにその一人に
python.jp の更新してもらってる状態。
正直、sf.jp 上で公開したらどうかと思うんだ。。。
0568デフォルトの名無しさん
2008/12/10(水) 02:14:190569デフォルトの名無しさん
2008/12/10(水) 04:05:40氏ね!
0570デフォルトの名無しさん
2008/12/10(水) 08:34:06ここで公開
ttp://code.google.com/
0571デフォルトの名無しさん
2008/12/10(水) 08:45:53>翻訳プロジェクトの中のアクティブなメンバーのうち、 python.jp の中の人は一人だけ。
結局関係あるんじゃん。
>正直、sf.jp 上で公開したらどうかと思うんだ。。。
今の仕組みになにか問題があるのか?
教えて>中の人
0572デフォルトの名無しさん
2008/12/10(水) 09:28:320573デフォルトの名無しさん
2008/12/10(水) 09:49:23氏ね!
0574デフォルトの名無しさん
2008/12/10(水) 10:06:330575デフォルトの名無しさん
2008/12/10(水) 10:56:02無理に裾野広げてPerlやPHPやRubyみたいになってもどうかなぁ
今くらいがちょうど良いの鴨試練
0576デフォルトの名無しさん
2008/12/10(水) 12:24:12でも、ruby界隈のあの盛り上がりは羨ましい
0577デフォルトの名無しさん
2008/12/10(水) 13:19:130578デフォルトの名無しさん
2008/12/10(水) 16:24:120579デフォルトの名無しさん
2008/12/10(水) 17:05:06流行ってると思う奴を使えばいい
0580デフォルトの名無しさん
2008/12/10(水) 17:47:15Pythonistaは冷静、まったりしてる。そして他の言語もちゃんと評価してる印象。
だから俺はPythonが好き。
0581デフォルトの名無しさん
2008/12/10(水) 17:54:41一人しか思いつかない(wwwWwwwWWwwWwWwww
0582デフォルトの名無しさん
2008/12/10(水) 17:58:400583デフォルトの名無しさん
2008/12/10(水) 18:07:280584デフォルトの名無しさん
2008/12/10(水) 18:58:090585デフォルトの名無しさん
2008/12/10(水) 21:20:23ttp://www.afpbb.com/article/life-culture/life/2526455/3410600
0586デフォルトの名無しさん
2008/12/11(木) 00:34:270587デフォルトの名無しさん
2008/12/11(木) 02:04:380588デフォルトの名無しさん
2008/12/11(木) 03:15:160589デフォルトの名無しさん
2008/12/11(木) 08:17:190590デフォルトの名無しさん
2008/12/11(木) 08:23:320591デフォルトの名無しさん
2008/12/11(木) 09:45:150592デフォルトの名無しさん
2008/12/11(木) 09:49:350593デフォルトの名無しさん
2008/12/11(木) 09:51:48Pythonとはぶっちゃけ比較の対象ですらないのが実態です
0594デフォルトの名無しさん
2008/12/11(木) 10:01:090595デフォルトの名無しさん
2008/12/11(木) 10:26:38print(an_instance_of_HogeHoge)
とした場合 class HogeHoge の __str__ が
自動的に呼ばれることはないのでしょうか?
0596デフォルトの名無しさん
2008/12/11(木) 10:45:280597デフォルトの名無しさん
2008/12/11(木) 11:10:08>MLでいじめられて
何年前の話だよ(w
いい加減忘れればいいのになー
0598デフォルトの名無しさん
2008/12/11(木) 11:50:38> MLでいじめられて
kwsk
0599デフォルトの名無しさん
2008/12/11(木) 12:12:13php>>perl>>超えられない壁>ruby>>>python
google検索ヒット数
php>>>>>>>>>>超えられない壁>>>ruby>perl>python
何やっても使えねえな(笑)
0600デフォルトの名無しさん
2008/12/11(木) 12:55:490601デフォルトの名無しさん
2008/12/11(木) 14:01:240602デフォルトの名無しさん
2008/12/11(木) 14:32:470603デフォルトの名無しさん
2008/12/11(木) 14:44:400604デフォルトの名無しさん
2008/12/11(木) 14:56:450605デフォルトの名無しさん
2008/12/11(木) 14:59:220606デフォルトの名無しさん
2008/12/11(木) 15:04:000607デフォルトの名無しさん
2008/12/11(木) 15:15:56ただのゲーム好き?
0608デフォルトの名無しさん
2008/12/11(木) 15:27:330609デフォルトの名無しさん
2008/12/11(木) 15:30:54モジックソという人がいじめられた人なのか?
0610デフォルトの名無しさん
2008/12/11(木) 17:06:060611デフォルトの名無しさん
2008/12/11(木) 17:29:190612デフォルトの名無しさん
2008/12/11(木) 19:02:120613デフォルトの名無しさん
2008/12/11(木) 22:21:49で見ると、2007年よりはランクダウンしてるようだな
しかしよくわからんランキングだ
0614デフォルトの名無しさん
2008/12/12(金) 01:15:190615デフォルトの名無しさん
2008/12/12(金) 02:30:420616デフォルトの名無しさん
2008/12/12(金) 14:06:22無駄に埋蔵情報量の多いPerl/PHP/Rubyにくらべて
結構的確にヒットするPythonはいいよね人気なくて
0617デフォルトの名無しさん
2008/12/13(土) 19:06:420618デフォルトの名無しさん
2008/12/14(日) 00:52:26CまたはC++で書かれたプログラムをVCでコンパイルしてPythonから呼び出すにはどのように処理をしたらいいでしょうか?
Boost.PythonやSWIGなどを使わない場合です。
ttp://www.python.jp/doc/nightly/ext/ext.html
を読んでも良くわかりません。
よろしくお願いします。
0619デフォルトの名無しさん
2008/12/14(日) 01:11:040620デフォルトの名無しさん
2008/12/14(日) 02:51:330621デフォルトの名無しさん
2008/12/14(日) 03:11:28ライブラリの呼び出しならctypes
0622デフォルトの名無しさん
2008/12/14(日) 04:17:57ゲームはGUIの数当てゲーム。
簡単、普通、難しいレベル選べるようになってて、
レベルをクリックしたら、簡単用の画面をポップアップさせたいんです。
それってどうやるのか教えて欲しいです。
self.easyButton = Button(root, text = "Easy",\
fg = "black",\
bg = "white")
self.easyButton.config(command = self.easyButtonAction)
self.easyButton.pack()
def easyButtonAction(self):
ここに一体何をしたらいいんでしょうか?
0623デフォルトの名無しさん
2008/12/14(日) 14:16:450624デフォルトの名無しさん
2008/12/14(日) 19:46:13import fileinput
widh=8
for line in fileinput.input():
tsv=line.split()
print "+".join(["-"*(widh)]*len(tsv))
for cut in rabge(len(tsv)):
tsv[cut]=tsv[cut].center(widh)
print "|".join(tsv)
と書いたtest.pyをコマンドプロンプトから起動したんですけどスクリプトが終了しません
0625デフォルトの名無しさん
2008/12/14(日) 19:47:47for line in fileinput.input():
tsv=line.split()
print "+".join(["-"*(widh)]*len(tsv))
for cut in rabge(len(tsv)):
tsv[cut]=tsv[cut].center(widh)
print "|".join(tsv)
0626デフォルトの名無しさん
2008/12/14(日) 19:53:55stdinに何か入れてみろ。
0627デフォルトの名無しさん
2008/12/14(日) 20:15:04有難うございます
0628デフォルトの名無しさん
2008/12/14(日) 20:34:180629618
2008/12/14(日) 21:01:55ありがとうございました。
0630デフォルトの名無しさん
2008/12/14(日) 21:33:06[hoge.py]
import sys
print sys.argv
と書いた時に。
python hoge.py abcde
としたときに、引数を取得できるのですが。
chmod 755 hoge.pyにしたあと。
./hoge.py abcde
ってコマンドを打つとなぜかなにも出力されません。
自作のコマンドをパスが通っている場所に置いて使いたいです。
よろしくお願いします。
0631デフォルトの名無しさん
2008/12/14(日) 21:38:17先頭行に
#!/usr/bin/env python
とか書くといいぞ
0632デフォルトの名無しさん
2008/12/14(日) 22:23:36ありがとう!
うまくいきました!
0633デフォルトの名無しさん
2008/12/15(月) 09:28:48この書き方良く見るけどいつから始まったん?
有効なの?
みんな違和感感じないの?
0634デフォルトの名無しさん
2008/12/15(月) 09:30:440635デフォルトの名無しさん
2008/12/15(月) 10:27:170636デフォルトの名無しさん
2008/12/15(月) 11:08:50あまりいいことなんてないのに(*´・ω・)(・ω・`*)ネー
0637デフォルトの名無しさん
2008/12/15(月) 11:15:55「違和感感じ」とか「はあ?そんなこと聴いてないけど?」
に違和感を覚えます。
0638デフォルトの名無しさん
2008/12/15(月) 11:19:170639デフォルトの名無しさん
2008/12/15(月) 22:59:17この言語、良く見るけどいつから始まったん?
有効なの?
みんな違和感感じないの?
0640デフォルトの名無しさん
2008/12/15(月) 23:19:00::::..
::::...
::::...
::::... ∧_∧_∧
::::.(∀・( ´Д`)
r -( ( O┰O
..::ii'⌒< < ) 冊冊〉
::'、__,,l!しし(_)l!lJ´
'、__,l!j
「python。この言語、良く見るけどいつから始まったん・・・?」「バカヤローまだ始まってもいねーよ 」
0641デフォルトの名無しさん
2008/12/16(火) 01:06:55WindowsでCのプログラムをDistutilsを使ってコンパイルしたいのですが、Python2.5とVC2005の組み合わせだとビルドできませんか?
ttp://www.python.jp/doc/nightly/dist/module-distutils.msvccompiler.html
の後半に書かれている設定はどうすればできますか?
0642デフォルトの名無しさん
2008/12/16(火) 01:46:34普通にやってだめだった?
スタートメニューの中に、VC用にコンパイラやINCLUDEのパスが通った状態で
コマンドプロンプトを立ち上げるショートカットがあるだろ?
それを使ってコマンドプロンプトを立ち上げて、
>SET DISTUTILS_USE_SDK=1
としてから、試してみて。
0643デフォルトの名無しさん
2008/12/16(火) 21:54:23遅くなりましたが、ありがとうございました!!
0644デフォルトの名無しさん
2008/12/17(水) 00:32:502.5と2.6を簡単に切り替えて実行できるようにしたいんだけど、python.exeは名前被ってるし…。
0645デフォルトの名無しさん
2008/12/17(水) 00:44:48exeだけ名前変えれば大丈夫なはずだ
0646デフォルトの名無しさん
2008/12/17(水) 01:06:43> %python25%
これじゃ、なんか問題あるんか。
0647デフォルトの名無しさん
2008/12/17(水) 13:00:05print "abc",
のようにして改行させずに表示しようと思い
print("abc",)
としてみたんですが,だめみたいです.
print で改行なしの表示ってのはもうできないんでしょうか?
0648デフォルトの名無しさん
2008/12/17(水) 13:06:19print("abc", end="")
ttp://docs.python.org/3.0/library/functions.html#print
を見れ
0649デフォルトの名無しさん
2008/12/17(水) 13:09:53なるほど!どちらも目から鱗だわ。さんくす
0650デフォルトの名無しさん
2008/12/17(水) 13:41:01641とは別人ですが、その手順でやってなお、
The .NET Framework SDK needs to be installed before building extensions for Python.
というエラーが出ます。
助けてください。
0651642
2008/12/17(水) 14:57:42インストールしている Windows SDK のバージョン、 Visual C++ のバージョン、
Pythonのバージョン、それぞれ書いてみて。
0652デフォルトの名無しさん
2008/12/17(水) 15:05:59Microsoft Platform SDK for Windows Server 2003 SP1
Microsoft Visual Studio 2005
Python2.4.3
です。
お願いします。
0653652
2008/12/17(水) 16:31:44# -*- coding:sjis -*-
from distutils.core import setup, Extension
module1 = Extension(
'test',
sources = ['test.c'])
setup(
name = 'PACKAGE_NAME',
version = '1.0',
description = 'Test',
ext_modules = [module1]
)
0654デフォルトの名無しさん
2008/12/17(水) 16:36:25全部バージョンが一世代古いのな。正直、ワカンネ。
とりあえず、VCのバージョンが違うから、 DISTUTILS_USE_SDK=1 は必要。
PlatformSDKで、スタートメニューの中に、コンパイラの設定をしたコマンドプロンプトを
起動するショートカットある?
あれば、それで起動して、あとは >>642 と一緒のハズ。
それでダメなら、
> set MSSdk
で変数の中身を確認して
0655デフォルトの名無しさん
2008/12/17(水) 16:53:570656652
2008/12/17(水) 17:09:10ttp://www.python.jp/doc/release/dist/module-distutils.msvccompiler.html
でしょうか?
0657デフォルトの名無しさん
2008/12/17(水) 17:17:250658デフォルトの名無しさん
2008/12/17(水) 17:27:17実際Pythonってどんなのを開発するのに
便利な言語なんでしょうか?
実例が少なく分からないため教えて欲しいです。
0660デフォルトの名無しさん
2008/12/17(水) 20:38:35Perlやphpが特定用途でよく使われているのに対して、Pythonは特定用途に最適化せず、
汎用言語として設計されている。
デスクトップアプリでは、アプリ自体をPythonで作ったり、アプリのプラグイン機能をPythonで
書けるようにしたり。Web、FTP、IRCサーバーといったサーバーにも使われるし、Webアプリにも
使われる。もちろん日々のスクリプティングにも使える。
PythonとC/C++とアセンブラができれば、プログラミング言語の需要のほぼすべてをカバー
できる。
0661デフォルトの名無しさん
2008/12/17(水) 21:27:230662デフォルトの名無しさん
2008/12/17(水) 22:02:43ブラウザ内で動くプログラムもPythonで書けるようになったね。
速度が必要な場所やシステムコールが必要な部分はC言語が必要だけど、
C言語でPython拡張モジュールを書くのもやりやすいし、本気で万能言語。
ThinkPadは管理アプリ内でPythonを使ってるし、OpenOffice.org にも Python が
入ってる。有名なFPSとかRTSにも入ってた気がする。
0663デフォルトの名無しさん
2008/12/18(木) 11:00:36>>662
なるほど、PHPみたいな言語と違って色んなものが作れると
いうことなんですね。
もうひとつ質問なんですが、特定の用途で多く使われる言語は
多少なりとも特定の用途においての開発が楽だと思うんですが、
特定の用途を持たないPythonはどれにおいても開発が楽なんでしょうか。
それとも、Cで動的なwebページを作るときのように、手間がかかって
しまうのでしょうか。
Pythonを使っているみなさんに感想をお聞きしたいです。
0664デフォルトの名無しさん
2008/12/18(木) 11:20:10他の言語に対する優位性とかもう面倒なので一々考えない
Javaの方が速いとかRubyの方が楽しいとかC#の方がWinアプリ作るの楽とか正直全然うらやましくない
0665デフォルトの名無しさん
2008/12/18(木) 11:40:43Cぐらい手間がかかるならPython要らない。CとPythonで役割分担して、
結合していくもの。
Webアプリだって、MVCフレームワークを使うなら、Djangoとか使えばphpと
変わらない生産性がある。(個人的には、$とか->とか書くのが面倒だったり、
IPythonでデバッグとテストが楽だったりするので、Pythonの方が良いと思ってる)
phpがWebで優れている点は、無料もしくは安価なレンタルサーバーでは
cgiかphpしか選択肢が無くてcgiよりphpの方が速いとか、既存の(X)HTMLの
一部にphpのコードを挟んで動的ページにできるといった、「自分のWebサイト
作ってみたい」レベルの初心者にやさしいところ。
もともとプログラマでWebサイト「も」作る人なら、最初から全部PythonとCで書いて
いれば、いちいち専用言語を覚える必要が無くて楽。
0666デフォルトの名無しさん
2008/12/18(木) 12:45:58ドメイン特化つーとMathematicaとかMatlabとかみたいな?
まあそれはそうだろ
phpぐらいなら、phpという言語自体の機能の強みというよりは、
どこのサーバでも使えるとか利用者や情報が多いといった程度の強みしかないが、
Mathematicaが欲しいのならMathematica使っとけって話だ
もっとも汎用言語には、閉じた世界の仕様に縛られない強みと自由がある
何でもできるなら、いざ「〜ができない」で困るということは無い
もっともPythonの場合はC/C++と併用することで本当の力を発揮する言語だが
今時はドメイン特化言語(DSL)を言語上に構築するという手法も
流行だが、Pythonは構文的な柔軟性に乏しくマクロも無いので、そういうのは苦手
以前はLispの独擅場だったと思うが、最近は色々あるようだな
RubyはわりとDSL向き、と言われている
0667デフォルトの名無しさん
2008/12/18(木) 22:23:24>cgiかphpしか選択肢が無くて
GAE
0668デフォルトの名無しさん
2008/12/18(木) 22:38:150669デフォルトの名無しさん
2008/12/19(金) 00:41:30いや、ちがうよ。
ただ、初心者にはまだ敷居が高い。
0670デフォルトの名無しさん
2008/12/19(金) 03:15:590671デフォルトの名無しさん
2008/12/19(金) 16:10:51CGIなんですけれど。
http://code.google.com/intl/ja/appengine/docs/gettingstarted/usingwebapp.html
0672デフォルトの名無しさん
2008/12/19(金) 18:11:370673デフォルトの名無しさん
2008/12/19(金) 18:29:58GAEってRFCに合致しないところがあんの?
0674デフォルトの名無しさん
2008/12/19(金) 19:26:00俺は今年中にファルコンになる。
0675デフォルトの名無しさん
2008/12/19(金) 19:33:540676デフォルトの名無しさん
2008/12/19(金) 19:35:37ブラッディ・マンディ見てないの?
今、Pythonが熱いんだよw
0677デフォルトの名無しさん
2008/12/19(金) 20:32:350678デフォルトの名無しさん
2008/12/19(金) 21:03:500679デフォルトの名無しさん
2008/12/20(土) 02:44:410680デフォルトの名無しさん
2008/12/20(土) 11:55:070681デフォルトの名無しさん
2008/12/21(日) 00:13:39は?
0682デフォルトの名無しさん
2008/12/21(日) 00:18:00list = range(10) でリストを作ったとして、
num = list とコピーしてlistには影響を与えずnumを操作したいです。
0683デフォルトの名無しさん
2008/12/21(日) 00:21:13from copy import deepcopy
リストに入れるのが文字列やら数値なら、deep じゃない copy でいい。
0684デフォルトの名無しさん
2008/12/21(日) 00:25:39ありがとうござんす!
0685デフォルトの名無しさん
2008/12/21(日) 06:29:55>>> b = a
>>> b[1] = 6
>>> b
[0, 6, 2]
>>> a
[0, 6, 2]
0686デフォルトの名無しさん
2008/12/21(日) 06:38:21>>> b = copy(a)
>>> b[1] = 8
>>> b
[0, 8, 2]
>>> a
[0, 6, 2]
>>> b = deepcopy(a)
>>> b[1] = 7
>>> b
[0, 7, 2]
>>> a
[0, 6, 2]
>>> a = [[1,2],[3,4]]
>>> b = copy(a)
>>> b[1][1]=9
>>> b
[[1, 2], [3, 9]]
>>> a
[[1, 2], [3, 9]]
>>> b = deepcopy(a)
>>> b[1][1]=5
>>> b
[[1, 2], [3, 5]]
>>> a
[[1, 2], [3, 9]]
0687デフォルトの名無しさん
2008/12/21(日) 13:21:42a = range(10)
b = list(a)
もしくは
b = a[:]
0688デフォルトの名無しさん
2008/12/21(日) 13:50:02>>> b = list(a)
>>> b[1][1] = 5
>>> a
[[1, 2], [3, 5]]
>>> b = a[:]
>>> b[1][1] = 6
>>> a
[[1, 2], [3, 6]]
0689デフォルトの名無しさん
2008/12/21(日) 17:24:23なるほど。何の変哲も無いリストならcopy()や>>687さんの方法でできる。
しかし、リストの中にリストを含むようなオブジェクトに関してはdeepcopy()を用いるということですね。
わかりやすい説明ありがとうございます。
0690デフォルトの名無しさん
2008/12/22(月) 01:44:040691デフォルトの名無しさん
2008/12/22(月) 10:37:290692デフォルトの名無しさん
2008/12/22(月) 13:08:15Python2.4のdistutilsモジュールのmsvccompiler.pyを書き換えたいのですが、
if self.__version >= 7:
key = (r"%s\%0.1f\VC\VC_OBJECTS_PLATFORM_INFO\Win32\Directories"
% (self.__root, self.__version))
else:
key = (r"%s\6.0\Build System\Components\Platforms"
r"\Win32 (%s)\Directories" % (self.__root, platform))
の部分のKEYは何を表しているのでしょうか?
これを7.1から8.0に対応させるためにはどのように書き換えたらいいですか?
0693デフォルトの名無しさん
2008/12/22(月) 14:14:26茨の道をわざわざ選んでいるという感じだな
本体が使っているVCと同じバージョンを使うのが一番楽だぞ
Python2.6だとdistutilsにmsvc9compilerというのが含まれていて、
VC8, VC9に対応している
mainfestの埋め込みもそれでやっている
Python2.6のmsvccompilerおよびmsvc9compilerをパクッてきて
修正するのが早いだろうと思うが、オススメはできない
0694デフォルトの名無しさん
2008/12/22(月) 14:20:36とりあえずそれを試してみます。
ありがとうございました。
0695デフォルトの名無しさん
2008/12/22(月) 14:50:01distutils のコンパイラモジュールは cc, link, include パス, lib パスを探してるだけだよ
やろうと思えば DDK 付属の cl でもビルドできる
0696デフォルトの名無しさん
2008/12/22(月) 19:33:16以下のようなスクリプトを作ったが、
import datetime
a = datetime.datetime.strptime('17:07:22,797', '%H:%M:%S,%s')
b = datetime.datetime.strptime('17:16:34,715', '%H:%M:%S,%s')
c = a - b
print c
ValueError がでる。
(strptime に %s の表現は使えないので当たり前だが)
Python の strptime は、C言語の strptime() を呼んでいると思われるのですが、
http://www.pinkdragon.net/DocumentsLibrary/contents/ja/Linux_man/strptime.3.html
によると、tm 構造体は、秒までの精度しか持っていないように見える。
ミリ秒まで計算させるにはどうしたらいいでしょうか?
以下のような感じ事で実行できるスクリプトを作りたいです。
$ hoge.py 17:07:22,797 17:16:34,715
9分11秒820ミリ秒
0697デフォルトの名無しさん
2008/12/22(月) 20:21:390698デフォルトの名無しさん
2008/12/22(月) 20:25:18>>> b = datetime.datetime(2008, 12, 22, 17, 7, 22, 797000)
>>> a - b
datetime.timedelta(0, 551, 918000)
0699デフォルトの名無しさん
2008/12/22(月) 20:26:43形式が決まってるんなら、正規表現でパーツを取り出せばいいだけだろう
後はdatetimeを構築すればどうとでもなる
0700デフォルトの名無しさん
2008/12/22(月) 20:30:279分11秒918ミリ秒
0701デフォルトの名無しさん
2008/12/22(月) 20:33:350702デフォルトの名無しさん
2008/12/22(月) 20:34:520703デフォルトの名無しさん
2008/12/22(月) 20:35:540704デフォルトの名無しさん
2008/12/22(月) 20:37:030705デフォルトの名無しさん
2008/12/22(月) 21:05:36import time
def parse_time(s):
s1, s2 = s.split(",")
t = time.strptime(s1, "%H:%M:%S")
return (t.tm_hour * 3600 + t.tm_min * 60 + t.tm_sec) * 1000 + int(s2)
a = parse_time("17:07:22,797")
b = parse_time("17:16:34,715")
print ("%d,%d" % divmod(b - a, 1000))
0706デフォルトの名無しさん
2008/12/22(月) 22:41:380707デフォルトの名無しさん
2008/12/23(火) 00:01:140708デフォルトの名無しさん
2008/12/23(火) 00:04:010709デフォルトの名無しさん
2008/12/23(火) 00:30:030710デフォルトの名無しさん
2008/12/23(火) 01:33:360711デフォルトの名無しさん
2008/12/23(火) 10:49:070712デフォルトの名無しさん
2008/12/23(火) 23:21:48何故ですか。
0713デフォルトの名無しさん
2008/12/24(水) 01:28:550714デフォルトの名無しさん
2008/12/24(水) 17:59:08set TZ=JST-9
してから
import time
time.tzname
0715デフォルトの名無しさん
2008/12/24(水) 18:11:170716デフォルトの名無しさん
2008/12/24(水) 18:36:560717デフォルトの名無しさん
2008/12/24(水) 21:39:40>>> print 'hello!'
File "<stdin>", line 1
print 'hello!'
^
SyntaxError: invalid syntax
対話モードでこんなエラーが出るんですがなぜでしょうか?
python3.0です。
0718デフォルトの名無しさん
2008/12/24(水) 21:54:44print文というのは無くなって、関数になっている
日本語のチュートリアルや本で勉強してるんなら
2.5系を入れなさい、要らない苦労せずに済むから
0719デフォルトの名無しさん
2008/12/24(水) 22:02:21そうなんですか・・・。
本を見ながらだったので早速2.5に入れなおします。
レスありがとうございました。
0720デフォルトの名無しさん
2008/12/25(木) 01:28:200721デフォルトの名無しさん
2008/12/25(木) 01:30:46で自己解決しました。
0722デフォルトの名無しさん
2008/12/25(木) 01:31:34>>> import operator
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> map(operator.mul, a, b)
[4,10,18]
0723デフォルトの名無しさん
2008/12/25(木) 01:36:40[4, 10, 18]
0724デフォルトの名無しさん
2008/12/25(木) 17:26:110725デフォルトの名無しさん
2008/12/27(土) 08:41:36import sys
print sys.argv[1] + sys.argv[2]
てのを動作させるとします。
これをプロンプトで呼び出して何度も実行したいのですが、
pythonではどうやるのが一般的な作法なんでしょうか。
add.pyは動作確認をしながら、途中で何度も修正するものとします。
0726デフォルトの名無しさん
2008/12/27(土) 10:59:150727デフォルトの名無しさん
2008/12/27(土) 11:27:00Pythonのプロンプト
0728デフォルトの名無しさん
2008/12/27(土) 11:52:070729デフォルトの名無しさん
2008/12/27(土) 12:16:03emacs用のpython-modeあるよ
C-c !で別窓にインタプリタ起動
C-c C-c でバッファ全体をインタプリタに送りつける
C-c C-! ならリージョン内
C-M-x ならclass/def
無論対話環境側の窓にうつって、プロンプトに普通にコードを打ち込んでいくことも
出来る
M-pとかでヒストリも使える
0730デフォルトの名無しさん
2008/12/27(土) 12:19:18おまえのpythonは
>>> add.py
と打つと動作するのか?
0731デフォルトの名無しさん
2008/12/27(土) 12:26:280732デフォルトの名無しさん
2008/12/27(土) 12:30:31修正しつつの作業にはあんま向いてないと思うよ
exec open("add.py").read()
とかしたほうがいい
0733デフォルトの名無しさん
2008/12/27(土) 12:33:430734デフォルトの名無しさん
2008/12/27(土) 12:36:530735デフォルトの名無しさん
2008/12/27(土) 12:38:30サンクス、完全に消えたわけではないのか
0736デフォルトの名無しさん
2008/12/27(土) 12:51:45どうしていちいちimport impしなければならないのか
0737デフォルトの名無しさん
2008/12/27(土) 12:58:44mp3のタグ情報を読めるライブラリは見つかったのですが、mp4の方が見つかりません(泣
0738デフォルトの名無しさん
2008/12/27(土) 13:30:58本スレ見てて、今pythonはじめるのなら、2.6あたりがいいのかもって思ったけど、
ネットに2.6に対応してるいいドキュメントとかないのだろうか。
2.6でも普通にみんパイを読み進めても問題ないならとりあえずそうするけど。
0739デフォルトの名無しさん
2008/12/27(土) 13:32:570740デフォルトの名無しさん
2008/12/27(土) 13:35:39把握しました。
気にせず書きまくることにします。
0741デフォルトの名無しさん
2008/12/27(土) 16:47:08Mutagen
http://code.google.com/p/quodlibet/wiki/Mutagen
0742デフォルトの名無しさん
2008/12/27(土) 18:07:08reload(sys)
sys.setdefaultencoding
0743デフォルトの名無しさん
2008/12/27(土) 19:38:51才能のあるプログラマはまず
自動化できないか考える
http://www.python.jp/doc/release/tut/node4.html#SECTION004240000000000000000
0744デフォルトの名無しさん
2008/12/27(土) 20:02:050745デフォルトの名無しさん
2008/12/28(日) 00:14:40また新しい言語を探す旅に出なくてはいけないのか・・・
0746デフォルトの名無しさん
2008/12/28(日) 00:15:470747デフォルトの名無しさん
2008/12/28(日) 00:30:180748デフォルトの名無しさん
2008/12/28(日) 00:40:400749デフォルトの名無しさん
2008/12/28(日) 01:59:40>>743
賢い人は自動化するべきかどうかを考える
0750デフォルトの名無しさん
2008/12/28(日) 02:12:550751デフォルトの名無しさん
2008/12/28(日) 08:52:250752デフォルトの名無しさん
2008/12/28(日) 09:02:31ぶっちゃける人が出てきていて驚きを隠せない俺
0753デフォルトの名無しさん
2008/12/28(日) 09:05:050754デフォルトの名無しさん
2008/12/28(日) 09:06:26xpは今でもいらないだろwwww
0755デフォルトの名無しさん
2008/12/28(日) 09:07:36xpは今でも必要だろwwwww
0756デフォルトの名無しさん
2008/12/28(日) 10:36:440757デフォルトの名無しさん
2008/12/28(日) 10:40:570758デフォルトの名無しさん
2008/12/28(日) 16:10:30さらにアコギな金額で可能だよw
0759デフォルトの名無しさん
2008/12/28(日) 16:48:150760デフォルトの名無しさん
2008/12/28(日) 19:17:430761デフォルトの名無しさん
2008/12/28(日) 22:48:000762デフォルトの名無しさん
2008/12/28(日) 23:21:320763デフォルトの名無しさん
2008/12/28(日) 23:41:130764デフォルトの名無しさん
2008/12/29(月) 03:53:430765デフォルトの名無しさん
2008/12/29(月) 06:56:41‖
‖
‖
‖
‖
‖
‖
‖
‖
‖
0766デフォルトの名無しさん
2008/12/29(月) 09:14:30sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(10)
try:
r = sock.connect(('xxx.xxx.xxx', 12345)
sock.send('test message')
except socket.error, e:
print 'Error: %s' % e
これを実行すると送信されるメッセージは
「test.message」になります
メッセージを「test message」にするにはどうしたらよいでしょうか?
0767デフォルトの名無しさん
2008/12/29(月) 13:16:43道を知っているから、高速とほとんどかわらないし
0768デフォルトの名無しさん
2008/12/29(月) 13:59:56socketよくわからんが
送られてるパケットはちゃんと「test message」だから
送信側と受信側の文字コードの処理で失敗している?
0769デフォルトの名無しさん
2008/12/29(月) 15:49:39いったいどこの誤爆なんだ
0770デフォルトの名無しさん
2008/12/29(月) 21:50:30送ったパケットを見ると.になっているのでこっちの問題だと思いました
送信側のコードを変えるのはどうしたらいいのでしょうか
.pyドキュメントの文字コードを変更してみましたが変わりません
教えてください
0771デフォルトの名無しさん
2008/12/29(月) 22:42:49と予想してみた。
0772デフォルトの名無しさん
2008/12/29(月) 22:50:360773デフォルトの名無しさん
2008/12/31(水) 17:08:010774デフォルトの名無しさん
2008/12/31(水) 23:24:540775 【だん吉】
2009/01/01(木) 00:14:460777デフォルトの名無しさん
2009/01/01(木) 01:28:080778デフォルトの名無しさん
2009/01/02(金) 18:18:54Ubuntu8.04LTSも2.5.2が最新だった気がする
0779デフォルトの名無しさん
2009/01/02(金) 22:57:060780デフォルトの名無しさん
2009/01/02(金) 22:58:280781デフォルトの名無しさん
2009/01/02(金) 23:00:170782デフォルトの名無しさん
2009/01/03(土) 10:06:11Python3.0です
0783デフォルトの名無しさん
2009/01/03(土) 10:26:50だから環境とエラーメッセージを略すなと…
Python3.0ではstrはunicode文字列なので(他のはbytes型)
isinstance(x, str)
あとunicode文字列はu'〜'でなく'〜'だけでOK
0784デフォルトの名無しさん
2009/01/03(土) 12:35:42ttp://gihyo.jp/dev/serial/01/pythonhacks
0785デフォルトの名無しさん
2009/01/04(日) 01:32:23どうやれば分かりますか?
0786デフォルトの名無しさん
2009/01/04(日) 01:52:210787デフォルトの名無しさん
2009/01/04(日) 03:46:46ゆくゆくはプログラムも作ってみたいと思ってます。
0788デフォルトの名無しさん
2009/01/04(日) 04:04:23勉強して、損のない言語だと思うよ
やりたいこと目的によって違うから、下を参考にしたりとか
いろいろとググるといいよ
どの言語を学ぶべき? - プログラミングスレまとめ in VIP
ttp://vipprog.net/wiki/which_lang.html
0789デフォルトの名無しさん
2009/01/04(日) 04:51:38どうしたらできますか?
0790デフォルトの名無しさん
2009/01/04(日) 06:16:15locale.setlocale(locale.LC_ALL, 'English_United States.1252')
x = 10000000000000000
print(locale.format("%d", x, grouping=True))
検索しただけです
0791デフォルトの名無しさん
2009/01/04(日) 09:33:44Pythonだけ特別扱いされていたり
彼女の作り方まで教えてくれていたり
とても素敵なサイトですね
0792デフォルトの名無しさん
2009/01/04(日) 09:40:060793デフォルトの名無しさん
2009/01/04(日) 12:21:44ありがとうございます
結構ややこしいですね・・
0794デフォルトの名無しさん
2009/01/04(日) 13:13:13windowsのテキストだと心細いので。
0795デフォルトの名無しさん
2009/01/04(日) 13:21:210796デフォルトの名無しさん
2009/01/04(日) 13:25:370797デフォルトの名無しさん
2009/01/04(日) 13:34:55print "Hello", len("Hello")
print u"こんにちは", len(u"こんにちは")
print len(u"こんにちは".encode("UTF-8"))
3行目のprint文は、UTF-8でエンコードされてますが、それ以外(1,2行目)もUTF-8ではないんですか?
0798デフォルトの名無しさん
2009/01/04(日) 15:44:180799デフォルトの名無しさん
2009/01/04(日) 16:26:390800デフォルトの名無しさん
2009/01/04(日) 16:46:29print u'hogehoge' だけ実行したときは
setdefaultencoding() のエンコで自動エンコした上で表示
この場合も表示される段階で初めてそのエンコになる
これであってる?
0801デフォルトの名無しさん
2009/01/04(日) 16:50:06#coding: UTF-8
とか
# -*- coding: utf-8 -*-
は無関係
0802デフォルトの名無しさん
2009/01/04(日) 16:54:010803デフォルトの名無しさん
2009/01/04(日) 17:23:250804デフォルトの名無しさん
2009/01/04(日) 17:23:49これやると日本語が駄目になりますね
すみませんでした
0805797
2009/01/04(日) 17:24:15あと、もうひとつ…お願いします。
pythonの環境変数PATHを登録後
プロンプトで
>python
でpythonが起動?しますが、
>python test.py (test.pyは実際するソースコード記載のファイルです。
などを実行するとエラーになります。
環境変数設定がおかしいのでしょうか?使い方自体が間違ってますか?
ちなみに
C:\Python26>python test.py
の状態で行うと正常な動作が行われます。
0806804
2009/01/04(日) 17:28:49locale.setlocale(locale.LC_NUMERIC, 'English_United States.1252')
これで日本語も大丈夫らしいです
検索しただけですが
0807デフォルトの名無しさん
2009/01/04(日) 17:30:45ファイルを実行するだけで勝手にpythonが開いてくれる
0808デフォルトの名無しさん
2009/01/04(日) 17:31:08どんなエラーになったかメッセージをコピペしろって
0809807
2009/01/04(日) 17:33:48関連付けしていれば勝手に開いてくれるな
適当ばっかだ
0810797
2009/01/04(日) 17:34:10File "<stdin>", line 1, in <module>
NameError: name 'test10' is not defined
0811デフォルトの名無しさん
2009/01/04(日) 17:34:29C localeはプロセスグローバルなので、あまり変更はお勧めは出来ないな。
目的がちょろっとした文字列処理でしかないのなら、そのような関数を
書けばいいんじゃないの。
>>800
stdoutへのunicodeのprintは、sys.stdout.encodingによって変換されると
思う。
大抵のケースでは、確かにsys.getdefaultencoding()で取得できる値で
変換されるけどね。
本当はsys.getfilesystemencoding()で取れる値が一番マシに見えるんだが……。
0812806
2009/01/04(日) 17:38:16コンマが打ちたいだけですからね
0813デフォルトの名無しさん
2009/01/04(日) 17:39:340814デフォルトの名無しさん
2009/01/04(日) 17:41:370815デフォルトの名無しさん
2009/01/04(日) 17:51:05>NameError: name 'test10' is not defined
このtest10 ってのは自分で定義している名前だよね?
ひょっとして\python26にあるのと中身が違うのを実行してない?
0816810
2009/01/04(日) 18:35:480817810
2009/01/04(日) 18:36:46>python
から先を教えて下さい。
0818デフォルトの名無しさん
2009/01/04(日) 19:25:020819デフォルトの名無しさん
2009/01/04(日) 19:48:56実行しようとしている場所カレントディレクトリのパスに日本語が含まれてないか?
0820805
2009/01/04(日) 20:04:02なので日本語はないですね
0821デフォルトの名無しさん
2009/01/04(日) 20:06:56今すぐに
0822デフォルトの名無しさん
2009/01/04(日) 20:13:38>python test.py ←c:\python26
C:\Python26>python test.py ←c:\python26
という意味?
0823デフォルトの名無しさん
2009/01/04(日) 20:49:17です。
0824デフォルトの名無しさん
2009/01/04(日) 23:03:04>などを実行するとエラーになります。
>C:\Python26>python test.py
>の状態で行うと正常な動作が行われます。
同じものを同じ場所で実行したのに結果が違うのか?
0825デフォルトの名無しさん
2009/01/04(日) 23:39:360826デフォルトの名無しさん
2009/01/04(日) 23:49:51C:\Python26\test.pyを
C:\Python26でpython test.pyとして起動すれば実行できる
他のディレクトリで同じコマンドラインをタイプしても実行できないと
言っているのだろうか?
あたりまえだ
0827デフォルトの名無しさん
2009/01/04(日) 23:51:230828826
2009/01/04(日) 23:59:191) test.pyのフルパスをpythonに教えてやる、つまり
python c:\python26\test.py
のようにすれば常に実行できる。が、面倒くさいだろう。
2) 拡張子pyがpython.exeに関連付けされており、環境変数PATHEXTに拡張子pyが
含まれており、test.pyがPATHの通ったところに置かれているならば、単に
test.py
で実行できる。
3) cygwinのシェルからならば、スクリプトの先頭行に#!/usr/bin/env pythonのような
呪文を書いてやれば2)と同様にして実行できる。勿論この場合はcygwinの
pythonになるし、PATHの通った場所にスクリプトを置いておかなければならないのは
同じ。これはUnix系のOSで一般的な方法。
0829デフォルトの名無しさん
2009/01/05(月) 01:40:420830デフォルトの名無しさん
2009/01/05(月) 02:15:47Python 2.6.1 (略)
Type "help", "copyright", "credits" or "license" for more information.
>>> test10.py
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'test10' is not defined
>>>
っていう話なのかと思った
0831デフォルトの名無しさん
2009/01/05(月) 02:16:47>>> test10.py
と打ったみたいだが
0832デフォルトの名無しさん
2009/01/05(月) 02:43:20付けない方がいいですか?
0833デフォルトの名無しさん
2009/01/05(月) 02:58:070834デフォルトの名無しさん
2009/01/05(月) 03:11:300835デフォルトの名無しさん
2009/01/05(月) 03:22:080836デフォルトの名無しさん
2009/01/05(月) 04:03:22現在の経験値的には、vimは見習いレベル、emacsは超初心者レベルです
また検索機能が強力なのは、どっちなんでしょうか?
2chを見る限りだとemacsメイン・ときどきvim派が多いですよね
0837デフォルトの名無しさん
2009/01/05(月) 06:08:41sshでリモートとかおれわからんし
0838デフォルトの名無しさん
2009/01/05(月) 06:35:28Pythonの日本語環境設定がしやすいインストーラーという奴を
インストールしまして、いざ日本語環境を設定しようとしましたところ
エラーが出て挫折しました。
python setup.py install
^
なんかpに間違いがあるようなのですが、
なんのことやらさっぱりわからないのです。
0839デフォルトの名無しさん
2009/01/05(月) 06:37:05すみません。
エラーが出たpはpythonのpではなくsetupのpです。
GUIのほうだとsetupが間違いと出ます。
0840デフォルトの名無しさん
2009/01/05(月) 08:24:38こんなもの入れなくてもいい
0841デフォルトの名無しさん
2009/01/05(月) 09:31:002.4以降は、Pythonの日本語環境設定を入れなくて良いっぽいよ
翻訳されたドキュメントの多いPython 2.5.2版がおすすめ
Python標準リリース
ttp://www.python.jp/Zope/download/pythoncore
0842デフォルトの名無しさん
2009/01/05(月) 09:44:392.6は3.0と違って2.5の上位互換になってるから、2.5のドキュメントはほとんどそのまま使える。
Python 3.0 の新機能のいくつかも2.6から使える。
0843デフォルトの名無しさん
2009/01/05(月) 09:48:43でもPythonの場合ってヘッダすらprintで出力するんだよな
0844デフォルトの名無しさん
2009/01/05(月) 09:49:33なんで2.6なんて勧める。
2.5.2が一番最強だろ。パフォーマンス的にも。
0845838
2009/01/05(月) 09:55:41MS-DOSプロントで実行し終了するには
import sys
sys.exit()
と記入すればよいことがわかりました。
しかしMS-DOSでいうところのclsに当たるコマンドがわかりません。
それから日本語を出力することは出来るのですが
入力することが出来ません。
GUIだと入力もできます。
0846デフォルトの名無しさん
2009/01/05(月) 10:08:26バグフィックスされた 2.5.4 があるのに 2.5.2 を薦めるほうがどうかと思うが?
5%程度の性能差をとるか、新機能とPython3.0への予習をとるかの問題。
0847デフォルトの名無しさん
2009/01/05(月) 10:10:03>それから日本語を出力することは出来るのですが
>入力することが出来ません。
WindowsだとAlt+漢字キーとかじゃないの
0848デフォルトの名無しさん
2009/01/05(月) 10:13:53そんなことはわかってます。
ただ僕は、
pythonでのコマンドが知りたいので
そういったことはやりたくないです。
>WindowsだとAlt+漢字キーとかじゃないの
知ってます。日本語入力は問題ないです。
何か問題ありますか
0849デフォルトの名無しさん
2009/01/05(月) 10:34:312.5.4がリリースされているのは、知っているけど
Cygwin、Ubuntu8.04LTSも単純なインストールだと2.5.2なんだけど
2.5.4に上げちゃっていいの?
最新版を追っかけたくなくて、上位互換率の高い安定版を入れたい人は、
何を入れたらいいのでしょうか?
2.5.4を入れるなら、2.6.xを入れたい感じだが
0851デフォルトの名無しさん
2009/01/05(月) 11:06:51Linuxや何かでパッケージマネージャで管理してるのはわざわざソースから
新しいのを入れんでいいだろ
2.5.4はあくまでバグフィックスリリースであって、外部仕様もABIも互換、
違いはバグが直ってるかどうかだけだから、PCだけ2.5.4にして
端末間でバージョン合わなくなっちゃってもいいの?みたいな心配してるんなら
無用と思われ
まー俺は2.6に移行中だから、2.5.4入れてないけどね
ぶっちゃけ面倒くさい
2.5.3がすぐポシャって、放置してて正解だと思ったわw
0852デフォルトの名無しさん
2009/01/05(月) 11:15:50print()の方が好みだから2.6使いたいけどそれ以外は違いがよくわからん。
0853デフォルトの名無しさん
2009/01/05(月) 11:16:030854デフォルトの名無しさん
2009/01/05(月) 11:21:12基本的には2.6は上位互換だからな
一部の機能はDeprecationWarning食らうけど、使えんわけではない
特に大きな問題はないんじゃないか
>>853
ABIという単語がなんか面白かったか
同じpython25.dllを使っていて、バイナリインタフェースが同じだから
外部ライブラリや何かもリビルドなしでそのまま同じものが使えるという意味だよ
0855デフォルトの名無しさん
2009/01/05(月) 12:27:28俺は853じゃないし、揚げ足取りも好きではないけど、一応突っ込み。
普通ABIというと、引数の渡し方、戻り値の戻し方、スタックフレームの構築と開放の
タイミング、保存されるレジスタと保存されないレジスタみたいな事を言う。
Python/C API を略すなら、ABIよりAPIの方が適切だと思う。
0856デフォルトの名無しさん
2009/01/05(月) 12:40:42Wikipediaには
ABIはApplication Programming Interface(API)とは異なる。
APIはソースコードとライブラリ間のインターフェイスを定義したものであり、
同じAPIをサポートしたシステム間では同じソースコードをコンパイルして利用できる。
一方、ABIはオブジェクトコードレベルのインターフェイスであり、互換ABIを
サポートするシステム間では変更無しで同じ実行ファイルを動作させることができる。
と書いてある。
オブジェクトコードレベルでリンク互換であることを言いたいわけで、
「リンク互換」のほうが適切かもしれんが、ABI互換でも別によいような。
0857デフォルトの名無しさん
2009/01/05(月) 13:30:08セオリーのようですが、携帯の絵文字は、その過程で壊れたりしないのでしょうか?
絵文字という異質なものを、unicodeが正常に扱えるのか、心配なのですが
0858デフォルトの名無しさん
2009/01/05(月) 13:47:08スラッシュドット・ジャパン | 携帯絵文字のUnicode化、Googleも協力
http://slashdot.jp/it/article.pl?sid=08/11/28/0631244
というニュースがあった。
0859デフォルトの名無しさん
2009/01/05(月) 15:07:02マジレスすると
ttp://pypi.python.org/pypi/setuptools/
を入れてないんじゃないかと
まあ今回に限れば >>840-841 に同意
0860デフォルトの名無しさん
2009/01/05(月) 15:38:13扱い方によっては壊れるし、壊さないで例外出すことも可能
unicode にしたい binary (たとえば utf-8) 文字列 hoge に対して
fuga = hoge.decode('utf-8', 'strict')
fuga = hoge.decode('utf-8', 'ignore')
fuga = hoge.decode('utf-8', 'replace')
0861デフォルトの名無しさん
2009/01/05(月) 17:26:08一旦中身をクリアしてから書き込むにはどうすればいいでしょうか。
普通にseek(0)したあとwriteすると新しいデータが元より小さいときにその差分が残ってしまうんですが…
0862デフォルトの名無しさん
2009/01/05(月) 17:30:200863デフォルトの名無しさん
2009/01/05(月) 17:32:34すっかり見落としてた。ありがとう
0864デフォルトの名無しさん
2009/01/05(月) 17:36:580865デフォルトの名無しさん
2009/01/05(月) 23:53:40特定文字列が存在していれば抽出して、存在しなければ抽出しないにはどうすればよいでしょうか。
たとえば
"abcdefghi" からは "abc", "def" をキャプチャ
"abcghi" からは "abcghi" をキャプチャ
するにはどのような正規表現で実現できるのか。。。
"(.*)(def)?"→"\1 \2"でいけるかと思ったけど無理でした
0866デフォルトの名無しさん
2009/01/05(月) 23:57:08defが含まれていなければ文字列全体を返す
defが含まれていれば、それより前の文字列と、def自身を返す
ようにしたいのか?
0867865
2009/01/06(火) 00:05:27>defが含まれていなければ文字列全体を返す
>defが含まれていれば、それより前の文字列と、def自身を返す
まったくもってそのとおりです。
存在していないときに「unmatched group」ってエラーになってしまうんです。
0868デフォルトの名無しさん
2009/01/06(火) 00:22:17いけるわけないじゃん
0869デフォルトの名無しさん
2009/01/06(火) 00:25:44m = re.search('(.*?)(?=def)', x)
return (m.group(1), 'def') if m else (x,)
f('abcdefghi')
-> ('abc', 'def')
f('abcghi')
-> ('abcghi')
こんなもんでいいんじゃないのか
0870デフォルトの名無しさん
2009/01/06(火) 00:34:480871865
2009/01/06(火) 00:40:37ありがとうございます!!
思ったより複雑な式が必要だったんですね。。。
まだまだ修行が足りんです。
0872デフォルトの名無しさん
2009/01/06(火) 04:40:43同じモジュール(モジュールC)をimportしている時、
モジュールC用のメモリ領域は共用されるのでしょうか?
0873デフォルトの名無しさん
2009/01/06(火) 05:06:200874デフォルトの名無しさん
2009/01/06(火) 05:30:01ありがとうございました。
0875デフォルトの名無しさん
2009/01/06(火) 05:37:19>>> b = (10, 20)
>>> for i, j in (a, b):
... print i, j
...
1 2
10 20
となるところを、aとbの中身はそのままで、
1 10
2 20
のように出力させたいのですが、どのようにやると簡単でしょうか。
0876デフォルトの名無しさん
2009/01/06(火) 05:47:340877デフォルトの名無しさん
2009/01/06(火) 05:49:45ほぉ、そんなものが。
ありがとうございます。
0878デフォルトの名無しさん
2009/01/06(火) 12:28:23メモリ共用っつーか、単純に2度目以降のimportはスルーされる
例えばimport thisを2度やっても、zen of pythonが表示されるのは最初だけ
まあ違いが分かるのは、thisみたいにモジュールのトップレベルに
直接実行文が記述されているケースぐらいだけどな
0879デフォルトの名無しさん
2009/01/07(水) 00:47:08自分で使える引き出しにはならない。しかも便利そう。腐れ脳ファック
0880デフォルトの名無しさん
2009/01/07(水) 00:50:200881デフォルトの名無しさん
2009/01/07(水) 00:59:28i r-ー-┬-‐、i
| |,,_ _,{|
N| "゚'` {"゚`lリ
ト.i ,__''_ !
/i/ l\ ー .イ|、
,.、-  ̄/ | l  ̄ / | |` ┬-、
/ ヽ. / ト-` 、ノ- | l l ヽ.
/ ∨ l |! | `> | i
/ |`二^> l. | | <__,| |
_| |.|-< \ i / ,イ____!/ \
.| {.| ` - 、 ,.---ァ^! | | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄l
__{ ___|└―ー/  ̄´ |ヽ |___ノ____________|
}/ -= ヽ__ - 'ヽ -‐ ,r'゙ l |
__f゙// ̄ ̄ _ -' |_____ ,. -  ̄ \____|
| | -  ̄ / | _ | ̄ ̄ ̄ ̄ / \  ̄|
___`\ __ / _l - ̄ l___ / , / ヽi___.|
 ̄ ̄ ̄ | _ 二 =〒  ̄ } ̄ / l | ! ̄ ̄|
_______l -ヾ ̄ l/ l| |___|
0882デフォルトの名無しさん
2009/01/07(水) 15:00:45モジュールメソッドというのはアリですか?
0883デフォルトの名無しさん
2009/01/07(水) 15:03:080884デフォルトの名無しさん
2009/01/07(水) 15:51:17java等ではprotectedにしたりしますが、
Pythonは全部publicなので、それがテンプレートメソッドと分かりにくいですよね
phpではprivate,protectedなメンバは_をプリフィックスにする慣習がありますが
pythonでそういった、publicと非publicをわかりやすくする慣習はありますか?
0885デフォルトの名無しさん
2009/01/07(水) 16:04:000886デフォルトの名無しさん
2009/01/07(水) 16:16:450887デフォルトの名無しさん
2009/01/07(水) 16:19:18PEP8ねttp://www.oldriver.org/python/pep-0008j.html
>>886
いきなり厨とか言い出すお前のほうがうざい。
0888デフォルトの名無しさん
2009/01/07(水) 19:43:28どの教材を見ても、コマンドラインに表示するだけって印象が強いです。
実際ブラウザの作り方なんかはどの本にも載ってませんでした。
Cとかもそうなのでしょうか?
VBとかは見た感じでは、ボタンがどうのって書いてありました。
pythonでもボタンの位置などのプログラムも可能でしょうか?
0889デフォルトの名無しさん
2009/01/07(水) 19:51:12プログラミング云々前の知識を身につけるべき
0890デフォルトの名無しさん
2009/01/07(水) 19:55:36具体的には?
一応シスアド、CCNAあたりは持ってます。
0891デフォルトの名無しさん
2009/01/07(水) 19:57:43http://pc11.2ch.net/test/read.cgi/tech/1153585095/712-718n
最近別スレに投下した GUI ベースの100マス計算プログラム。
こんな感じでボタン等の GUI 部品を使ったプログラムも作れるお。
0892デフォルトの名無しさん
2009/01/07(水) 20:21:580893デフォルトの名無しさん
2009/01/07(水) 21:16:58エスパー衆、おつ
0894デフォルトの名無しさん
2009/01/07(水) 22:57:51>pythonでもボタンの位置などのプログラムも可能でしょうか?
可能です。
0895デフォルトの名無しさん
2009/01/08(木) 00:01:12同じ使用例を見て、何度も目からうろこが落ちる(だけな)んですねw
わかります
0896デフォルトの名無しさん
2009/01/08(木) 05:49:300897デフォルトの名無しさん
2009/01/08(木) 12:00:410898デフォルトの名無しさん
2009/01/08(木) 15:34:140899デフォルトの名無しさん
2009/01/08(木) 15:39:28VB > Pythonだね。
0900デフォルトの名無しさん
2009/01/08(木) 17:20:07英語でも構いません。
0901デフォルトの名無しさん
2009/01/08(木) 17:24:00とりあえず、日本の公式→本家だな
話は、それからだ
0902デフォルトの名無しさん
2009/01/08(木) 17:29:58円高の今のうちに買っておき給へ
ttp://www.amazon.com/dp/1590593715/
0903デフォルトの名無しさん
2009/01/08(木) 17:50:04>>900感謝するべき
0904デフォルトの名無しさん
2009/01/08(木) 18:02:190905デフォルトの名無しさん
2009/01/08(木) 20:59:580906デフォルトの名無しさん
2009/01/08(木) 21:30:470907デフォルトの名無しさん
2009/01/08(木) 21:40:500908デフォルトの名無しさん
2009/01/09(金) 02:40:470909デフォルトの名無しさん
2009/01/09(金) 21:32:56あと、ファイルオブジェクトはどういうものですか??
0910デフォルトの名無しさん
2009/01/10(土) 02:47:570911デフォルトの名無しさん
2009/01/10(土) 03:28:57プログラムを作るとき、繰り返し実行される部分を関数やメソッドといった
「呼び出せるもの」の形で作ることがよくある。Python では関数やメソッドは
普通 def 文で作る。以下、話を関数に限定する(メソッドについても同じことが
言える)。
関数を呼び出すとき、呼び出し側は関数に入力データを渡して、関数から
出力データを受け取る。このことを関数の立場から言い換えると、関数は
呼び出し側から入力データを受け取って、呼び出し側に出力データを返す、と
言える。つまり「返す」とは関数が呼び出し側に出力データを受け渡すことだ。
Python では関数から出力データを返すには return 文を使う。
関数に渡す入力データを引数(ひきすう)、関数が返す出力データを戻り値
(もどりち)とも言う。return 文は戻り値を返すための文というわけだ。
Python ではデータのことをオブジェクトと呼ぶことが多い。オブジェクトは
オブジェクト指向プログラミングというプログラミングの方法論の核となる
考え方だ。オブジェクトは一般に、データとそれを操作するメソッドから成る。
Python で扱えるデータは何でもオブジェクトだ。isinstance() という関数を
使うとオブジェクトかどうかを調べられる。例えば 123 という数値データや
"abc" という文字データは
>>> isinstance(123, object)
True
>>> isinstance("abc", object)
True
のように isinstance() 関数が True を返すのでオブジェクトだと分かる。
0912911の続き
2009/01/10(土) 03:30:56を読み書きためのオブジェクトだ。Python では普通 open() 関数で作る。
>>> f = open("test.txt", "w") # f はファイルオブジェクト
>>> isinstance(f, object)
True
ファイルオブジェクトにはファイルを読み書きするためのメソッドが付いている。
上の例に沿って言えば f.read() や f.close() がファイルオブジェクトのメソッド
の例だ。それぞれファイルを読むメソッド、開いたファイルを閉じるメソッドだ。
どんなメソッドがあるかはマニュアルに載っている。
・・・とまあ、あまり前提知識に頼らないように説明するとこのように長くなる。
なので、最初のうちは分からないことは保留してとりあえず先に進むのがいいよ。
入門書を読んでいるのであれば、一通り読み通すと前の方で疑問に思ったことが
解決できることも多いし。がんばってね。
0913デフォルトの名無しさん
2009/01/10(土) 04:27:06横からだけど、逆に言えば、メソッドのないものはオブジェクトとは言わないってこと?
0914デフォルトの名無しさん
2009/01/10(土) 04:29:560915デフォルトの名無しさん
2009/01/10(土) 04:35:35ってとこ
0916デフォルトの名無しさん
2009/01/10(土) 04:40:03ていうかPythonでメソッドのないオブジェクトなんて作れたっけか
0917デフォルトの名無しさん
2009/01/10(土) 04:57:500918デフォルトの名無しさん
2009/01/10(土) 07:04:01isinstance(hoge, object)
が False になるもの
0919デフォルトの名無しさん
2009/01/10(土) 14:00:41ありがとうございました。
わかりやすかったです。
0920デフォルトの名無しさん
2009/01/10(土) 22:20:35戻り値を返すということどういうことでしょうか??
printでは戻り値を返すとは言わないのはなぜですか??
0921デフォルトの名無しさん
2009/01/10(土) 22:33:350922デフォルトの名無しさん
2009/01/10(土) 22:40:07例えば
def bai(x):
print 2*x
y=bai(10)
だと画面に20と表示されるけどyには何も入っていないだろ
def bai(x):
return 2*x
y=bai(10)
これだとyに20が入るのは分かるよね?
てか関数って概念分かる?
0923911
2009/01/10(土) 22:51:11いい質問だ。「戻り値を返す」という言葉はプログラミングに関して使う、一種の
専門用語なんだよ。この用語は普通、関数(またはメソッド)からその呼び出し側に
出力データを渡すという意味にのみ使われる。return 文はプログラム内(関数または
メソッドとその呼び出し側との間)でデータを授受するために使う。
これに対して、print は画面やファイルなどプログラムの外にデータを送り出すのに
使うところが違う。つまり、print を使うのは人間のユーザや別のプログラムに
データを渡したいときだ。このデータ授受を指して「戻り値を返す」とは普通言わない。
これは理屈じゃなくて習慣の問題だ。外国語の勉強と同じで、習って慣れるしかない。
0924デフォルトの名無しさん
2009/01/10(土) 23:16:560925デフォルトの名無しさん
2009/01/10(土) 23:21:13区別つかんかもな
>>> 1+1
2
>>> print 1+1
2
0926デフォルトの名無しさん
2009/01/11(日) 00:37:330927デフォルトの名無しさん
2009/01/11(日) 09:28:40Print object(s) to the stream file, separated by sep and followed by end.
sep, end and file, if present, must be given as keyword arguments.
All non-keyword arguments are converted to strings like str() does
and written to the stream, separated by sep and followed by end.
Both sep and end must be strings; they can also be None,
which means to use the default values.
If no object is given, print() will just write end.
The file argument must be an object with a write(string) method;
if it is not present or None, sys.stdout will be used.
ttp://docs.python.org/3.0/library/functions.html#print
0928デフォルトの名無しさん
2009/01/11(日) 09:29:460929デフォルトの名無しさん
2009/01/11(日) 10:11:37Python 3.0 (r30:67507, Dec 3 2008, 20:14:27) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> type(print('hoge'))
hoge
<class 'NoneType'>
Firefox3.0.5でインストーラpython-3.0.msiを落とそうとすると
「このゾーンのセキュリティ設定に従ってこのダウンロードはブロックされました」
とか怒られるね。なんなんだろ。
0930デフォルトの名無しさん
2009/01/11(日) 11:28:05良かった良かった
0931929
2009/01/11(日) 11:58:00ttp://support.mozilla.com/ja/kb/ファイルのダウンロードや保存ができない#__13
0932デフォルトの名無しさん
2009/01/11(日) 13:54:13>>> u = u"はにほへといろは"
>>> u
u'\u306f\u306b\u307b\u3078\u3068\u3044\u308d\u306f'
とならないで
>>> u = u"はにほへといろは"
>>> u
u'\x82\xcd\x82\xc9\x82\xd9\x82\xd6\x82\xc6\x82\xa2\x82\xeb\x82\xcd'
こうなる・・・
cygwin、ややこしなあ
割り切って、Ubuntuでプログラミングしようかな
15.2 Cygwin の Python と日本語
ttp://www.okisoft.co.jp/esc/cygwin-15a.html#f4
0933デフォルトの名無しさん
2009/01/11(日) 21:22:01それ、そのページに書いてあるようにalias切ってやればいいはずだぜ
まあ、そうは言ってもcygwinがオススメなわけじゃないがな
0934デフォルトの名無しさん
2009/01/11(日) 21:39:30ありがとうございました。理解できました。
>>922
return文だとyに入るのはわかりますが、関数の概念はわかりません。
関数の概念ってなんですか??
あとなぜreturnだと関数に代入できるのですか??
プログラム内だからですか??
皆さんお返答願いします。
0935デフォルトの名無しさん
2009/01/12(月) 00:29:330936デフォルトの名無しさん
2009/01/12(月) 01:09:45数学の授業で関数って習わなかったかい?
例えばy=bai(x)だと引数xに何らかの処理baiを行ってその結果をyに代入してるよな
def bai(x):
return 2*x
これのreturnはまさにその結果を外側に渡す命令なわけ
これがprintだと画面に2*xを表示してるだけで外側には結果を返してない
というかまずは数学の勉強をした方がいいぞ
0937デフォルトの名無しさん
2009/01/12(月) 02:13:04プログラムは、コンピュータに対する命令(文)の集まりだ
プログラムを書いていると、決まりきった、同じような命令の集まり=手順が
必要になることがある
毎回同じことを書くのはあほくさいので、その手順に名前をつけ、
「××作業をやれ」と、名前を示すだけでその作業をやらせられるようにする
それを、サブルーチンと呼ぶ
サブルーチンの中で10個の作業を行うとして
毎回10個の作業を記述するかわりに、「××作業をやれ」の一言で済むのだから楽だ
作業は、ちょっとだけ内容が違うこともある
例えば「足し算」という作業を考える
足し算の方法は決まっているわけだが、実際に足す数は色々だ
そして、結果も色々だ
1 + 1なら2だし、1 + 2なら3だ
このような場合、「作業の方法」だけを定義して、実際に足す数(=入力)
を後で個別に与えられると便利だ
0938デフォルトの名無しさん
2009/01/12(月) 02:14:33足し算の定義を「関数」と呼び、足し算に与える数(=入力)を引数と呼ぶ
足し算の結果を「返り値」と呼ぶ
関数では、当たられた入力を元に、いくつかの計算を決まった手順で
行い、どうにかして結果を導き出す
結果を返す(教える)ために用いられるのが、return文だ
答えはこれだ、と言っているわけだ
関数に常にreturn文が必要なわけではない
××作業をやれ、というだけで、その結果を教えてもらう必要が無いのなら、
そのようなものは要らない
しかし、作業結果の報告が聞きたいならば、return文が必要だ
せっかく足し算をさせたのに、足した結果が分からないのでは意味が無いからな
0939デフォルトの名無しさん
2009/01/12(月) 02:24:14def add(x, y): print x + y
という関数を定義して、
add(1, 1)
のように呼び出すと、
2
が印字される
だから、画面の目の前に座っている人間には、1+1は2なのだな、と分かる
が、print文は、return文と違って、何も返さない
だから、1+1の結果をプログラムで続けて利用したい場合には、役に立たない
関数addは、「人間には」情報を与えるが、それを呼びだした「プログラムには」
何の情報も与えないからだ
0940デフォルトの名無しさん
2009/01/12(月) 04:24:23ここらへん void context を許さない C# なんかのほうが教育的かもしれない
0941デフォルトの名無しさん
2009/01/12(月) 05:04:05ですよね
cygwin + Python + emacs21.4がオススメじゃない理由は、どんなのがありますか?
むしろ、オススメだよという理由があるなら、そういうのも教えてほしいです
わかる方、お願いします
0942デフォルトの名無しさん
2009/01/12(月) 05:12:26Cygwinを使う明確な理由があるならともかく
そうでないならUnix環境の劣化コピーに過ぎないと思う。
Ubuntuに慣れてるならそれを使ったほうがいい。
0943デフォルトの名無しさん
2009/01/12(月) 09:10:290944デフォルトの名無しさん
2009/01/12(月) 11:46:13Ubuntuからパッケージ管理などをパクった糞OS
0945デフォルトの名無しさん
2009/01/12(月) 12:09:060946デフォルトの名無しさん
2009/01/12(月) 12:19:59wxWidgetsのバージョン
wxPythonのバージョン
使ってるOS
0947デフォルトの名無しさん
2009/01/12(月) 12:49:24Pythonのバージョン
Python 2.6 (r26:66721, Oct 2 2008, 11:35:03) [MSC v.1500 32 bit (Intel)]
wxWidgetsのバージョン
よく分かりません。
wxPythonのバージョン
wxPython2.8-win32-unicode-2.8.9.1-py26
使ってるOS
Windows Vista
です。
ちなみに強制終了時には以下のようなメッセージが表示されます。
ttp://sakuratan.ddo.jp/uploader/source/date101775.png
0948デフォルトの名無しさん
2009/01/12(月) 12:58:45これが原因じゃないのかな
0949デフォルトの名無しさん
2009/01/12(月) 12:58:58ttp://trac.wxwidgets.org/ticket/10082
0950デフォルトの名無しさん
2009/01/12(月) 13:06:0864bitではなく32bitです・・・
0951デフォルトの名無しさん
2009/01/12(月) 15:42:00同等のPurePythonのライブラリってないですか?
自宅でコンパイルしたのをアップしてみようと試したんですが
MySQLのパスがインスコ時に自動設定されるみたいで、
そのままアップしても結局エラーになっちゃう・・・(パスが違うので_mysqlをimportできない)
0952デフォルトの名無しさん
2009/01/12(月) 16:03:070953デフォルトの名無しさん
2009/01/12(月) 16:46:360954デフォルトの名無しさん
2009/01/12(月) 16:53:47どうせ同等のPurePythonのライブラリをインストールする方法に悩むだろ同じこと
MySQLdbをインストールしろ
0955デフォルトの名無しさん
2009/01/12(月) 16:54:32質問の仕方を変更してください
>>953
できますよ
0956デフォルトの名無しさん
2009/01/12(月) 16:58:130957デフォルトの名無しさん
2009/01/12(月) 17:24:130958デフォルトの名無しさん
2009/01/12(月) 17:41:22つまりファイル編集でパスを設定しなおせるってことなんでしょうか。
>>956のページから落としてるので、
そこのフォーラムなども見たりしてるんですが、なんとも・・・
0959951
2009/01/12(月) 17:42:210960デフォルトの名無しさん
2009/01/12(月) 18:35:080961デフォルトの名無しさん
2009/01/12(月) 21:40:46http://pc11.2ch.net/test/read.cgi/tech/1203557046/
0962941
2009/01/13(火) 02:12:05レスをもらって、一日考えてみたけど
もう少し、Cygwin路線でがんばってみたいと思います
でも、Linux環境併用で行きたいと思います
そして、自分の求める解を探してみます
レス、ありがとうございました
0963デフォルトの名無しさん
2009/01/13(火) 03:40:35次スレにpythonのダウンロード先を追加していただけませんか?
531 :デフォルトの名無しさん:2008/12/08(月) 11:13:39
最新版直リン
ttp://www.python.org/download/
3.0 (実験バージョン)
ttp://www.python.org/download/releases/3.0/
2.6.1 (3.0移行推進バージョン)
ttp://www.python.org/download/releases/2.6.1/
2.5.2 (安定バージョン)
ttp://www.python.org/download/releases/2.5.2/
532 :デフォルトの名無しさん:2008/12/08(月) 11:16:03
python.jpだけは許せねえな
533 :デフォルトの名無しさん:2008/12/08(月) 12:38:09
何でも人のせいにしてると誰も雇ってくれないよ(w
534 :デフォルトの名無しさん:2008/12/08(月) 14:55:40
>>531
"実験バージョン"はないのではないかな
535 :デフォルトの名無しさん:2008/12/08(月) 16:37:07
開拓バージョンくらいで
0964デフォルトの名無しさん
2009/01/13(火) 04:13:502月になると、大学は春休みだし、次々スレが立つまでに簡単な案内テンプレをつくっていいかもね
0965デフォルトの名無しさん
2009/01/13(火) 05:02:34Python の Home Page
http://www.python.org/
日本Pythonユーザ会
http://www.python.jp/
Python 日本語ドキュメント - Pythonistaのお友達
http://www.python.jp/doc/release/
Pythonのバイブル的書籍 (日本語の取り扱いについての情報はイマイチかも)
http://www.oreilly.co.jp/books/4873112109/
0966デフォルトの名無しさん
2009/01/13(火) 05:07:350967デフォルトの名無しさん
2009/01/13(火) 05:08:070968デフォルトの名無しさん
2009/01/13(火) 06:38:52をテキストに
012
345
678
って書き込んで
それをまた読み込んで、それをまた
line=[[0,1,2],[3,4,5],[,6,7,8]]
って読み込みたいんですけど何かいい方法はないでしょうか?
0969デフォルトの名無しさん
2009/01/13(火) 06:42:47pickle ってモジュールがあるから調べれ
0970デフォルトの名無しさん
2009/01/13(火) 06:43:140971デフォルトの名無しさん
2009/01/13(火) 11:21:15json
0972デフォルトの名無しさん
2009/01/13(火) 12:40:290973デフォルトの名無しさん
2009/01/15(木) 12:04:41ありますか??
0974デフォルトの名無しさん
2009/01/15(木) 12:07:22print chr(88)
0975デフォルトの名無しさん
2009/01/15(木) 15:07:56エンコードについて知りたかったんです。
皆さん教えてください。
0976デフォルトの名無しさん
2009/01/15(木) 17:57:27マイクロ秒が必ず1000単位=0.1秒きざみで、ちょっと大きすぎます
せめて0.01秒単位にしたいのですが、どうしたらいいですか?
0977デフォルトの名無しさん
2009/01/15(木) 17:59:42すみません
0978デフォルトの名無しさん
2009/01/15(木) 18:01:530979デフォルトの名無しさん
2009/01/15(木) 18:12:320980デフォルトの名無しさん
2009/01/15(木) 18:57:110が1個足りん
0981デフォルトの名無しさん
2009/01/15(木) 19:07:240982デフォルトの名無しさん
2009/01/15(木) 20:06:010983デフォルトの名無しさん
2009/01/15(木) 20:17:57ないね
0984デフォルトの名無しさん
2009/01/15(木) 22:04:17import hoge.*
と書いてみたらエラーでした
0985デフォルトの名無しさん
2009/01/15(木) 23:00:27hogeディテクトリの中に__init__.pyってファイルを作ってあげる。
中身は空でいい。
で、hogeまでパスが通ってること前提で
from hoge import *
とする。
パッケージについてphpやらなんやらのrequireのような
ファイルをインクルードして‥という考えはPythonではない。
ファイルごとにスコープ切ってるようにしてるために
そんな感じでモジュールを使う様にしてる
0986デフォルトの名無しさん
2009/01/15(木) 23:01:05検証して書き込むべきじゃないかも。
0987デフォルトの名無しさん
2009/01/15(木) 23:03:020988デフォルトの名無しさん
2009/01/15(木) 23:05:44だれか答えお願いしますm(_ _)m
0989デフォルトの名無しさん
2009/01/15(木) 23:07:58__init__.pyにimport なにがし
とかくようにして、
from フォルダ import なにがし
とすればいいんですね?
ありがとうございました。m(_ _)m
0990デフォルトの名無しさん
2009/01/16(金) 03:36:11ありがとうございました
>>987-989
何故人のふりするんですか?目的が分かりません
0991デフォルトの名無しさん
2009/01/16(金) 05:56:09どう使えばいいのですか?
staticメソッドとの違いがいまいちわかりません
0992デフォルトの名無しさん
2009/01/16(金) 06:35:40http://pc11.2ch.net/test/read.cgi/tech/1232055225/
0993デフォルトの名無しさん
2009/01/16(金) 07:03:07class A:
@classmethod
def f(cls):
print cls.fruit
class B(A): fruit = "apple"
class C(A): fruit = "banana"
B.f() # prints "apple"
C.f() # prints "banana"
0994デフォルトの名無しさん
2009/01/16(金) 07:19:02"""
Initialize the installed plugins
"""
plugins_root = os.path.join(os.path.dirname(__file__), 'plugins')
if os.path.exists(plugins_root):
plugins = os.listdir(plugins_root)
for plugin in plugins:
if not re.match('^__|^\.', plugin):
try:
exec('from plugins import %s' % plugin)
except ImportError:
logging.error('Unable to import %s' % (plugin))
except SyntaxError:
logging.error('Unable to import name %s' % (plugin))
0995デフォルトの名無しさん
2009/01/16(金) 12:23:550996デフォルトの名無しさん
2009/01/16(金) 12:24:180997デフォルトの名無しさん
2009/01/16(金) 12:24:470998デフォルトの名無しさん
2009/01/16(金) 12:25:110999デフォルトの名無しさん
2009/01/16(金) 13:38:331000デフォルトの名無しさん
2009/01/16(金) 13:39:0610011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。