Pythonのお勉強 Part43at TECH
Pythonのお勉強 Part43 - 暇つぶし2ch468: ◆AY.9L.NDUI
11/07/12 10:14:51.60
>>467
僕もあんま読み入ったわけでもないけど、どんなモジュールが在るか知っておくのは大きいし、目を通しておく価値はあると思う。
ウェブリファレンス歩き回るよりはずっと効率がよさそう。

469:デフォルトの名無しさん
11/07/12 15:27:58.40
>>467
URLリンク(www.python.jp)
URLリンク(diveintopython3-ja.rdy.jp)
ハッキリ言って入門は↑これで十分。
余った金で東北の地酒でも買ってやってくれ。

470:デフォルトの名無しさん
11/07/12 17:22:36.42
>>469
完全に同意できる
余った金でエアコンガンガンつけろ

471:デフォルトの名無しさん
11/07/12 23:37:36.03
>>469-470
サンクス。
余った金で家を買いました。


472:デフォルトの名無しさん
11/07/13 09:35:51.76
何冊買うつもりだったんだよ・・・

473:デフォルトの名無しさん
11/07/13 10:16:05.56
>>471
素直に笑ったw

474:デフォルトの名無しさん
11/07/13 11:17:55.21
Cythonでインスタンスを複製する方法ってないですか?
copy.copyやcopy.deepcopyだと、self.aやself.Aの値がコピーされず、空になるのですが
通常のPythonのままならうまくいきます

#abc.pyx
cdef class abc:
 cdef:
  public int a
  public list A

 def __init__(self,a):
  self.a = a
  self.A = [a]

 def Add(self,b):
  self.A.append(b)

from abc import *
i=abc(1)
i.A # [1]
j = copy.deepcopy(i)
j.A #
i.Add(2)
i.A # [1,2]
j.A #
j.Add(3)#AttributeError 'NoneType' object has on attribute 'append'


475:デフォルトの名無しさん
11/07/13 12:40:27.77
oh! 変数の名前がわかりにくい
i, j なんて使って質問するなよ。
foo, baa に変えて質問し直し

476:デフォルトの名無しさん
11/07/13 12:49:56.19
Cython
これなんて読むの?

477:デフォルトの名無しさん
11/07/13 12:53:33.72
さいそん

478:デフォルトの名無しさん
11/07/13 12:57:21.94
Cythonでインスタンスを複製する方法ってないですか?
copy.copyやcopy.deepcopyだと、self.fooやself.barの値がコピーされず、空になるのですが
通常のPythonのままならうまくいきます

#hoge.pyx
cdef class hoge:
 cdef:
  public int foo
  public list bar

 def __init__(self,qux):
  self.foo = qux
  self.bar = [qux]

 def Add(self,quux):
  self.bar.append(quux)

from hoge import *
corge=hoge(1)
corge.bar # [1]
grault = copy.deepcopy(corge)
grault.bar #
corge.Add(2)
corge.bar # [1,2]
grault.bar #
grault.Add(3)#AttributeError 'NoneType' object has on attribute 'append'


479:デフォルトの名無しさん
11/07/13 13:05:21.94
仕方ないので今は、
def copy(self,):
 tmp = hoge(0)
 tmp.foo = self.for
 tmp.bar = copy.deepcopy(self.bar)
 return tmp
を追加してこれを利用しています
今のところ問題は出ていないのですが、何か気持ち悪いので出来れば正しい方法を利用したいです

Python 3.1.3
Cython-0.14.1
です

480:デフォルトの名無しさん
11/07/13 13:48:49.62
学生さんは昼間暇かもしれないけど
仕事のあるおじちゃんは夜にならないと帰れないの
夜の10時頃にはレス来てると思うよ。
気長に待って

481:デフォルトの名無しさん
11/07/13 14:12:19.43
__copy__, __deepcopy__ の実装?

482:デフォルトの名無しさん
11/07/13 15:40:24.52
2回目のループでどうやらstderrに余計なことをしていて、中断してしまうのですが、
Python2.7で、似たようなシンタックスで標準エラーに吐くにはどうすればいいですか?
===
import sys

for i in range(10):
sys.stderr.write(str(i))

for i in range(10):
with sys.stderr as log:
log.write(str(i))

483:デフォルトの名無しさん
11/07/13 15:44:40.93
sys.stderrはオープン済みのストリームだから
単にsys.stderr.write(s)すればOK

484:デフォルトの名無しさん
11/07/13 15:50:35.17
Python3.2対応を気にしていて、
print("fuga",file=sys.stderr)
が2.7で使えないのをどうしたものか・・・
と思っているところなのです。
あと、改行入れてくれないとか、引数一つしか受け付けないとかも不満で。
あきらめるしかないですかねぇ。

485:デフォルトの名無しさん
11/07/13 16:07:18.02
from __future__ import print_function

486:デフォルトの名無しさん
11/07/13 16:16:52.75
>>485
おぉっ!
これで仲良く暮らせます。助かりました。

487:デフォルトの名無しさん
11/07/15 17:03:33.81
URLリンク(python.rdy.jp)
をやってみたいんですが
windowsでcryptを使うにはfcryptっていうのを導入しなきゃいけないって言うところまでは
分かったんですけど
その後そういうpython標準に付いてないのを追加するには
コマンドみたいなもので検索して自動でインストール(?)させるようなのが
あった気がするんですが
どういうコマンドを書けばよかったんでしたっけ???
基本的な質問ですいません

超久しぶりにpython構ったのでどわすれしてしまい
プログラムをいじる前の段階で躓いてしまいました
すみませんお助け下さい

488:デフォルトの名無しさん
11/07/15 17:16:11.44
すいませんでした
easy_install
でしたごめんなさいOTL


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch