RubyだかPerlだと文が値を持つので def max(a,b) if a>b then a else b end end と書けるとか誇られちゃったりしてる記述がありますが、 def max(a,b): if a > b: return a else: return b で何か不都合とかあるのでしょうか? Pythonだけしか知らないと「式」も「文」も区別が付かないので 余計謎が深まります(「式」=「戻り値のある文」って説明になってないよぉ)。
式だけでは論理的には部品に過ぎない。 文となって初めてプログラムと呼べる。
>>952 言いたいこととはズレるけど
def MAX(a, b):
return (a>b and a) or b
で出来たよ
式だと a = if n > 0 then "big" else "little" end とか a = case n when 0 "zero" when 1, 3 "odd" when 2, 4 "even" end と書けるのが少し嬉しい
>>954 その使いかたは危険。
(0 > -1) and 0 or -1 => -1
そろそろ演算子の優劣とかがワケワカになってきた 従来の内包表記ですでに結構微妙 自分で書く分にはカッコを補ったりしてるけど…
and と or の短絡をそのままCの三項演算子みたいに使うと危ないんだよな if cond then expr1 else expr2 みたいのは (cond and (expr1, ) or (expr2, ))[0] だっけ?
これ以上短くしようとすると構文が歪むだけだから無理しなくていいよ
lightson.dip.jp/zope/ZWiki/006_e3_82_b3_e3_83_a1_e3_83_b3_e3_83_88 にあるコメントなんですけど, """と"""で囲まれた部分って複数行にわたるストリングスではないのですか? 関数部分にあるのは関数のdocstringですよね
学級新聞の内容に突っ込んでも仕方ないだろ。
ML で御大二人が熱くなってるけど… ym さんの言っていることを否定してまで 反論する理由は何もないと思うんだけどな。
どこのMLかもわからん
Python-ml-jp 3491 以降くらい
M L で や れ こ の ヘ タ レ が
! // | !/ / / /\ ', ヽ V │ // | / //| / _ヽ l | j| │ /.| |l ア メ / / /´ `、| ∨ ', //| |! / ‐ 、 ´ ! ´__ l| | ヽ/ | |,、‐'' "丶´ '´ ̄`ヾ| | / /| | | | { |/| | i │ ハ ∧ !l | | _ / | ヽ あらあら、うふふ♪ / : :V│ |  ̄‐´ /| l \ 〉 /::: : /´ | |> 、 ,.ィl: : l ,' ヽ /'"´ _\ | | : : : |` - 、 _,. ´ |l: / /\ / レ '´ ヽ! |ヽ: : :| V / \>
>>963 ちゃんと読んでないけど、
ymたんは「LANGの設定=OS全体のグローバルな設定」と短絡してる希ガス。
ムネオたんの解説は(問題の解としての好き嫌いは別にして)正しい。
,..-一-、 . |o |_ || || r――― .| ヽ r,===、. ll ll ==== ll''~~ヾ ,,.===.、 r,==.、 ( r―-一' ) .ll. ll || || || ll || || || ll || ヽ_| ____.ノ .ll、___,ll || || ||. ll ll ヾ_ , リ ll ll | o| ll`~~~ ``==ll ``= ~ ~ ~~~ ヽ__ノ ll =''~ iilll|||||||llllii
>>968 >ちゃんと読んでないけど、
>ymたんは「LANGの設定=OS全体のグローバルな設定」と短絡してる希ガス。
>ムネオたんの解説は(問題の解としての好き嫌いは別にして)正しい。
LANG=en_US.UTF-8 python だけでいいのなら、environment.plistで端末デフォルトを変更させようとする方がアレだと思うけどなぁ。
質問者が一番大人という滑稽さ
"この場合の" 解決策 "一番タイプ数の少ない" 解決策 "応用範囲の広い" 解決策 "今後の未来世界においてあるべき" 解決策 いろいろあるし弊害とかも理解しようよってのが本筋だと思う "xxが正しい" って言っちゃうのはちょっとイタイ... (投稿すると詳しく丁寧に教えてくださるので感謝・尊敬はしています。 あくまで今回の件に関しての感想ね)
ソースコード(test.py)を実行するときにはPythonシェル上では >>> import test 以外に何がありますか?
execfileとか、os.systemとか
名前空間汚れるような気がするからexecfileのが好きだが、ゴミ.pywできるんで20点減点
てめー!!インデントむちゃくちゃなもん貼るなっつーのつーの!!
皆最初は失敗するものさ
>>> import test >>> del test
print strhoge.encode('xxx-xx') するのは旧式なやり方、 というのがようワカランかった。 なんでこの書き方は古いって言われるの? OSや環境に左右されない確実な方法だと思って漏れは愛用していたんだが。
ムネオタン、永田議員みたいにはりきってたのに、あっさり足元すくわれてカワイソス (´・ω・)
>>969 皆ほめてくれないけど、頑張ったんだよね。よしよし…。
少なくともMac OS Xでは鈴木さんのやり方が一番まとも
OSXでLANG設定したらTeXの出力がみんな化けるようになった。
いやどっちが正しいとかいう話じゃなくて目的によって 分かれる話なんですよ。 ただ、"こうあるべき"っていう話は度がすぎると 押し付けがましくなっちゃうっていうわけで、 エロい方には珍しいパターンの展開だったなぁっていうだけだと思う。 そろそろ次スレかな
LANG=ja_JP.eucJP pythonで、、、 >>> print u'あいう' あいう >>> import sys >>> sys.stdout.write(u'あいう') Traceback (most recent call last): File "<stdin>", line 1, in ? UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128) 糞だなこの仕様。
perlのunicode対応よりまし
>>982 えー? [Python-ml-jp 3502]によれば標準出力をファイルにリダイレクトしたら
エラーになっちゃうんでしょ?それがまとも?
>>> import codecs, sys >>> Writer = codecs.getwriter("euc-jp") >>> sys.stdout = Writer(sys.__stdout__) >>> sys.stdout.write(u'あいう\n') あいう >>> print u'あいう' あいう >>>
ローマ字表記最強
早く寝なさい
だから全部現代英語にしちまえばいいんだよbyアイザック=アシモフ
他のMLの話、超うざい。読んでない奴だって居るんだ。そっちでやれ。
日本語じゃなくても Unicodeではまったことがあった。 データベースにSQL渡す時に「SQLは string type にしろ!」ってエラーが出た。 どう見ても文字列なのにどういうこっちゃって調べたら スクリプト内に書いたSQL文が Unicode Typeになってるのが原因だった。 それで結局 str関数で変換したら通るようになった。
>>> u'じゃあ次スレは0からを使いきりでよろしく' u'¥u3058¥u3083¥u3042¥u6b21¥u30b9¥u30ec¥u306f¥uff10¥u304b¥u3089¥u4f7f¥u3044¥u304d¥u308a¥u3067¥u3088¥u308d¥u3057¥u304f'
print "44Ki44OD44OB44On44Oz44OW44Oq44Kx".decode("base64").decode("utf-8")
>>> print "44Ki44OD44OB44On44Oz44OW44Oq44Kx".decode("base64").decode("utf-8") Traceback (most recent call last): File "<stdin>", line 1, in ? UnicodeError: ASCII encoding error: ordinal not in range(128)
u'\uff9c\uff9b\uff80'
999 :
☆次スレ☆ :2006/03/10(金) 13:20:01
たぷるタソ (;´Д`) ハァハァ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。