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


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

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



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

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

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

   ┌─┐
   │●│
   └─┤
   _   ∩
  ( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘

51 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 07:06:00.64 ]
>>46
マルチスレッドの話をしていると考えて、こんなかんじ。
1時間ごとじゃテストが動作チェックが面倒なので10秒ごとにしてある。

import threading, time, datetime

def disptime():
    while True:
        t = datetime.datetime.now()
        if t.second % 10 == 0:
            print t.strftime('%H:%M:%S')
        time.sleep(1);

t1 = threading.Thread(target=disptime)
t1.daemon = True
t1.start()
while True:
    x = raw_input()
    if x == '1':
        print"0ne"


52 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 07:59:15.55 ]
>>50
Makoっていうのがよく使われてるみたいだけどどう?たぶんPythonで実装されてる

% cat hello.html
<html>
    <head><title>mako test</title></head>
    <body><p>Hello, ${name}!</p></body>
</html>

% cat hello.py
from mako.template import Template
mytemplate = Template(filename='hello.html')
print mytemplate.render(name='mako')

% python2 hello.py
<html>
    <head><title>mako test</title></head>
    <body><p>Hello, mako!</p></body>
</html>

53 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 08:11:33.78 ]
痛々しい

54 名前:デフォルトの名無しさん [2012/03/24(土) 08:51:46.05 ]
>>51
ご丁寧にありがとうございます。

55 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 18:00:18.23 ]
unittestの書き方についてなんだけど、
例えば
hoge/main.py
hoge/module/__init__.py
hoge/test/testmain.py
みたいなディレクトリ構造で、
main.pyにimport moduleが記述されてるとして、
python main.pyで実行したときはうまくいくけど
python test/testmain.pyのときはmoduleが見つからない
これってどうやって解消するの?

56 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 21:01:25.72 ]
sys.path.append(os.path.realpath(".."))
import module

57 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 23:35:39.70 BE:1199519036-2BP(0)]
>>56
質問者55ではありませんが,同じ疑問を持っていたいので
助かりました。
関連質問ですが,自作のモジュールを
/Volumes/vol_1/WebServer/CGI-Executables/01pythonMod01/
の下においている場合には,どのようにパスを指定すれば
よろしいのでしょうか?

58 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 00:10:00.29 ]
.bashrcなどに
export PYTHONPATH=/Volumes/vol_1/WebServer/CGI-Executables/01pythonMod01:$PYTHONPATH
を書き加える

www.python.jp/doc/2.7/tutorial/modules.html#tut-searchpath
docs.python.org/release/3.2/tutorial/modules.html#the-module-search-path
を読んだほうが早いよ

59 名前:デフォルトの名無しさん [2012/03/26(月) 12:03:18.88 ]
if文でよく%が使われたコードを見るのですがどういう意味なのでしょうか?
下のコードにおいて説明していただきたいです。変換指示子かなと思ったりしたのですが...
for num in range(100):
if num % 10:
continue
print num




60 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 12:11:00.73 ]
剰余

61 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 12:58:16.54 ]
どの言語でも基本的な演算子

62 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 12:59:03.21 ]
いくら「超初心者用」でもこれはありなのか

63 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 13:57:29.32 ]
>>59
Pythonにおいて
・数値に対する % は左辺の数値を右辺の数値で割り算したときの「余り」を返す
・ゼロ以外の数値は真(条件式としては成り立っているとみなす)であり、ゼロは偽(条件式としては成り立たないとみなす)である

よって、if の条件式として数値 % 数値という式を書いた場合
「左辺を右辺で割ったときの余りがゼロ以外」=「左辺を右辺で割ったら余りが出る(割り切れない)」
という意味になる

64 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 14:38:32.52 ]
共通一次の数IIBの問題に毎年必ず出てくるパターン

65 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 18:54:08.58 ]
そんなんで人のコード見てなんか役に立つのかな
ああ、コピペできるコード探してるだけだからそんな事はどうでもいいのか

66 名前:3 mailto:sage [2012/03/27(火) 19:35:10.13 ]
例えば、Command 
という関数があるとき
文字列str = "Command"
を上手く変換して、strを使ってCommandを実行する方法はありますか?
同様にLIST = [1, a, x]
があるとき、
文字列str = "LIST"
を上手く変換してstrを使ってこのリストオブジェクトそのものを指定する
ことは出来ますか?つまり、
str[2] = aみたいなことがしたいのですが・・・

67 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 19:43:50.54 ]
>>> a = "['a', 1, 2]"
>>> a
"['a', 1, 2]"
>>> b = eval(a)
>>> print b
['a', 1, 2]
>>> print b[1]
1

68 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 19:47:17.37 ]
あんま馬鹿なことはしねえほうがいいよ

69 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 20:47:20.36 BE:4798073298-2BP(0)]
>>58
>bashrcなどに
非常に分かりやすい解説をありがとうございます。
(bashrcの設定はMac上で何度もやってきたので
よく理解できました。)

>www.python.jp/doc/2.7/tutorial/modules.html#tut-searchpath
>docs.python.org/release/3.2/tutorial/modules.html#the-module-search-path
>を読んだほうが早いよ
読みましたが,貴殿の解説の方が遥かに分かりやすいです。
本当に感謝します。



70 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 00:44:59.07 ]
pythonmagickで(Imagemagickがつかえれば何でもいいだけど)
台形変形させるにはどうしたらいいですか?
C:\Progra~1\ImageMagick-6.7.6-Q16
%im%\convert.exe tt.jpg -matte -virtual-pixel transparent -distort Perspective "38,11 0,0 475,46 500,0 475,282 500,333 38,314 0,333" ttyy.jpg
てな感じで画像の四隅を指定して変形させたいんだけど
コマンドの描き方が分からない・・・。

71 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 02:53:24.60 ]
>>70
PythonMagick-0.9.7のソースをGrepしてみたけど
バインディングされてないみたいよ

72 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 08:53:59.62 ]
馬鹿には無理

73 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 10:25:56.87 ]
>>70
コマンドでやれ。パイプを使えばファイルを作らなくてもいい

74 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 11:31:24.63 ]
メトロってこの延長線上な気がする

ttp://2ch.at/s/20mai00527004.jpg
ttp://2ch.at/s/20mai00527005.jpg
ttp://2ch.at/s/20mai00527006.jpg
ttp://2ch.at/s/20mai00527007.jpg
ttp://2ch.at/s/20mai00527008.jpg
ttp://2ch.at/s/20mai00527009.jpg

75 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 12:02:39.06 ]
__init__.pyは空にしておくのが一般的?

76 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 12:23:19.80 ]
パッケージの初期化はそこに書くんだからそんな事ないよ

77 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 13:22:22.08 ]
import threading

def fnc()
print "Hello"
timer = threading.Timer(3, fnc)
timer.start()

のように、書くとキチンと3秒後にHelloと表示されるのですが、
fncが引数を持つとき、fnc(5)などと指定して、
timer = threading.Timer(3, fnc(5))
などとすると、暴走してしまいます。どうしたら引数を持つ場合に
3秒後に動作させられますか?

78 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 13:23:22.12 ]
あ、上のコードにミスがありました。

×def fnc()
○def fnc():

79 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 13:36:06.58 ]
Timer(3, lambda: fnc(5))



80 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 14:11:05.61 ]
>>79
そのやり方で上手くいきました!!
ありがとうございます!!

…それにしても、このスレマジで使えるな。
分からないことはたいがい教えてもらえる。
逆に言えばそれだけ、俺の能力が低いってことだがorz...

81 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 14:59:38.21 ]
馬鹿には無理

82 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 20:13:16.52 ]
なんでfncで良くてfnc(5)が駄目なのか、理由を理解しないと根本的な解決になってないよ。

83 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 20:31:13.61 ]
コピペしかできないならVBでもやってろ

84 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 20:38:34.70 ]
コードと文字列の区別が付いていないから

85 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 20:44:59.90 ]
www.python.jp/doc/release/library/threading.html#timer
class threading.Timer(interval, function, args=[], kwargs={})(原文)
interval 秒後に function を引数 args 、キーワード引数 kwargs つきで実行するようなタイマを生成します。

functionは実行できなければいけない
典型的にはtypes.FunctionType

んで、fnc(5)はどうなってるか
という話

86 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 20:45:24.73 ]
釣れますか?

87 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 20:53:31.07 ]
爆釣です

88 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 03:03:32.82 ]
s=abc s="cd ef"
という一行から、
abc "cd ef"
の二つを抜き出すにはどうしたら良いでしょうか?

89 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 03:11:52.92 ]
>>77
import threading

def fnc(args)
print("Hello")
print("args =", args)

timer = threading.Timer(3, fnc, args=5)
timer.start()



90 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 03:16:53.16 ]
args=5じゃ動かないよ

91 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 03:29:51.01 ]
○ timer = threading.Timer(3, fnc, args=[5])

92 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 05:26:59.51 ]
馬鹿には無理

93 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 13:34:51.45 ]
有難うございます

>>71
なんという・・・orz

>>73
その手があったか・・・

94 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 15:24:47.27 ]
>>88
>>> re.findall(r's=([a-z]+|"[a-z ]+")', 's=abc s="cd ef"')
['abc', '"cd ef"']

>>> 's=abc s="cd ef"'.split("s=")
['', 'abc ', '"cd ef"']

95 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 16:22:19.24 ]
こんにちは、初めてここに質問させていただきます。

d.hatena.ne.jp/dix3/20100513/1273760327
↑youtube-dllというpythonのスクリプトを使ってようつべをDLするスクリプトが
あるのですが、上のURLを参考に試してもFile "<stdin>", line 1と表示された後
エラーでSyntaxError: invalid syntaxと返ってきます。
pythonは2.7.2、実行はPython (command line)というexeから実行しています。
なお、OSはwin7で64bitです。
もしご存じの方がいらっしゃいましたら宜しくお願いします。

96 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 16:51:57.82 ]
都合の悪い箇所があれば伏せたうえでコマンドラインとエラー表示をそのまま貼ってみて
SyntaxError: invalid syntax 以外にも表示されてるだろうから

97 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 17:16:42.26 ]
>>95はマルチポスト

98 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 17:34:16.22 ]
>>96
返信ありがとうございます。以下エラー表示です。

>>> python youtube-dl.py www.youtube.com/watch?v=○○
File "<stdin>", line 1
python youtube-dl.py www.youtube.com/watch?v=○○
^
SyntaxError: invalid syntax

99 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 17:42:57.11 ]
Pythonの対話モードじゃなくてWin7のコマンドプロンプトから実行しないと



100 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 17:46:57.56 ]
>>99
ありがとうございます。
ググってもう少し調べてみます。

101 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 18:24:53.64 ]
python 2.6.2で一生懸命勉強したりして何とかプログラム組んだ事あるけど
今は3が主流なの?
どうなんだろ…。もうpython 3をこれからは勉強した方がいいのかな…

102 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 18:27:12.77 ]
Python 2.7.1ですが、正規表現で鬼車やPCREのような再帰のパターン検索をしたいと思うのですが
ライブラリ等で対応は出来ているものはあるでしょうか?。
((ab)(cd)ef(gh(ij)))
のようなもので()内を取り出したいんです。

103 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 18:34:12.79 ]
ドキュメント読んだか?
www.python.jp/doc/release/library/re.html

104 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 18:46:46.12 ]
読みましたけど、そのことを実現してくれる記述はどこにありますか?
わたしにはわかりませんでした。ご存知なら教えて下さい。>>103さんへ。

105 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 19:19:00.36 ]
不愉快だから教えない

106 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 19:24:07.52 ]
読んでる暇があったら実行してみた方が早いんじゃないかと思うよな
わざとドキュメント読んだか?って言ったんだろうけど

107 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 19:26:42.22 ]
そりゃ幾らなんでも穿った見方過ぎだろw

108 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 19:47:30.95 ]
>>> import re
>>> re.match(r'((ab)(cd)ef(gh(ij)))', 'abcdefghij').groups()

どこのスレも春爛漫って感じ
ついでに名前欄も

109 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 19:58:17.91 ]
馬鹿には無理



110 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 20:10:53.33 ]
無理って言う奴が馬鹿

111 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 20:15:22.54 ]
馬鹿は死ね

112 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 20:30:07.51 ]
>>102
どこに再帰があるんだ?
オレオレ用語はやめろ

113 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 20:49:31.00 ]
再帰した正規表現を使いたいのかも

Ruby 1.9(鬼車)の\g とかPerlの(?PARNO)や(?R)が使えるのか
って話なのでは?


114 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 20:52:06.21 ]
一般的にはグループ化のネストとか入れ子とか言いますね

115 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 21:13:02.23 ]
上手くいかないんだけど。
$ bison youtube-dl www.youtube.com/watch?v=○○
youtube-dl:1.1: invalid character: `#'
youtube-dl:1.2: invalid character: `!'
youtube-dl:1.3: invalid character: `/'
youtube-dl:1.4-6: syntax error, unexpected identifier

116 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 21:16:58.89 ]
>>115
また斜め上に行ったな
というかbisonインスコされているのか…

117 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 21:59:50.50 ]
>>113
そいうことですが、なぜ、こんなにたたかれるか不明です。
recursiveな正規表現パターンという言葉がオレオレだとは思わなかったです。まあわたしが悪いんでしょう。
でも、>>108の脳みそはどうなってるんですかね。信じられませんw

118 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 23:04:36.01 ]
馬鹿には無理

119 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/30(金) 00:00:20.72 ]
pythonのおまんこ要員とは何ですか?



120 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/30(金) 15:44:33.23 ]
pass

121 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 02:18:17.88 ]
bytesの値をそのまま出力するにはどうしたらいいのでしょうか?

print('{:s}'.format(data))

として、出力をbytesの生のままで出したいのですが、
print(data)
とした時の値がaaa.dataに出力されてしまいます。

python3 test.py > aaa.data

122 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 02:33:43.75 ]
sys.stdout.write(data)
では駄目ですが、

with open('a.data', 'wb') as f:
f.write(data)

とすれば書込み自体はできると分かっていますが、
後々、|で連結して色々変態的なことをしたいのです。

123 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 02:37:24.23 ]
python docを読んでいたら、

sys.stdout.buffer.write(b'abc')

と思いっきり書いてありました。
スレ汚し失礼しました。

124 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 11:14:15.24 ]
googleのDeveloper's guide(https://developers.google.com/youtube/1.0/developers_guide_python?hl=ja#Playlists)に、

playlist_entry_id = playlist_to_be_updated.id.text.split('/')[[]-1]

という記述があるのですが、最後の[[]-1]というのはどういう挙動を意図したものでしょうか
" unsupported operand type(s) for - " エラーが発生します

125 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 11:36:41.25 ]
窓口に問い合わせるが吉

126 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 11:54:07.57 ]
.split('/')[-1]の間違いじゃないかなあ
他にもauthsub_token = parameters[[]'token' ] とかあるので
どこかでゴミが入っちゃったんだと思う

127 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 20:10:17.01 ]
print u"あいうえお".find(u"う")
で0が帰ってくるんですが、何がいけないんですか?

128 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 20:13:02.45 ]
と思ったらPyScripterで保存すると日本語化けちゃうのか・・・
どうしたら日本語の文字コード保持したまま実行できるんでしょうか

129 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/31(土) 20:17:54.90 ]
自己解決しました
ファイルの頭に# -*- coding: utf-8 -*-つけたらできました



130 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 14:05:20.77 ]
C:\youtube-dl>youtube-dl.py www.youtube.com/watch?v=uEQkVJtyVTc
[youtube] Setting language
[youtube] uEQkVJtyVTc: Downloading video webpage
[youtube] uEQkVJtyVTc: Downloading video info webpage
[youtube] uEQkVJtyVTc: Extracting video information
[youtube] RTMP download detected
[download] Destination: uEQkVJtyVTc.flv

ERROR: unable to download video


エラーになります><

131 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 14:39:49.74 ]
プログラミングではなく単なるツールの使いかたの質問ならDL板のほうがいいんじゃないか
もしあっちで相談するなら youtube-dl -v <URL> のほうが話が早いかも

132 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 15:38:49.51 ]
rtmpdump のスレ行った方が医院で内科医

133 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 16:45:28.92 ]
py2exeでスタンドアローンのウィンドウズアプリもどきが作れたのですが、
バックのコマンドライン用のDOS窓が立ち上がってしまいます。
せっかく拡張子をpywとしているのですが、exeの方はそうなってしまいます。
どうしたらpy2exeで作ったウィンドウズプログラムでDOS窓が立ち上がらない
ように出来ますか?宜しくお願いします。

134 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 16:48:32.19 ]
stackoverflow.com/questions/6480595/make-a-py2exe-exe-run-without-a-console

135 名前:133 mailto:sage [2012/04/03(火) 17:26:51.26 ]
>>134
ありがとうございました。そのやり方で解決しましたm(_ _)m

136 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 01:43:00.81 ]
open関数でファイルを開いて、writeメソッドでファイルに日本語混じり文字列を書きこみたいのですが、
そのままやると文字コードがShift-JISになります
UTF-8にしたいのですがどうすればよいでしょうか?
Python 3でOSはWindows 7(日本語版)です

137 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 01:54:02.78 ]
fout = open('foo.txt', 'w', encoding='utf-8')

138 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 01:56:37.24 ]
>>136
Dive Into Python 3 くらい読めば?

139 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/06(金) 23:54:01.57 ]
# -*- coding: utf-8 -*-
x = raw_input()
if x == u"こんにちは":
print u"こんにちは"
これを実行しこんにちはって打ち込むとUnicodeWarningと出るのですが、どうすればこんにちはと出るでしょうか。



140 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 01:23:54.10 ]
>>139
print type(x), type(u"こんにちは"), type("こんにちは")
したらわかるけど、
if x.decode("utf-8") == u"こんにちは": #端末がUTF-8な前提

if x == "こんにちは":
にしないと比較できない。

141 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/07(土) 02:39:29.61 ]
>>140
if x.decode("utf-8") == u"こんにちは":

if x == "こんにちは":
の両方で試してみましたが、UnicodeDecodeError、UnicodeWarningがそれぞれ出ますorz

142 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 03:08:38.91 ]
PythonのバージョンとOSも書かずに、文字コード周りの質問するなんていい度胸してんね

143 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/07(土) 03:43:05.13 ]
>>142
すいません。
windows vista 32bitでpython2.7です。

144 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 05:30:23.27 ]
Windows使ってないからわからないけど、raw_inputで受け取るときの文字コードって使ってるシェル(コマンドプロンプト等)の文字コード依存するんじゃないか?
シェルの文字コードがshift_jisだとすると、utf8じゃunicodeにデコードできないし、coding: utf8を宣言してるからstrとの比較でも警告がでる、とか。

145 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 07:33:02.87 ]
>シェルの文字コードがshift_jisだとすると、utf8じゃunicodeにデコードできないし、

↑これが正解
if x.decode("utf-8") == u"こんにちは":
じゃなくて
if x.decode("cp932") == u"こんにちは":
だろう


>coding: utf8を宣言してるからstrとの比較でも警告がでる、とか。

少なくともこの↓元のコードに対するコメントとしては全く的外れ
if x == u"こんにちは":

↓のことを言ってるなら「strとの比較」と言えるが
if x == "こんにちは":
質問者は何をやってるのか自分で判ってるのかな


そもそも
if x.decode(sys.getdefaultencoding()) == u"こんにちは":
でも動きません(キリッ)とか
さらなる突っ込みに発展する話題

146 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 08:11:37.06 ]
Pythonスレでは煽りを入れることなく簡潔に淡々とお願いしますね

147 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 08:13:43.57 ]
setdefaultencodingの話題はタブー

148 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 08:17:03.91 ]
>>140
if x.decode("utf-8") == u"こんにちは": #端末がUTF-8な前提

#端末がUTF-8な前提
ってちゃんと書いてあるのに
無視した >>141 が悪い
コメントを読んでないか
知識がなくて意味が判ってない
と判断されても仕方ない

149 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 08:52:27.08 ]
python インストールした後に sitecustomize.py とか自分でまじめに編集してるひといるの?

●UnicodeEncodeErrorが発生した場合は、sitecustomize.pyでデフォルトのエンコーディングを指定する。
ttp://d.hatena.ne.jp/SumiTomohiko/20070120/1169300624

●Pythonの文字化け対策:sys.setdefaultencodingの謎
ttp://hain.jp/index.php/tech-j/2008/01/07/Python%E3%81%AE%E6%96%87%E5%AD%97%E5%8C%96%E3%81%91

>>> import sys
>>> hasattr( sys, 'setdefaultencoding' )
False
>>> reload( sys )
<module 'sys' (built-in)>
>>> hasattr( sys, 'setdefaultencoding' )
True

(以下引用)
文字コードを変更するのはそんな根幹を揺るがすものなのか?
ソースコードの先頭付近に# coding: UTF-8とか打たなきゃならないのに、
エンコーディングの変更をやってはいけないというのはイマイチしっくりこない。
デフォルトエンコーディングがUTF-8と確定している場合ならまだしも、
asciiがデフォルトであることがほとんどだとすると変えざるを得ないのでは?
例えば配布用アプリケーションを作ったとして、利用者にsitecutomize.pyを追加してくださいと
案内をしなきゃならないってのはちょっと難しい。それに内部にある設定ファイルで文字コード設定するのは
ハマリの元だというのは前述の通り。言語が変わったからといってそこが変わることはない。
しかも、sitecutomize.pyはPythonが起動してから”自動で”読み込まれるだけで、スクリプト上にあることに代わりはない。
[禁じ手中の禁じ手]という彼の意見は的はずれだ。

●Python でのエンコード指定
ttp://d.hatena.ne.jp/benikujyaku/20120121/1327142286

なんか bad know how が定着していく悪寒



150 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 08:56:40.91 ]
>>2

151 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 09:08:58.67 ]
馬鹿には無理






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

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

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