1 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 16:36:03.35 ] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。 騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。 次スレは >>985 辺りで 前スレ くだすれPython(超初心者用) その15 toro.2ch.net/test/read.cgi/tech/1350718465/ 関連スレ Pythonのお勉強 Part48 toro.2ch.net/test/read.cgi/tech/1358750040/ 【実験台】 Python 3.0 のお勉強 Part 1 【非互換】 toro.2ch.net/test/read.cgi/tech/1235050215/ ◆関連リンク Python の Home Page ttp://www.python.org/
862 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 20:01:31.30 ] >>859 ここは「くだすれPython(超初心者用)その16」というスレ 超初心者には馬鹿に見える秀才君がたくさんいます 超初心者には「そんなことするな」という回答が理解できません >>859 はスレチ
863 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 20:03:32.87 ] 無視すんのが正解つったろーがタコ。
864 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 20:46:51.71 ] >>862 なんだ荒らしたいのか?変な人に絡んでしまった。
865 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 20:48:55.27 ] 待ってましたとばかりにアンカー付けちゃってンモーww
866 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 21:29:28.26 ] わからなかったら入力データと出力形式だけ書けばいいんだよ そうしたら最適なコードを書きたい人が書いてくれるから
867 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 21:46:21.06 ] Windows用のPythonってインストーラー形式しかないんですか? zip形式のってないんですか?
868 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 21:48:19.23 ] portable python
869 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 21:52:00.99 ] 普通になかったか
870 名前:デフォルトの名無しさん mailto:sage [2013/03/24(日) 21:55:02.19 ] 2.7.4 RC1来てるやん
871 名前:デフォルトの名無しさん [2013/03/25(月) 14:48:14.02 ] 質問です。宜しくおねがいします。 オブジェクトをメンバーに持つオブジェクトがあったとします。メンバー側のオブジェクトから親のオブジェクトを参照する 方法はありますか? 例えば import random class Ko(object): def __init__(self,a,b): self.a=a self.b=b class Oya(object): def __init__(self,x,y,z) self.kodomo=Ko(x,y) self.z=z kodomotachi=[] oya1=Oya(1,2,3) oya2=Oya(3,4,5) oya3=Oya(31,41,51) oya4=Oya(11,21,31) kodomotachi.append(oya1.kodomo) kodomotachi.append(oya2.kodomo) kodomotachi.append(oya3.kodomo) kodomotachi.append(oya4.kodomo) kodomotachi.remove(kodomotachi[random.randint(0,3)]) としたとき、kodomotachiリストはOyaオブジェクトのインスタンスのkodomoメンバで構成されてる 訳ですが、たとえば上記のようにkodomotachiリストの内容が不明な時に、 kodomotachi[2]などから親オブジェクトを参照する方法はありますか?
872 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 15:40:25.14 ] 混乱してきた・・・ parentとchildで書き直して
873 名前:デフォルトの名無しさん [2013/03/25(月) 15:44:09.12 ] >>871 KoクラスにOyaインスタンスへの参照を保持する変数を入れとけばいいんじゃないの
874 名前:デフォルトの名無しさん [2013/03/25(月) 15:58:31.87 ] hogoshakai = [] hogoshakai.append(oya1) hogoshakai.append(oya2) hogoshakai.append(oya3) hogoshakai.append(oya4) o = [oya for oya in hogoshakai if oya.kodomo == kodomotachi[2]]
875 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 16:21:40.01 ] はい、次
876 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 16:29:05.34 ] o = [oya for oya in locals() if isinstance(oya, Oya) and oya.kodomo == kodomotachi[2]]
877 名前:デフォルトの名無しさん mailto:sage [2013/03/25(月) 19:18:34.73 ] 何この拷問 import random class Ko(object): def __init__(self,a,b,c): self.a=a self.b=b self.c=c class Oya(object): def __init__(self,x,y,z) self.kodomo=Ko(x,y,self) self.z=z ... kodomotachi[2].c ハァハァ、、、ツカレタ、、、ハァハァ タメシテナイカラ、ダメダッタラゴメンネ
878 名前:871 [2013/03/26(火) 08:57:54.62 ] >>874 >>876 >>877 みなさん有り難うございました。実はpymunkという物理エンジンを簡単に使うために、○とか□とかの物体をpymunk純正のshapeとかbodyとかのオブジェクトと ともにpygameの描画メソッドつきのクラスにした自分用ラッパーライブラリを作っています。 pymunkの世界(space)にshapeとかbodyとかの物体情報をappendしてくんですが、衝突判定機能なんかで登録したbodyなどの純正オブジェクトは返り値として 得られるのですが、それらを内包する自作オブジェクトを得る方法はないかと悩んでました。 と言う訳で、メンバ側のオブジェクトは改造しづらい状況なので874さん、876さんの方法でいってみます。 でも877さんのメンバ側のオブジェクトに親オブジェクトの情報を持たせる方法も目から鱗でした。 みなさん、有り難うございました。
879 名前:質問(前編) mailto:sage [2013/03/26(火) 12:18:44.74 ] 1.Python覚えたいんですけど何で日本ではRubyが流行ってるんでしょうか? 2.RubyでいうRailsみたいなフレームワークはPythonではなんでしょうか? 3.PHPでいうPear、Rubyでいうgem、Pythonではなんでしょうか? 4.今からPython3.3で勉強しても問題ないでしょうか? 5.RubyでいうHerokuみたいな無料で使えるクラウドがありますがPython3.3が動くクラウドってありませんか?
880 名前:質問(後編) mailto:sage [2013/03/26(火) 12:21:04.50 ] 6.PythonはWindowsでコードを書いても問題ないでしょうか? 7.PythonではテキストエディタとIDEどっちを使うほうがいいでしょうか? 8.Pythonの定番のGUI作成ライブラリってありますか? 9.Pythonで構築されたサイトのまとめってありませんか?python.jpで公式に取り上げてませんか? 10.文字コードは基本utf8bomなしで改行コードはLFでコード書くものでしょうか?
881 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 12:26:45.26 ] 1. 日本人は英語出来ないから 2. django 3. pypi, easy_install 4. 大丈v 5. あります 6. 問題ない 7. 俺はvim 8. tkinter, qt 9. python.org 10. yes
882 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 12:29:02.06 ] テンプレに入れてください
883 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 12:36:39.66 ] 日本人の大半はマニュアル英語すら読めないから Djangoとか PyPi ほとんどローカルでしか使えないと思うけどそれでよければ ない いいよ 両方使ってみて自分に合う方 Python3希望しているなら今のところ諸手を挙げたお勧めはない 日本語の資料を希望しているならない そんな制限はない
884 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 13:35:44.30 ] あえてPythonを使う積極的な理由はありますか? どうせいやいや使ってるんでしょう?
885 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 14:12:26.12 ] このスレはこういう煽りに来たお客さんに真面目に答えてる馬鹿がいて偉いなあと思う
886 名前:デフォルトの名無しさん [2013/03/26(火) 14:13:34.27 ] >>884 楽しいから それだけ
887 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 14:14:03.29 ] >>884 俺はRuby/PHP/Perlがキモすぎて嫌だから。 適用分野はかぶっているので、Python嫌ならRuby/PHP/Perl使っとけばいいんじゃね?
888 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 14:14:58.05 ] >>885 それが「Pythonコミュニティー怖い」と言われる所以かもな。
889 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 14:52:09.74 ] コミュニティ障碍
890 名前:871 [2013/03/26(火) 16:38:40.97 ] >>886 同意。 キモいと言われるかもしれないが俺もPythonは楽しいです。 とっかかりは簡単でも奥が深い(俺が浅いのかも)言語だと信じてます。 objective-C、JAVA、JAVAscriptと挫折した俺だけど、Pythonではちょこちょこ作れてます。
891 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 22:38:10.15 ] Ubuntuに3系のPythonをインストールするともともと入っている2系とトラブルを起こすというレスを見たのですが、ソフトウェアセンターからのダウンロードでも状況は同じでしょうか?
892 名前:デフォルトの名無しさん mailto:sage [2013/03/26(火) 22:51:34.35 ] >>891 問題は起きない 「python3」の名前でpathが通る
893 名前:879 mailto:sage [2013/03/26(火) 23:02:26.32 ] ありがとうございます
894 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 05:35:20.83 ] >>892 ありがとうございます。 これで安心してインストール出来ます。
895 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 15:05:10.25 ] >>890 Pythonは書きやすいし読みやすいからストレスが貯まり辛いよね 多分Rubyでも同じような印象を受けると思う PythonとRubyはプログラミングの入り口に最適だと思う >>891 ちなみにUbuntu12.10だとデフォルトでpython3.2が入ってるので楽だよ 「python3」で3系 「python」で2系にpathが通ってる
896 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 15:56:55.95 ] やはりpythonの本流は2.Xだな
897 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 16:05:57.26 ] >>895 本当に入ってました! ありがとうございます。
898 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 18:40:07.30 ] 疑っとったんかい!
899 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 21:31:23.64 ] >>898 いえ、嬉しかっただけです。
900 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 21:36:05.19 ] 疑って掛かるのはいいことだぞ〜 ここをどこだと思ってる
901 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 22:21:01.30 ] 下のphpコードpythonでどう書くのか教えてください! class A { private $str; public function setStr($s){ $this->str = $s; } public function getStr(){ return $this->str; } protected test1($n) { return ($n + 10) * 2; } private test2($n) { return $n * 2; } }
902 名前:デフォルトの名無しさん mailto:sage [2013/03/27(水) 22:26:18.39 ] class A: def __init__(self): self.__str = None def setStr(self, s): self.__str = s def getStr(self, s): return self.__str def test1(self, n):#protectedは無い return (n + 10) * 2 def __test2(self, n): return n * 2
903 名前:デフォルトの名無しさん mailto:sage [2013/03/28(木) 00:07:14.85 ] メソッド名がアンダースコアから始まるものは外部に非公開とみなすコーディングスタイルがある(pep8)
904 名前:デフォルトの名無しさん mailto:sage [2013/03/28(木) 00:39:53.91 ] >>902-903 JavaとPHPからPythonくるとなんか違和感がありますがこういうものって覚えるしかなさそうですね どうもありがとうございます
905 名前:871 [2013/03/28(木) 13:02:51.85 ] >>904 CとPythonしか書いたことのないあっしですが、上の例を拝見するとPHPよりPythonの方がすっきりしてるように見えるなぁ....。 まぁ、慣れの問題なんでしょうけど....。 やたらとself連呼なのが嫌だってアンチの人は言うけど、どうなんでしょね? 少なくとも、あっしは気になりませんが。
906 名前:デフォルトの名無しさん mailto:sage [2013/03/28(木) 13:58:33.69 ] windows python3.3でpyyamlを使う場合はpyyaml.org/download/pyyaml/ の中でどれをダウンロードしたらいいですか?
907 名前:デフォルトの名無しさん mailto:sage [2013/03/28(木) 14:10:35.59 ] >>906 3.08以上のやつ
908 名前:デフォルトの名無しさん mailto:sage [2013/03/28(木) 14:27:24.20 ] pyyaml.org/wiki/PyYAML にセットアップ方法が書かれているのですが PyYAML-3.10.zipをダウンロードしました python setup.py install python setup.py --with-libyaml install ってやるとインストールようなんですが、たとえばPython3.3をアンインストールしたらpyyamlもアンインストールされるのですかね? Pythonを入れなおした場合、またpyyamlはインストールしなおさないといけないのでしょうか?
909 名前:デフォルトの名無しさん [2013/03/28(木) 14:34:54.21 ] >python setup.py --with-libyaml install >ってやるとインストールようなんですが、たとえばPython3.3をアンインストールしたらpyyamlもアンインストールされるのですかね? されない >Pythonを入れなおした場合、またpyyamlはインストールしなおさないといけないのでしょうか? しなおさないといけない
910 名前:デフォルトの名無しさん mailto:sage [2013/03/28(木) 16:11:05.20 ] ありがとうございます
911 名前:デフォルトの名無しさん mailto:sage [2013/03/29(金) 16:02:49.59 ] パーフェクトPythonを見ながらUbuntuにインストールしているのですが $ apt-cache show python3 | grep 'Version' $ sudo apt-get install python3.3 python3.3-dev $ mkdir projects $ cd projects ここから先ができません。 $ pyvenv default $ source default/bin/activate $ wget python-distribute.org/distribute_setup.py $ python distribute_setup.py $ easy_install pip
912 名前:デフォルトの名無しさん mailto:sage [2013/03/29(金) 20:54:27.59 ] >>911 書いてあるコマンドは実行できるよ どこが出来ないのかわからないから人に伝える時の方法を教えよう 「このコマンドを打ったら」「こんなエラーが出ました」 「エラー内容:表示された英語全部(長い時は最初と最後の100文字くらい)」
913 名前:デフォルトの名無しさん mailto:sage [2013/03/29(金) 22:17:09.44 ] CentOS6.4のpython2.6.6を使って、スクリプト内で__debug__の切り替えを行おうと思って、 #!/usr/bin/env PYTHONOPTIMIZE=1 python print __debug__ みたいなファイルを作って実行すると固まるし、 #!/usr/bin/env python -O print __debug__ みたいにすると「そのようなファイルやディレクトリはありません」と言われて動かない。 同じファイルを手元のMac(python2.7.3)で動かすと問題なく動くんだけど、なんででしょう?
914 名前:デフォルトの名無しさん mailto:sage [2013/03/29(金) 22:47:59.29 ] 自己レスです。 ググってたら、CentOSだと #! でのenvの引数は1つしか指定できないみたい。 原因は分かったけど、切り替えの解決法が分からない。 rubyだと #!/bin/sh exec ruby -x "$0" "$@" #!ruby puts 'Hello world!' みたいな記法があるみたいだけど・・・・
915 名前:デフォルトの名無しさん mailto:sage [2013/03/29(金) 23:52:24.99 ] 自己レスです #!/usr/bin/env bash ''''exec python -O -- "$0" ${1+"$@"} # ''' print __debug__ これで出来ました。
916 名前:デフォルトの名無しさん mailto:sage [2013/03/30(土) 04:15:51.59 ] Python関係ないね
917 名前:デフォルトの名無しさん mailto:sage [2013/03/30(土) 07:53:05.90 ] いや、シェルスクリプトとしてもPythonスクリプトとしても動くスクリプトになってる
918 名前:911 mailto:sage [2013/03/30(土) 11:03:45.47 ] >>912 説明不足ですみません pyvenv コマンドが見つかりませんとでました 調べたら pyvenv-3.3 default でできました。 python distribute_setup.py をすると /local/bin /local/libにインストールされるバグ? bugs.python.org/issue16480 easy_install pip パスがないためインストールできないようです。
919 名前:デフォルトの名無しさん mailto:sage [2013/03/30(土) 15:05:57.45 ] >>918 コマンド打ってエラー出たらそのエラー書かないと ubuntuならeasy_install使いたいなら $ sudo apt-get install python-setuptools
920 名前:918 mailto:sage [2013/04/02(火) 13:15:34.34 ] >>919 インストールしましたがpython3.3は未対応のようです。
921 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 20:17:54.74 ] ubuntuってpython3.2じゃない?3.3のパケジはPPAか何か?
922 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 20:30:48.26 ] 調べたよ PPA Py3.3 Default, Py3.2 Supported https://launchpad.net/~ubuntu-rebuilds/+archive/py3.3 $ sudo add-apt-repository ppa:ubuntu-rebuilds/py3.3 $ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install python-pip
923 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 21:32:13.10 ] Linuxはこの辺がやたらと面倒だねえ Windowsならインストーラ一個落として Wクリ一発で済むのに
924 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 21:33:39.37 ] linuxでもyumですぐじゃん
925 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 21:37:38.77 ] >>923 いやこの辺はWindowsのほうがよっぽど面倒。
926 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 21:49:16.43 ] >>925 インストーラWクリの どこがどう面倒なのか説得力ある説明よろしく
927 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 21:52:38.95 ] >>926 ボタンのある位置までマウスポインタを動かして、そこからずれない様に マウスを固定しつつ、すばやく二度もクリックしなければいけないのに どこがどう面倒じゃないのか説得力のある説明よろしく
928 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 21:55:48.52 ] そもそも「パーフェクトPython」を買ってLinux使っている人 の質問じゃないという ここが超初心者スレであっても
929 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:00:58.86 ] >>923 >>911 はWindowsだとWクリック一発で済むの?ほんと?
930 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:03:59.08 ] インストーラのウィザードをクリックで進めなきゃいけないよ オプション選択もある
931 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:06:54.37 ] 現にトラブってんだから大人しく窓使ってろって話
932 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:06:59.42 ] >>929 WindowsPCの一台くらい持ってるだろ? やってみれよ。
933 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:13:06.44 ] Linuxは中でPythonが非常に重要な役割で動いてる よってデフォルトじゃないバージョンを入れるには注意しないと環境が壊れる WindowsはPythonがよそ者だから何をしても壊れない
934 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:13:16.10 ] 本が意味も無くLinuxと3.3を薦めてんだろ 読んでないけど想像はつくな
935 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:18:45.89 ] パーフェクトPythonのLinuxの説明はめちゃくちゃ 良い子は真似すんなよ
936 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:20:07.06 ] 気になるから立ち読みしてボロクソに批判しようかな
937 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:31:52.65 ] パーフェクトPythonは最後まで立ち読みしてきたけどクソ技術書だねこれ 読み終わった後レジの横にあったゴミ箱に捨ててきた
938 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:40:38.13 ] >>933 よそ者の在日民主が暴れても国は揺るがないが 自民が売国すると国が死ぬみたいなものだな
939 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:47:53.56 ] >>926 そもそもソフトごとのインストーラなんてものがない。 パッケージマネージャ使う。 新たにインスコしたければ、他のいろんなパッケージと同様にパッケージマネージャから インスコしたいパッケージ選ぶだけ。 バージョンが上がればパッケージマネージャが他のパッケージと一緒にバージョンアップ してくれる。 Lunixでpipやeasy_install使うのはパッケージマネージャの管理外になるので邪道。 >>933 使ったことない奴が何言ってんのよ。
940 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:50:48.42 ] パッケージリポジトリに登録されてるバージョンが最新じゃなかったりして 自分でビルドする羽目になるよね(´・ω・`)
941 名前:デフォルトの名無しさん [2013/04/02(火) 22:54:48.43 ] Linuxは中でPythonが非常に重要な役割で動いてる よってデフォルトじゃないバージョンを入れるには注意しないと環境が壊れる 自分で使うバージョンは自分でビルドしたほうが安心
942 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 22:55:13.43 ] >>939 こいつ使ったことない絶対w pipはpipでアップデートするんだよw パケジなんてなくても.tar.gzからでもインスト出来るし管理出来るかどうかだろ? 何が邪道だw Linux使えてない人が言うでない
943 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 23:04:36.89 ] ディストロのリポジトリに入ってるのが古かったり Pythonのバージョン上げると問題が出てきたりするから 上の例ではvenvなんかで仮想環境を掘ってるんだろう と思うんだけど本の現物を見てみないとなんとも
944 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 23:10:53.89 ] 後方互換性無くしたバカは切腹しろ
945 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 23:40:26.88 ] >>942 Linux使ったことないおまいさんには理解できない世界かもしれんけど、 Linuxではそのシステムにインストールされてるパッケージは全部パッケージマネージャが管理するのが前提なんだよ。 パッケージマネージャが各パッケージの依存関係も管理するから。 pythonのパッケージもディストリビューションのリポジトリに入ってるのをパッケージマネージャでインスコする。 その範囲であればディストリビューションが動作を確認してることを意味する。 それ以外の手段でインスコしたパッケージは自分で管理しなければならない。 UbuntuなりFedoraなり大体のディストリビューションはウェブからリポジトリのパッケージ検索できるから確認してみそ。
946 名前:デフォルトの名無しさん mailto:sage [2013/04/02(火) 23:43:08.79 ] いやいや独自のパッケージマネージャを使ってるPython使っといてそれはちょっと…
947 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 00:00:47.59 ] 例えばブラウザのアドオン・拡張機能・プラグインは 独自インストールですしお寿司
948 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 00:05:37.80 ] >>918 (default) $ python distribute_setup.py がうまくいったとして、 (default) $ echo $PATH (default) $ ls -l default/bin (default) $ which easy_install の入力と出力それぞれ貼ってみて
949 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 00:39:10.40 ] バグほったらかしのdebとか産廃だから処分してくれないとなあ
950 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 00:48:12.94 ] つかメンテナが飽きて保守されなくなりました通知がマジで欲しい
951 名前:918 mailto:sage [2013/04/03(水) 09:36:07.17 ] >>948 $ echo $PATH /home/ubuntu/projects/default/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games $ ls -l default/bin 合計 8 -rw-r--r-- 1 ubuntu ubuntu 2150 3月 29 10:33 activate -rwxr-xr-x 1 ubuntu ubuntu 121 3月 29 10:33 pydoc lrwxrwxrwx 1 ubuntu ubuntu 9 3月 29 10:33 python -> python3.3 lrwxrwxrwx 1 ubuntu ubuntu 9 3月 29 10:33 python3 -> python3.3 lrwxrwxrwx 1 ubuntu ubuntu 18 3月 29 10:33 python3.3 -> /usr/bin/python3.3 $ which easy_install /usr/local/bin/easy_install
952 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 10:36:31.78 ] >>951 $ source default/bin/activate して仮想環境が有効になった状態で (default) $ python distribute_setup.py したのなら easy_install は default/bin に入るんじゃないかと思う というわけで仮想環境が有効になっていない状態で $ python distribute_setup.py した可能性はない?
953 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 11:40:03.30 ] >>911 ,918,920,951 おっと先に回答があったようですが Python3.3のvenvを試す ttp://ymotongpoo.hatenablog.com/entry/2012/09/03/002604 $ pyvenv-3.3 default このコマンドで default/ というディレクトリを作成し default/ 以下のPython環境を3.3としている ただこれ、このディレクトリに入ったら自動でその環境になるわけではなく そこに作られた default/bin/activate を読み込むことでその環境になる $ default/bin/activate を実行すると仮想環境(今回は3.3)になり 環境から抜けるには $ deactivate 簡単に理解するには以下のようにインタプリタを呼び出してみるとわかる $ default/bin/activate ---------------------------------------- (default) $ python ---------------------------------------- Python 3.3.0 >>> exit() (default) $ deactivate ---------------------------------------- $ python ---------------------------------------- Python 2.7.3 >>> exit()
954 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 11:55:21.13 ] >>953 bin/activate は直接実行ではなく source しなきゃいけない というか直接実行できないようになってるはず
955 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 12:01:07.74 ] $ python -V Python 2.7.3 $
956 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 12:47:57.72 ] てかまだvirtualenv使ってる方がいい pysetupもまだだし
957 名前:918 mailto:sage [2013/04/03(水) 14:10:35.24 ] >>952 ubuntuを再インストールして試してみましたが /local/binにインストールされます。 コマンド $ sudo apt-get install python3.3 python3.3-dev $ mkdir projects $ cd projects $ pyvenv-3.3 default $ source default/bin/activate $ wget python-distribute.org/distribute_setup.py $ python distribute_setup.py
958 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 15:27:10.10 ] >>957 source したらプロンプトの左側に (default) って出てない? 出てるなら端折らないで 出てる状態で su/sudo つけずに $ python distribute_setup.py して /local/bin なんて場所に easy_install が入っちゃうのならお手上げ
959 名前:918 mailto:sage [2013/04/03(水) 16:27:41.62 ] >>958 $ sudo apt-get install python3.3 python3.3-dev $ mkdir projects $ cd projects $ pyvenv-3.3 default $ source default/bin/activate (default) $ wget python-distribute.org/distribute_setup.py (default) $ python distribute_setup.py easy_installは/local/binにインストールされます。 (default) $ ./default/local/bin/easy_install pip pipも/local/binにインストールされます。
960 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 17:04:05.97 ] su/sudoしてないのにインストールできるわけないじゃん
961 名前:デフォルトの名無しさん mailto:sage [2013/04/03(水) 17:37:54.54 ] >>959 /local/bin って ./local/bin のことか… やっつけな回避策でいいなら bin/activate を開いて PATH="$VIRTUAL_ENV/bin:$PATH" PATH="$VIRTUAL_ENV/local/bin:$PATH" とかすればとりあえず local/bin にパスは通る
962 名前:918 mailto:sage [2013/04/04(木) 09:15:42.65 ] >>960 sudo すると /usr/local/binに2.7がインストールされました。
963 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 09:16:28.12 ] >>961 説明不足ですみません。 pyvenvの状態では (default) $ /home/ubuntu/projects/default/local/bin にインストールされます。 $ pyvenv-3.3 --clear default にすると環境全部消えるので書き換えたPATHも戻ってしまいますが 対策されるまでしばらくこれで使ってみます。 どうもありがとうございました。
964 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 09:40:13.01 ] sudo python3でやったか?
965 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 09:52:03.01 ] sudoしたらだめ。システムに影響が出ないようにvenvで仮想環境作ってるんだから
966 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 19:54:39.42 ] 狙ったバージョンをOSにインスコするだけなのに 何日もかかるって… UNIX系OSの暗黒面が大爆発している例だな。
967 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 20:07:26.02 ] >>953 のサイトのやり方なら問題ない バグというか仕様なんだから ubuntu で distribute_setup.py 使わなければOK .tar.gz 落として setup.py install
968 名前:829 [2013/04/04(木) 20:39:35.04 ] クラスを要素に持ってたリストを消去するのに hoge=[]と del hoge[:]で挙動が異なるんだなぁ、奥が深い....。この数日ハマった...。
969 名前:968 [2013/04/04(木) 20:41:04.90 ] ↑すみません。829じゃないのに間違えました。
970 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 21:15:32.60 ] パッケージマネージャ使わないとか死ねよ ぷんすか
971 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 21:18:40.02 ] 死ねよは言い過ぎじゃ >>953 のサイト見た? pyvenv でヴァーチャル環境でローカルにインスコ出来て --clear できれいサッパリ削除出来るってお得じゃないか
972 名前:デフォルトの名無しさん mailto:sage [2013/04/04(木) 21:21:21.67 ] いや随分パッケージ管理システムにご執心な奴がいたから 気持ちを代弁してやっただけよ
973 名前:918 mailto:sage [2013/04/05(金) 09:52:58.94 ] >>967 ソースから入れても./local/binに入ります。 $ pyvenv-3.3 default $ source default/bin/activate $ curl -O "pypi.python.org/packages/source/d/distribute/distribute-0.6.35.tar.gz" $ tar xzf distribute-0.6.35.tar.gz $ cd distribute-0.6.35 $ python setup.py install
974 名前:デフォルトの名無しさん mailto:sage [2013/04/05(金) 13:24:41.23 ] >>973 python distribute_setup.py も結局 python setup.py install するのでそうなるだろう ところで pip で入れたモジュールはちゃんと使えてる?
975 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 16:36:37.81 ] 質問です ある文字列 ( 0-9 a-f A-F のみが含まれる) '123456789abcdeff0123456789abcdef' ... から [0x1234, 0x5678, 0x9abc, 0xdeff, 0x0123, 0x4567, 0x89ab, 0xcdef] ... という 2byte 毎の値のリストを得るにはどんな書き方がありますか? 文字列の長さは常に 8 の倍数ですが最大の長さは不明です(どこまでも大きくなる可能性あり)
976 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 16:56:25.98 ] どこまでも大きくなるってのは例えばSocketStreamがReadしないとデータがあるかどうか分からないような状況を言っているのか? それとも1024か32768か2^32か不明なだけで、処理するときには判明しているのか?
977 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:02:20.74 ] >>975 >>> s = '123456789abcdeff0123456789abcdef' >>> [int(s[i:i+4], 16) for i in range(0, len(s), 4)] [4660, 22136, 39612, 57087, 291, 17767, 35243, 52719] >>> [hex(int(s[i:i+4], 16)) for i in range(0, len(s), 4)] ['0x1234', '0x5678', '0x9abc', '0xdeff', '0x123', '0x4567', '0x89ab', '0xcdef'] これでいいのかなあ。なんかやりたいこととは違う気がしなくもない
978 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:02:46.49 ] いや、そもそもPythonの文字列は長さが判明してないとおかしいから、 質問者が文字列から、と言っている以上、前者ではありえない。 ['0x'+s[i:i+4] for i in range(0,len(s),4)]
979 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:06:10.24 ] f = StringIO(s) [int(i, 16) for i in iter(lambda: f.read(4), '')]
980 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:07:42.97 ] import struct, binascii struct.unpack('>%dh' % (len(s) / 4), binascii.a2b_hex(s))
981 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:13:59.20 ] みなさんありがとうございます stream から読むのをイメージしていました >>979 さんのが一番良いみたいです あとお願いついでですが '123456789abcdeff0123456789abcdef' ... から [(0x1234, 0x5678), (0x9abc, 0xdeff), (0x0123, 0x4567), (0x89ab, 0xcdef)] ... の様にペアにしたタプルで得るにはどう書けば良いですか?
982 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:20:20.54 ] [(int(i, 16),int(j, 16)) for i,j in iter(lambda: (f.read(4),f.read(4)), ('',''))]
983 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:22:52.44 ] import StringIO, struct, binascii s = '123456789abcdeff0123456789abcdef' f = StringIO.StringIO(s) [struct.unpack('>2h', binascii.a2b_hex(i)) for i in iter(lambda: f.read(8), '')] [(4660, 22136), (-25924, -8449), (291, 17767), (-30293, -12817)]
984 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:28:53.08 ] くだすれPython(超初心者用) その17 toro.2ch.net/test/read.cgi/tech/1365323116/
985 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:33:54.01 ] おつぱいそん
986 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:35:41.43 ] g = (int(i, 16) for i in iter(lambda: f.read(4), '')) # itertools レシピのgrouper list(itertools.izip_longest(*([g]*2), fillvalue=None))
987 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:46:08.46 ] int(i, 16) のところで符号付整数にするにはどうすればいい?
988 名前:デフォルトの名無しさん [2013/04/07(日) 17:48:13.75 ] python3を積極的に導入する理由ってある? python2でできない、あるいは難しいこととかあるのかな
989 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:50:09.54 ] ちょっと訂正 int(i, 16) のところで16ビット符号付整数にするにはどうすればいい?
990 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 17:57:27.42 ] 32767より大きいなら65536を引く
991 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:03:21.42 ] それでもいいんだけど int() になんか便利なオプションあるのかなと思って
992 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:04:41.99 ] >>982 >>983 >>986 出来ました ありがとうございます
993 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:17:04.13 ] pythonはCのscanfみたいなのとかないのかな。
994 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:22:36.47 ] Python には現在のところ、scanf()に相当するものがありません。 約 1,220 件 (0.39 秒)
995 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:28:46.30 ] 正規表現で大概のことは出来るんじゃないかなと思う
996 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:29:38.95 ] 2から3に乗り換える利点は何ですか?
997 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:32:45.39 ] デメリットはお前のような奴がいることです
998 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:37:02.72 ] scanfって正規表現使えたっけ
999 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:37:46.57 ] >>991 無いよ。
1000 名前:デフォルトの名無しさん mailto:sage [2013/04/07(日) 18:38:53.88 ] >>989 16bit目が1なら全bit反転して+1
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。