Pythonのお勉強 Part51at TECH
Pythonのお勉強 Part51 - 暇つぶし2ch655:デフォルトの名無しさん
16/09/19 13:03:42.94 1rBZ35En.net
>>637
カスは死んでろ

656:636
16/09/19 13:05:17.64 1rBZ35En.net
人の指摘で相撲取ってる二番煎じ野郎がイキってんじゃねえ

657:デフォルトの名無しさん
16/09/19 13:11:41.62 feQKjrRG.net
>>636の指摘ってこの見当違いのアホなやつ? 
  ↓ ↓ ↓
>複数の変数に同一インスタンスが格納されていると見分けがつかないので役に立たないよ
見分けがつくって分かるようにlとaの変数にいれて見せてんだろバァァアアアアカッwww
よく見ろよド低能がwww 見分けついてんだろ、バカにも分かるように2つの変数にいれて見せてんだろww
どこまで行ってもバカはバカだよなーww アホのくせにイキってんじゃねーよww

658:デフォルトの名無しさん
16/09/19 13:37:08.57 FeZCS4mr.net
lとaを区別したいのなら
stacktraceで作れるかも

659:デフォルトの名無しさん
16/09/19 14:03:53.72 EKbXrxRJ.net
pandasで、カラム名じゃなくて「○行目に△(文字列)を含む列を取得」ってどう書きますか?

660:デフォルトの名無しさん
16/09/19 14:21:57.01 fi9udpIp.net
できたわ
class L(list):
def xxx(self):
g = globals()
for n in g:
if id(self) == id(g[n]):
s = traceback.extract_stack()[0][-1]
if s.endswith('%s.xxx()' % n): print n
a = L()
b = a
c = L()
a.xxx()
b.xxx()
c.xxx()

661:デフォルトの名無しさん
16/09/19 14:25:11.52 fi9udpIp.net
s = traceback.extract_stack()[-2][-1]
こっちの方がいいかな

662:デフォルトの名無しさん
16/09/19 18:46:49.45 G/zBuN33.net
bs4使うと毎回文字化けするんだけど
2.7じゃダメなの?

663:デフォルトの名無しさん
16/09/19 20:09:36.22 VSz4tOEQ.net
automate borering staffs with python の日本語版出るんだな 待ってたんだよ
さすがオライリー pythonで数学入門も面白かったし

664:デフォルトの名無しさん
16/09/21 21:20:05.96 VKZI37pg.net
from re import sub as 置換
表示 = print
表示(置換("[0-9]", "x", "Python 3.5.2"))

665:デフォルトの名無しさん
16/09/23 22:30:43.62 Bla+oVr/.net
PyConJPやってたらしいっすよ
あ…(まだ)やってたんだ…って感じだけど

666:デフォルトの名無しさん
16/10/01 17:57:03.46 RR1eK3bZ.net
ifとかfor文を1行に纏めるのってマズイですか?
if xxx: returnとか、コメント化が楽なので
ついやってしまうのですが、やはり醜いですか?

667:デフォルトの名無しさん
16/10/01 18:12:19.75 MIaIeT8n.net
>>649 あなたがコーディングルールを強制される立場にあるならそれに従え そうでなければ好きにしろ PEP8によれば「やらないほうがいい」であり「やってはいけない」ではない



669:デフォルトの名無しさん
16/10/01 18:15:58.70 rAdXsmVI.net
Python的ではないので良くないな
Pythonはソースのフォーマットについてはあまりプログラマの主観を入れずに機械的にルールに従って書くのが良いとされる
コメント化の意味がわからないがまさか全ての行にコメント書いてるのか?

670:デフォルトの名無しさん
16/10/01 18:19:17.93 MIaIeT8n.net
素直に考えればifをコメントアウトすることを指しているだろう

671:デフォルトの名無しさん
16/10/01 21:53:59.29 yd5cLCb2.net
デバックコードとかで最終的になくなる部分なら好きにやればいい
完成したソースに残る部分ならこの先そのソースを読む相手による
コメントアウトしたまま放置するのはいろいろな意味で醜いと思う

672:デフォルトの名無しさん
16/10/01 23:41:07.30 RR1eK3bZ.net
ありがとうございます

673:デフォルトの名無しさん
16/10/03 21:47:51.48 7yGPaGm8.net
django本は無いんけ?
Webアプリ系は大抵Railsなんねー

674:デフォルトの名無しさん
16/10/03 23:22:41.06 ASQ8vdH1.net
>>655
中国では人気みたいだよ?
URLリンク(www.google.co.jp)

675:デフォルトの名無しさん
16/10/04 14:34:56.59 ZPmHgmj0.net
ruby/railsは何に喰われて落としてるんだ

676:デフォルトの名無しさん
16/10/05 23:24:34.45 eAuixWC+.net
おまいら最もよくimport するモジュールなに?

677:デフォルトの名無しさん
16/10/06 01:14:24.77 wSbHvTIy.net
>>658
競技プログラム用に使う。
math
itertools
fractions
自分用の観測データ処理ツールに使う。
sys
csv

678:デフォルトの名無しさん
16/10/06 06:08:54.30 vuhBxoKM.net
dictのkeyのenumが使われてるんだけど
こういう場合ってどうやってkeyを指定するの?

679:デフォルトの名無しさん
16/10/06 06:10:14.00 /ehgJ0j4.net
スクレイピングと数値計算
numpy, pymysql, beautifulsoup4, mechanize

680:デフォルトの名無しさん
16/10/06 08:50:11.44 UMR0hD3K.net
numpy,toolz

681:デフォルトの名無しさん
16/10/06 10:43:54.23 j4+P2uPZ.net
どう考えてもos

682:デフォルトの名無しさん
16/10/06 11:44:22.78 xUfTV1xG.net
reですね、正規表現は友達

683:デフォルトの名無しさん
16/10/06 12:58:26.10 KvSD/i+L.net
numpyとpandasかな。

684:デフォルトの名無しさん
16/10/06 14:07:19.33 5aSogo6H.net
pandas一択

685:デフォルトの名無しさん
16/10/06 22:22:50.56 g4uaa0WA.net
みんな機械学習やってるの?

686:デフォルトの名無しさん
16/10/06 23:32:10.50 roCwyFi8.net
俺に聞くなよw

687:デフォルトの名無しさん
16/10/07 08:25:31.91 Cn+2xuAd.net
それより睡眠学習の実用化が先ですよ。

688:デフォルトの名無しさん
16/10/08 03:16:39.80 W9cDd1LE.net
import logging かな。

689:デフォルトの名無しさん
16/10/08 08:32:02.73 0rrUv0oH.net
collectionsも結構使う

690:デフォルトの名無しさん
16/10/09 15:53:16.59 ClA6Ux9I.net
すみません、
lambda f1, f2: lambda x: f2(f1(x))
的なことができる高階関数って、標準ライブラリにないんですか?
functoolsとかoperatorあたりのモジュールは探してみたんですが。

691:デフォルトの名無しさん
16/10/09 16:01:40.12 vJfQ8leN.net
前にフィルタープログラムを書いたときに探したけど無かったよ

692:デフォルトの名無しさん
16/10/09 16:27:21.72 zS2VLXB8.net
lambda f1, f2: return lambda x: return f2(f1(x))

693:デフォルトの名無しさん
16/10/10 21:52:07.22 Kmc8rJk9.net
>>673
なるほどないんですね。
デファクトスタンダードなライブラリとかではあるんでしょうか?
>>674
returnは式じゃないからlambdaの中には書けんよw

694:デフォルトの名無しさん
2016/10/1


695:4(金) 10:20:22.72 ID:aU1AR1AG.net



696:デフォルトの名無しさん
16/10/14 16:38:10.29 Wqp+crjm.net
iを変数としてi行目だけ代入したい成分aを持って他の要素は全て0の配列を作るにはどうすればいいですか?

697:デフォルトの名無しさん
16/10/14 17:09:27.51 tlULFick.net
こーいうこと?
素直にあらかじめ0だけの配列作ったほうがいい気がしないでもないが。
i=5
j=10
n=[0]*(i-1)+["a"]+[0]*(j-i)

698:デフォルトの名無しさん
16/10/14 17:12:10.88 tlULFick.net
代入だからこっちか。
i=5
j=10
a="aaa"
n=[0]*(i-1)+[a]+[0]*(j-i)

699:デフォルトの名無しさん
16/10/14 17:43:07.15 Qm2z0i/E.net
[a if index + 1 == i else 0 for index, _ in enumerate(lines)]

700:デフォルトの名無しさん
16/10/14 17:54:14.00 Wqp+crjm.net
ありがとうございます

701:デフォルトの名無しさん
16/10/14 18:44:55.05 ePTb4vd+.net
>>677
>>> import collections
>>> d = collections.defaultdict(lambda:0)
>>> d[5]='test'
>>> d[5]
'test'
>>> d[0]
0
>>> d[100]
0
>>>

702:デフォルトの名無しさん
16/10/15 12:40:18.11 gqIwHOMQ.net
>682
配列なら、len()で要素数取得とかの挙動も期待されるから、辞書を使うのはまずいかもね。
スカスカな配列を何に使うか次第だけど。

703:デフォルトの名無しさん
16/10/15 14:25:14.15 e56j1dfV.net
>>> d={5:"aaa", 8:"bbb", 11:0}
>>> [d[idx] if idx in d else 0 for idx in range(max(d)+1)]
[0, 0, 0, 0, 0, 'aaa', 0, 0, 'bbb', 0, 0, 0]
>>>

704:デフォルトの名無しさん
16/10/18 23:50:53.88 096F2O7j.net
初めてのpythonの最新版訳さないのかよ
いまだに2基準じゃん

705:デフォルトの名無しさん
16/10/19 04:20:18.65 0bOBecXw.net
その手の本が必要な層はphpやってますから

706:デフォルトの名無しさん
16/10/19 06:04:14.57 KM21H5NN.net
phpとpythonの関係って朝鮮人とネトウヨの関係みたいなもんですか?

707:デフォルトの名無しさん
16/10/19 10:39:01.01 PVRQWOLa.net
>>687
ペチパーはウヨでもあり朝鮮人でもある

708:デフォルトの名無しさん
16/10/20 04:10:20.61 oWSV7BZ5.net
とパイチョン君が申しております

709:デフォルトの名無しさん
16/10/22 20:35:52.44 I3+ei3yb.net
プログラミング関連の本買う人って
プログラミング勉強するぞって買ったはいいけど
結局何も作らず終わるのがほとんどだろ

710:デフォルトの名無しさん
16/10/22 22:13:28.60 nuXKaykF.net
>>690
いつも読了できなくて挫折ばかりのキミにアドバイスしてあげよう。
勉強は気合をいれてやるもんじゃないんだよ。「勉強するぞっ」って発奮してもダメ。
それって、変なところに力いれているだけ、ヤルかヤラないかでエネルギー使ってんの。
それで疲れちゃって結局やらないの。それがキミ。
パンを食べるように本を開いて、珈琲を飲むように文字を読むのだよ。
そこに感情はない、ただやる。やる気はやっているうちに出てくると科学的に分かっているわけ。
勉強始める前に気合入れることが以下にムダで意味の無いことか分かるでしょ。
つまり、体育会系にありがちな気合とか気持ちを込めろとかいう脳みそ筋肉バカは
何やってもダメってこと。

711:デフォルトの名無しさん
16/10/22 22:17:37.14 NQUMZk8r.net
>>691
結局プログラミングはしてないよねそれ

712:デフォルトの名無しさん
16/10/22 22:32:55.09 hG/RViKp.net
決めたことも�


713:竄關汲ーられないとかそんな雑魚おらんやろ



714:デフォルトの名無しさん
16/10/22 23:29:31.40 f2PM51uT.net
本買わずにネット情報だけでやってる奴なんているの?

715:デフォルトの名無しさん
16/10/23 00:11:43.04 QbShixfl.net
多言語経験してれば本家のドキュメントで事足りる。pythonは素晴らしい日本語訳ドキュメントがあるよ。
URLリンク(docs.python.jp)

716:デフォルトの名無しさん
16/10/23 00:37:41.92 AOI/GfPk.net
そこチュートリアルがプログラミング経験がある前提なのはいかがなものか
1.やる気を高めようで初心者を殺しにかかるのはやめてください

717:デフォルトの名無しさん
16/10/23 00:42:30.68 zDynmZIN.net
一次情報がWebにあるのに本買う方がどうかしてる

718:デフォルトの名無しさん
16/10/23 00:55:16.36 QbShixfl.net
>>696
「多言語経験してれば」って書いたんだけどなあ。そんなんだから一生初心者なんじゃない?

719:デフォルトの名無しさん
16/10/23 01:20:47.60 Pb3uCFNH.net
初心者をdisる奴は初心者だけなんだって

720:デフォルトの名無しさん
16/10/23 02:07:17.14 QbShixfl.net
( ´_ゝ`) フーン

721:デフォルトの名無しさん
16/10/23 03:38:51.57 2g5zTX+K.net
小学校出てる?幼稚園でお遊戯してた方がいいんじゃない?って
国語能力をdisれば何の問題もなかった

722:デフォルトの名無しさん
16/10/23 07:54:48.43 04Md1WAS.net
>>701
明らかにそういう意味だろ
お前も国語能力ないなw

723:デフォルトの名無しさん
16/10/23 09:23:00.18 Pb3uCFNH.net
初心者同士の潰しあいとかやめろよ恥ずかしい

724:デフォルトの名無しさん
16/10/23 10:36:52.08 CGzeXgZh.net
>>690
プログラミング本って無駄に高い
しかもwebで手に入る情報の羅列みたいな本も多い
amazonで探すだけなら良いが
うっかり現物見ないで買うのは禁止

725:デフォルトの名無しさん
16/10/23 10:38:42.53 CGzeXgZh.net
>>691
>勉強始める前に気合入れることが以下にムダで意味の無いことか分かるでしょ。
なるほど
学生の時にその奥儀を教わりたかった

726:デフォルトの名無しさん
16/10/23 10:39:34.44 CGzeXgZh.net
>>694
最近は駄本が多いからネットで90%以上間に合う

727:デフォルトの名無しさん
16/10/23 10:40:53.29 CGzeXgZh.net
>>695
わりとマジでレスするとpython.jpはイマイチ

728:デフォルトの名無しさん
16/10/23 10:41:33.35 CGzeXgZh.net
>>697
もう本の時代は終わったよね

729:デフォルトの名無しさん
16/10/23 10:43:43.08 JgLftgqx.net
>>698 >>701
伊調さんの始球式みたけど
お世辞にも立派な投球には見えなかった
一芸に秀でていても球投げたことは無さそうだなと
だけど伊調さんも嫌がらずに練習すれば
すごい球を投げられるような気がする

730:デフォルトの名無しさん
16/10/23 13:00:28.97 LgriLn9Y.net
なんで本家のドキュメントやリファレンスをちゃんと読まないのか
英語がダメなの?

731:デフォルトの名無しさん
16/10/23 13:06:58.08 LgriLn9Y.net
書籍になってると文書としての品質は上がってる
webは書き捨てが多いから質は目も当てられない
しかし内容はそれとは別問題なのだ

732:デフォルトの名無しさん
16/10/23 14:09:39.05 5Lr/fOT4.net
全くの初心者だとネットは情報量が多すぎるってのはあるか
とはいえ、本は3冊買って読み比べろとも言われるしな

733:デフォルトの名無しさん
16/10/24 00:27:48.51 EcHWVsmq.net
二次元のndarrayがある。例えばshape=(100,2)。
100個から適当に2個抜いて(98,2)のndarrayを作りたい。
この際、抜いた要素のひとつ前の要素は抜いた分を足して2で割った値にしたい。
いったんtolistでlistにしちゃえば実現はできるけど、速度面で不満が残る。
なんかいい方法しらない?

734:デフォルトの名無しさん
16/10/24 03:10:44.83 csOVihsC.net
単�


735:モノnumpy.zeros(shape=(98,2))で初期化行列を作って for文でshape=(100,2)からshape=(98,2)へ要素を代入するのはどう?



736:デフォルトの名無しさん
16/10/24 03:32:22.12 DiZc3ogb.net
numpy.deleteとスライス使え

737:デフォルトの名無しさん
16/10/24 07:05:42.05 +kcQUecP.net
>>715
numpy.deleteって知らなかった。サンクス!

738:デフォルトの名無しさん
16/10/24 10:34:20.72 9xygNeDa.net
>>713
抜きたい要素とそのひとつ前の要素を
どちらも足して2で割った値で上書きする
(要素の数は変えない)

739:デフォルトの名無しさん
16/10/24 23:32:26.05 +kcQUecP.net
>>717
抜く前に値を変えてしまうのですね
使わせていただきます!

740:デフォルトの名無しさん
16/10/25 02:27:29.62 1QQW4i9d.net
最近node.jsやってたけどまたPythonに戻ってきたわ
またよろしくな

741:デフォルトの名無しさん
16/10/25 21:10:07.75 xoqpMCMM.net
>>>v1.shape
(20, 10, 3)
>>>m1.shape
(3, 3)
>>>result = np.zeros(rv1.shape[:2])
>>>for i in range(rv1.shape[0]):
   for j in range(rv1.shape[1]):
      result[i, j] = np.dot(np.dot(rv1[i, j, :], m1), rv1[i, j, :])
この処理をforループを使わずに高速に書きたいんだが
なんかいい方法ある?

742:デフォルトの名無しさん
16/10/26 02:16:55.39 tP3geMHY.net
質問です
>>> import ctypes
>>> type(ctypes.ARRAY(ctypes.c_int, 1)(9))
<class 'numpy.ctypeslib.c_long_Array_1'>
>>> type(ctypes.ARRAY(ctypes.c_int, 2)(9,8))
<class 'ctypes.c_long_Array_2'>
>>> type(ctypes.ARRAY(ctypes.c_int, 3)(9,8,7))
<class 'ctypes._endian.c_long_Array_3'>
>>> type(ctypes.ARRAY(ctypes.c_int, 4)(9,8,7,6))
<class 'ctypes.c_long_Array_4'>
>>> type(ctypes.ARRAY(ctypes.c_int, 5)(9,8,7,6,5))
<class 'ctypes.c_long_Array_5'>
>>> type(ctypes.ARRAY(ctypes.c_int, 6)(9,8,7,6,5,4))
<class 'ctypes.c_long_Array_6'>
>>> type(ctypes.ARRAY(ctypes.c_int, 7)(9,8,7,6,5,4,3))
<class 'ctypes.c_long_Array_7'>
>>> type(ctypes.ARRAY(ctypes.c_int, 8)(9,8,7,6,5,4,3,2))
<class 'ctypes.c_long_Array_8'>
なぜ1と3だけ仲間はずれなのでしょう?

743:デフォルトの名無しさん
16/10/28 13:08:21.77 3lkqIeOw.net
>>> o = object()
>>> o.x = 3
AttributeError: 'object' object has no attribute 'x'
>>> o.__dict__
AttributeError: 'object' object has no attribute '__dict__'
↑これが失敗するので下のようにすると
>>> class O(object): pass
...
>>> c = O()
>>> c.x = 3
>>> c.x
3
>>> c.__dict__
{'x': 3}
>>> c.__dict__['x']
3
で上手くいく訳ですが
object を継承しているだけなのに
なぜ __dict__ がもれなく付いてくるのでしょう?

744:デフォルトの名無しさん
16/10/28 14:08:07.00 zu/Rt9+m.net
クラスオブジェクトには__dict__がもれなくついてくるから

745:デフォルトの名無しさん
16/10/28 14:22:40.91 iYpeYJtL.net
>>722
一言で言うと、持ってないと不便だから__dict__がついてくる
objectは基底の存在なのでいじれないように設計されてるけど
普通のクラスのインスタンスは属性の書き換えができた方が便利だ
もしインスタンスの属性の書き換えを制限するクラスを作るときは__slots__を設定しよう
それから、属性を書き換え可能なオブジェクトがほしいけどクラス定義が面倒なときは
辞書で我慢するかtypes.SimpleNamespaceを使おう

746:デフォルトの名無しさん
16/10/28 14:35:54.55 MDokmCKP.net
>>723の知能レベル
 質問:空はなぜ青いのでしょうか
 回答:空は青いから

747:デフォルトの名無しさん
16/10/28 18:07:20.36 3lkqIeOw.net
object 継承してるかどうかは関係ないわ
class C(): pass でも同じだわ

748:デフォルトの名無しさん
16/10/28 18:13:02.87 Eg/XFFg9.net
空は青色ではありませんよ?
アジュールって色なんですよ♪

749:デフォルトの名無しさん
16/10/29 17:03:46.75 5dVZCGK0.net
>>> import numpy as np
>>> from ctypes import cast, POINTER, c_double, c_char
>>> from binascii import a2b_hex, b2a_hex
>>> s = '555555555555D53F'
>>>


750:cast(a2b_hex(s), POINTER(c_double))[0] 0.33333333333333331 >>> c = np.sin(np.arange(1, 3, 1)) >>> c array([ 0.84147098, 0.90929743]) >>> cast(c.__array_interface__['data'][0], POINTER(c_double))[0] 0.8414709848078965 >>> cast(c.__array_interface__['data'][0], POINTER(c_double))[1] 0.90929742682568171 >>> cast(c.__array_interface__['data'][0], POINTER(c_char))[0:8] '\xee\x0c\t\x8fT\xed\xea?' >>> b2a_hex(cast(c.__array_interface__['data'][0], POINTER(c_char))[0:8]) 'ee0c098f54edea3f' >>> cast(a2b_hex('ee0c098f'), POINTER(c_double))[0] 1.185626633492288e-314 >>> cast(a2b_hex('54edea3f'), POINTER(c_double))[0] 5.2981662529804807e-315 なぜ結果が期待したものと違うのでしょう?



751:デフォルトの名無しさん
16/10/29 17:13:33.42 g3Hziv5V.net
間違った期待だから
>>> cast(c.__array_interface__['data'][0], POINTER(c_char))[0:16]
'\xee\x0c\t\x8fT\xed\xea?F\xb4\xd1\xea\xf6\x18\xed?'
>>> b2a_hex(cast(c.__array_interface__['data'][0], POINTER(c_char))[0:16])
'ee0c098f54edea3f46b4d1eaf618ed3f'
>>> cast(a2b_hex('ee0c098f54edea3f'), POINTER(c_double))[0]
0.8414709848078965
>>> cast(a2b_hex('46b4d1eaf618ed3f'), POINTER(c_double))[0]
0.90929742682568171

752:デフォルトの名無しさん
16/10/29 17:15:48.99 V/VqPJHP.net
あー
文字数とバイト数がごっちゃになってた
有賀㌧

753:デフォルトの名無しさん
16/10/29 17:24:28.60 0+VZnpKl.net
バイナリデータを変換するならstruct使おうよ

754:デフォルトの名無しさん
16/10/29 17:53:45.77 5dVZCGK0.net
いちいち定義するの面倒くね?
もっと簡単なの?

755:デフォルトの名無しさん
16/10/29 18:19:16.02 0+VZnpKl.net
>>732
Python2でしか確認してないがstructを使った書き方と比べるとこんな感じ
import struct
# 他のimportは省略
# c = ... も省略
print repr(cast(c.__array_interface__['data'][0], POINTER(c_char))[0:16])
print repr(struct.pack('dd', *c))
print repr(cast(a2b_hex('ee0c098f54edea3f'), POINTER(c_double))[0])
print repr(struct.unpack('d', a2b_hex('ee0c098f54edea3f')))

756:デフォルトの名無しさん
16/10/30 01:13:34.40 X0WLh33u.net
メモリ書き換え出来ないよ

757:デフォルトの名無しさん
16/10/30 05:34:28.14 yNIR1Ckb.net
バイト文字列を書き込むつもりならstructは違ってた
numpyならc.view()で配列をキャストするのはどう?
そのバッファにbytearrayかmemoryviewを使って書き込む
c.view(dtype=np.int8)[:8] = bytearray.fromhex('ee0c098f54edea3f')
c.view(dtype=np.int8)[:8] = memoryview(b'\xee\x0c\t\x8fT\xed\xea?')

758:デフォルトの名無しさん
16/10/30 14:56:03.48 DhcMHpiw.net
>>> d = {'a': (1,3,5), 'b': (2,4,6)}
>>> zip(d)
[('a',), ('b',)]
>>> zip(d.keys())
[('a',), ('b',)]
>>> zip(d.values())
[((1, 3, 5),), ((2, 4, 6),)]
>>> zip(d[d.keys()[0]],d[d.keys()[1]]) ← これをもっと簡単に書く方法はありますか?
[(1, 2), (3, 4), (5, 6)]

759:デフォルトの名無しさん
16/10/30 14:58:17.95 DhcMHpiw.net
ちなみに
'a' とか 'b' の名前は判らないです
key が 2 個あるらしいということだけ判ってる状態です
条件後付けですみません

760:デフォルトの名無しさん
16/10/30 15:04:27.15 HR8j9Zln.net
zip(*(d[k] for k in d))

761:デフォルトの名無しさん
16/10/30 15:06:34.69 HR8j9Zln.net
これでよかった
zip(*d.values())

762:デフォルトの名無しさん
16/10/30 23:13:49.26 r3eRdHaA.net
入門Python3のサンプルで使ってる文字列のチョイスすき。
表紙はきもい。つかPythonのオライリーの表紙は全部嫌がらせか?

763:デフォルトの名無しさん
16/10/31 19:30:40.95 BTnSfHvF.net
だってパイソンだし…
同じ生き物じゃないか

764:デフォルトの名無しさん
16/10/31 21:43:21.23 lijJSfpb.net
やっぱりみんな並列処理実装するのに、threadingではなく
最初からmultiprocessingを使っているのかな。
追われるようにググりながらなんとか作ってきたけど、GILに気づいたときには時既に遅かった。

765:デフォルトの名無しさん
16/10/31 23:49:40.65 tRXbeJlS.net
エキスパートpythonがmultiprocessing使ってたから・・・

766:デフォルトの名無しさん
16/11/01 00:04:58.92 myyUxu1+.net
GILの影響はCPUバウンドしか影響しないお(I/Oバウンドは問題なし)
そのCPUバウンドもNumPyとかは解決策を実装しているらしいが、
・・・

767:デフォルトの名無しさん
16/11/01 00:53:27.88 Ot0Mfz59.net
URLリンク(cp1.nintendo.co.jp)

768:デフォルトの名無しさん
16/11/01 02:17:16.41 lWEkG1Wt.net
Rubyでも、C拡張ライブラリがスレッドセーフではないため、MRI(CRuby)はGILを採用している。
GILでは、シングルスレッドでの実行速度が速くなる
ただし、I/Oアクセス時には、GILはロックを解放するから、
スレッドが勝手に切り替わり、並列にI/O処理できる。
だから、I/Oが多いと、マルチスレッドで速くなる
一方、JRuby, Rubinuis には、GILが無い
unicornはプロセスベースのサーバーだから、プログラミングは簡単だが、
Heroku推奨のPumaは、スレッドベースのサーバーだから、
プロセス内で状態を共有するため、スレッドセーフにプログラミングしなければならない

769:デフォルトの名無しさん
16/11/01 17:26:10.67 4xPIwz1E.net
>>745
2012, 5581, 9150 まだまだ無限にありそうだけど
2012 のときだけAAの問題が出て
2012 以外はこの問題だけ?
def range_check(func):
return lambda m, e, n, c: ((0 <= m and m < n) and func(m, e, n, c)) or ""
@range_check

770:デフォルトの名無しさん
16/11/01 21:54:03.85 JagjNEyh.net
2012以外は問題じゃなくてurlにもあるように一問目のヒントでしょ
0<=m<nの範囲でmを探せって意味

771:デフォルトの名無しさん
16/11/02 01:16:47.17 MYQ7Ohex.net
正しい値じゃないときは別のページに飛ばされるのか

772:デフォルトの名無しさん
16/11/04 05:08:09.04 gpXDTSEe.net
pandasってなんなん?

773:デフォルトの名無しさん
16/11/05 04:59:42.30 wfiZuB85.net
pandas はNumpyのデータ列に対して扱い易いデータ構造を提供するデータ分析ツールです

774:デフォルトの名無しさん
16/11/05 21:55:34.81 opkXce+m.net
高級言語しか触ったことないんですけど、
どなたかpythonでnumbaとかCython使うとなんで早くなるのか教えてもらえませんか
JITコンパイルってのがよくわからなくて

775:デフォルトの名無しさん
16/11/06 01:40:19.90 WNnVjL66.net
>>752
変数に型がないというのは、逐一中身を確認しなくてはいけません
そこから属性を取得するのも、Pythonは辞書から探すことになります
そういった手続きやエラーチェックが介在する分、時間が掛かります
この変数はこの型で、この型にはこれらの属性しかないと決まっていれば
属性参照もインスタンスのメモリアドレスに各属性のオフセットを
加算するだけで解決するような極めて単純なモデルで済みます
各実装にも依りますが、引数をはじめ変数の型を縛ることで
そういったコードへと関数を変換していると考えられます(適当
ただスクリプト言語において引数の型のみ指定できるようなものは
単なる制約の場合が多く、むしろ実行速度は僅かながら低下します

776:デフォルトの名無しさん
16/11/10 17:22:40.87 urso8i+f.net
>>596 無報酬みたいだな。

777:デフォルトの名無しさん
16/11/16 21:33:36.95 d4VtzaE6.net
udemy でマラソンセールやってたから Python の講習に申し込んでみた。
とりあえず「Complete Python Bootcamp」から。
URLリンク(www.udemy.com)

778:デフォルトの名無しさん
16/11/16 23:33:40.80 fzskfnoe.net
jupyter

779:デフォルトの名無しさん
16/11/17 15:13:50.16 r7o


780:wDyD9.net



781:デフォルトの名無しさん
16/11/17 23:26:58.72 fvdpi3xz.net
pythonでiphoneアプリ作れるようにしてほしい

782:デフォルトの名無しさん
16/11/18 00:03:56.78 1TQ7nfkR.net
Godot(ゴドー) Engineではじめるゲーム制作、天沢(あまさわ)らせん、2015
OSS・MITライセンスで、マルチプラットフォーム(iOS/Android/HTML5)、
Python風のGDScriptで書く
2D/3D用だが2D中心で、物理シミュレーションも搭載。
インストール不要で、サイズは20MB

783:デフォルトの名無しさん
16/11/18 01:59:45.66 LQDo/FHp.net
>>759
次に同じことを書いたら公式サイトに100ドル分のDDoS打ち込んでやる

784:デフォルトの名無しさん
16/11/18 09:14:21.78 xcQYDLoo.net
Cythonをはじめて使ったんですけど
UserWarning: Cython.Distutils.old_build_ext does not properly handle dependencies and is deprecated
ってエラーがでてしまいました
もう何を言われているの分からないのですが、どうすればよいのでしょうか?

785:デフォルトの名無しさん
16/11/18 09:32:32.06 bpDg/mkv.net
>>761
Cythonの使い方はどこで見た?確信ないけどたぶん、
cmdclassにbuild_extを指定する方法は廃止されたから代わりにcythonize()を使う
URLリンク(github.com)
URLリンク(docs.cython.org)

786:デフォルトの名無しさん
16/11/19 07:21:17.32 x8D2Epls.net
代わらない吸引力 ダイソン

787:デフォルトの名無しさん
16/11/19 08:48:16.33 YtkNE2sc.net
変わらない吸引力 おっぱいそん

788:デフォルトの名無しさん
16/11/19 17:50:14.88 EARt8M3E.net
株の銘柄価格を楽天RSSを通して取得できるようにしたいのですが
どうすれば出来ますでしょうか?

789:デフォルトの名無しさん
16/11/19 19:13:54.98 evoiElz2.net
勉強する

790:デフォルトの名無しさん
16/11/19 21:15:20.06 hEADhLQO.net
マルチやめれ

791:デフォルトの名無しさん
16/11/21 13:32:39.60 nEauqoE3.net
>>762
ありがとうございます!まさにbuild_extを使っております
cythonize()に代用してみますね

792:デフォルトの名無しさん
16/11/21 13:34:53.41 AV8Qs9fb.net
お礼はいらないよ

793:デフォルトの名無しさん
16/11/21 13:42:42.80 OdlAvAwn.net
>>765
楽天が公開している、APIを使う。
楽天がAPIを公開していないのなら、
自力でサイトのページ構造を分析する必要があるため、めちゃめちゃ難しい
Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例、
佐々木 拓郎・るびきち、2014

794:デフォルトの名無しさん
16/11/21 14:10:32.10 goLgdzFN.net
URLリンク(hesonogoma.com)

795:デフォルトの名無しさん
16/11/21 14:13:32.04 goLgdzFN.net
こっちだった
URLリンク(hesonogoma.com)

796:デフォルトの名無しさん
16/11/23 14:53:06.95 spSBpgZR.net
あのうざいおっさんもう来ないでくれるかな

797:デフォルトの名無しさん
16/11/23 19:06:21.91 mN2/m7ri.net
setup.pyに/usr/binにインストールしたい実行可能ファイルのインストールを記述できないの?

798:デフォルトの名無しさん
16/11/23 21:05:09.03 fCj7qIPS.net
できるだろ

799:デフォルトの名無しさん
16/11/24 00:11:03.84 OktEdl8u.net
この前出たmacbook proってまだ2系なの?

800:デフォルトの名無しさん
16/11/24 02:25:32.31 0bzOqP+y.net
つうかPythonライブラリ開発しようってな�


801:チたときに、 2から作り始めるの?3から作るの 2が先だったり2と3の同時リリースだとすると、 「別に2でも使える」→「3である必要がない」となって いつまでも3への移行が進まず気持ち悪い同居状態が長引くことになる 思い切って新規ライブラリは2のサポート版リリースを辞めるべきか、 3が明示無しのデフォルト、2は、「2と明示しないと使えない」にすべき。



802:デフォルトの名無しさん
16/11/24 10:19:06.31 G9zv+9s3.net
>>777
3で仕様変え過ぎたのが失敗だったな

803:デフォルトの名無しさん
16/11/24 21:38:50.61 9Ts9nmeN.net
3で動かない自然言語処理ツールが結構ある
英語はあるんだが日本語がない

804:デフォルトの名無しさん
16/11/24 22:00:56.09 Ge6TFhSM.net
>>758 今iphoneにpython落とせるだろう。

805:デフォルトの名無しさん
16/11/25 09:58:18.74 ejT/bmDU.net
フレームワークまで揃ってるの?

806:デフォルトの名無しさん
16/11/25 13:57:13.69 Was8MkUD.net
X, Y = np.meshgrid(x, y)
と Z[y][x] のデータがあってところどころ Z の値が np.nan のとき
Z[np.isnan(Z)] = np.nanmean(Z)
とかすると全体の平均値で補間できることは分かったのですが
全体の平均値の代わりに例えば上下左右の4点の近傍値で補間したいです
Z[np.isnan(Z)] = np.hogehoge できるとうれしいんですけど
速くてカッコイイ書き方を教えてください

807:デフォルトの名無しさん
16/11/25 14:07:24.70 uaIHXvW0.net
NaN連続してたら?

808:デフォルトの名無しさん
16/11/25 20:06:52.35 cY+6Vao3.net
rubyのsinatraに相当するのってbottleでおk?

809:デフォルトの名無しさん
16/11/26 05:35:09.74 AufG5x1o.net
sinatra → flask
rails → Django

810:デフォルトの名無しさん
16/11/26 15:12:22.20 KnKPBfvX.net
s = 'あ'*500000
という大きめの文字列を下のやり方で連結してみたら、
a = s+s+s+s+s
b = '%s%s%s%s%s' % (s,s,s,s,s)
c = '{}{}{}{}{}'.format(s,s,s,s,s)
d = ''.join((s,s,s,s,s))
e = f'{s}{s}{s}{s}{s}'
速度的に、
(速) e,d > c,b > a (遅)
で、e(3.6のf文字列)が良さそうなんですが、
メモリ効率的にはどうなんですかね?

811:デフォルトの名無しさん
16/11/26 15:22:34.34 hhkRb/f2.net
>>786
メモリ使用量も調べたら良いのでは?

812:デフォルトの名無しさん
16/11/26 16:15:30.11 NHEyIU0T.net
>>785
ありがとうございます。flaskっての調べてみます

813:デフォルトの名無しさん
16/11/26 16:34:14.57 ezWUhGI0.net
flaskより、普通にPyramidが・スゥ・キィー
Djangoより、普通にそうPyramidがぁースゥーキィー あいっ!

814:デフォルトの名無しさん
16/11/26 22:47:58.57 ZFdUN2Qn.net
>>779
日本はもう国力が衰えてるので
Cabochaの代わりはもう作られないだろうし
Cabochaがpython2でしか動かないなら
ずっと使っていくしかない

815:デフォルトの名無しさん
16/11/27 00:52:35.54 qpF+TI8A.net
2バイト文字に未来はない

816:デフォルトの名無しさん
16/11/27 02:27:58.29 vih5e8tT.net
cabochaってC++で作られたライブラリをバインディングしてるのか

817:デフォルトの名無しさん
16/11/27 20:51:38.70 hCRP9N1q.net
I/O発生するような処理をthreadingでやっていたものは、なんでもかんでもasyncioに持っていけばいいのかな。

818:デフォルトの名無しさん
16/11/28 13:55:36.00 msYXnjQ5.net
あるオブジェクトがgeneratorかどうかを判定したいのですが
import types
if isinstance(ite, types.GeneratorType): hoge
と書くのと
import inspect
if inspect.isgenerator(ite): hage
と書くのと
どっちが正しいですか?

819:デフォルトの名無しさん
16/11/28 14:57:24.29 QbhBdwoJ.net
どっちも正しい、というか同じだ
inspect.pyを読んでもらうとわかるけどisgeneratorの実装はこんなもん
def isgenerator(object):
 return isinstance(object, types.GeneratorType)

820:デフォルトの名無しさん
16/11/28 15:36:55.09 msYXnjQ5.net
機能は同じでisgeneratorを呼ぶと若干遅くなるということですね
isinstanceの方を使います
ありが㌧

821:デフォルトの名無しさん
16/11/28 16:19:01.89 JqLIUydX.net
inspectの方が分かり易くなっててエエやんか、機能的にもリッチだし他に色々調べられるねんでぇ
タイピング量も若干少なくなるしさ

822:デフォルトの名無しさん
16/11/28 16:21:11.20 msYXnjQ5.net
>inspectの方が分かり易くなってて
全然そう思わない

823:デフォルトの名無しさん
16/11/28 16:28:47.08 QbhBdwoJ.net
isgeneratorfunctionとかinspectの他の機能も使っているなら
コードの一貫性をよくするためにisgeneratorを推すかなあ

824:デフォルトの名無しさん
16/11/28 16:31:36.54 JqLIUydX.net
inspect=検査する
isgenerator=ジェネレーターか?(シャッキーン
isinstance=これはインスタンスですか?
types.タイプスの中の、、えっとえっと・・
GeneratorTypeと同じインスタンスなのですかぁ?(テヘ
ほら、inspectの方がカッコイイじゃーん!

825:デフォルトの名無しさん
16/11/28 17:29:25.44 7xa/esm8.net
静かにしろシャバ僧

826:デフォルトの名無しさん
16/11/28 17:55:11.35 K1QAwkuf.net
ジェネレータがgeneratorクラスって知ってる前提ならいいけど
そんな事情知らなくてもジェネレータは使えるから後者やね。

827:デフォルトの名無しさん
16/11/28 19:32:08.45 G1CNKeqJ.net
世界に腐るほどある遅くて我慢ならないソフトウェアを排出しいるのは
そんな風に浅はかで短絡的な考え方でプログラムの速さに向きあっている人達なのだよ

828:デフォルトの名無しさん
16/11/28 19:36:06.32 MT+LNPN6.net
推敲する余裕もない奴はすっこんでろ

829:デフォルトの名無しさん
16/11/28 22:09:50.95 padn7mYh.net
pythonのモジュール名がドットで連結しているのはどういう意味
何だろう?
つかpythonって new がないからモジュールとクラスの区別が
曖昧だな。
小文字はモジュール大文字はクラスでいいのかな。
下手するとtype()とかで確認した場合、モジュールとクラスと
メソッドの間の境界もあいまいな感じがする。
それを意識しなくてもいいのがいいところなんだが、
でも少し気になる。

830:デフォルトの名無しさん
16/11/29 04:11:30.39 uhrEoI9p.net
import文は
import "unittest/mock" だとファイル名の制限が分かりにくい
import unittest.mock ならファイル名に記号を使ったらSyntaxErrorにするぞと脅しになる
全部ファーストクラスオブジェクトがPythonのやり方だから区別があいまいなのは当然の結果だな
モジュールやクラスがインスタンスと同じ扱いなのは気持ち悪いと感じる人もいそう
推奨の命名規則(PEP 8)に従っていれば大別は付くのであとは慣れるしかない

831:デフォルトの名無しさん
16/11/29 04:25:10.40 FbGErgbe.net
>>806
その
> PEP 8
って何。

832:デフォルトの名無しさん
16/11/29 05:51:03.00 uhrEoI9p.net
Python Enhancement Proposalsっていう
CPythonを開発してる公式が書いてる機能拡張の提案ドキュメントがあるんだけど
そこが書いたPythonコードのスタイルガイドがPEP 8
URLリンク(www.python.org) (英文、日本語訳はいくつかあるので検索して)
一応、強制はしないと書いてあるけど事実上の標準だから違反したら非国民な禁忌もある
このスタイルガイドにコードが適合してるか調べるツールとかも開発されてる

833:デフォルトの名無しさん
16/11/29 08:49:09.05 CKpGPGTn.net
pythonのモジュール名がドットで連結しているのはどういう意味何だろう?



834:バカ「脅しになるから」 オレ「サブモジュールを指定しているだけ」



835:デフォルトの名無しさん
16/11/29 09:36:55.54 6bCoTGEQ.net
先達言語に倣っただけじゃないの

836:デフォルトの名無しさん
16/11/29 10:24:25.55 CKpGPGTn.net
新人「先輩! ここのコードって何でこうなっているんですか?」
バカ「なんだなんだぁ? しょうがない奴だなぁー、どこが分からないの?」
新人「ここです、このインポート文のここ」
バカ「ああ、これは脅し」
新人「え? 脅し?脅しってどういうことですか?」
バカ「ファックって意味」
新人「ファッ?」
バカ「ここでも使ってるだろ、ここはダフルファック」
新人「・・・」
バカ「トリプルファックは禁忌だから使うなよ」

837:デフォルトの名無しさん
16/11/29 10:55:00.88 iy4mqmRU.net
書いたコードをPEP8に適合するように整形してくれるモジュールが欲しい

838:デフォルトの名無しさん
16/11/29 11:10:17.71 ScaPK0xj.net
pyCharm使え
きみのわがままコードは開いた瞬間pep8違反で警告だらけになる

839:デフォルトの名無しさん
16/11/29 21:09:29.97 zJe10nAW.net
>>812
autopep8あるじゃん

840:デフォルトの名無しさん
16/11/29 22:12:09.81 qfUhNNLw.net
おまえら、楽しそうだな

841:デフォルトの名無しさん
16/11/29 22:26:38.01 bRZpPDaJ.net
機械学習勉強しても難しすぎてダメだ
写経しても理解できねぇ

842:デフォルトの名無しさん
16/11/30 02:18:00.82 WhaKofQb.net
馬鹿発見

843:デフォルトの名無しさん
16/11/30 08:23:06.72 q4/m7HYJ.net
>>814
ありがとう!

844:デフォルトの名無しさん
16/11/30 10:36:04.26 a8f2gqxA.net
Vimとemacs
どっちがpython書きやすい?

845:デフォルトの名無しさん
16/11/30 10:38:20.15 qNhNqYiD.net
ぼくはatomで。

846:デフォルトの名無しさん
16/11/30 10:53:42.12 QjBTVuFq.net
エマクソ大嫌いだからVimに決まってる
エマクソなんか使うくらいならCOPY CONのほうがマシ

847:デフォルトの名無しさん
16/11/30 15:02:24.07 Uk7B7fso.net
Vim scriptクソだからenacts

848:デフォルトの名無しさん
16/11/30 21:37:20.96 jlkhriI9.net
Emacsがなきゃ死ぬタイプだけど、Pythonだけはない
Pythonの時はatom

849:デフォルトの名無しさん
16/11/30 21:46:05.11 q4/m7HYJ.net
why atom?

850:デフォルトの名無しさん
16/11/30 21:53:23.87 TByUwrgW.net
PythonのIDEをAnacondaでSpyder2からSpyder3にバージョンアップしてから、調子が悪くて困っています。
コンソール画面の表示と、標準入出力の内容とがうまく同期できていない感じ。
入力プロンプトの出るタイミングとか。
同様の症状の方や、解決方法を御存知の方、おられませんか?
お助けください!

851:デフォルトの名無しさん
16/11/30 22:16:31.53 Ms5fW4sR.net
>>825
Spyder2に戻せばいいんでは。
無理に新しいの使うメリットないでしょ

852:デフォルトの名無しさん
16/12/01 06:41:25.26 6Ua6SiVz.net
Pythonの時はPycharmだわ

853:デフォルトの名無しさん
16/12/01 08:17:37.97 mgNdczCi.net
Pythonのインデント操作にはVimの
ビジュアル縦モードが必須よってVim

854:デフォルトの名無しさん
16/12/01 08:52:12.11 6Ua6SiVz.net
>>828
すまん、Vimモード使えばよくね?

855:デフォルトの名無しさん
16/12/02 05:59:05.35 9ip1hh3L.net
スレ違いならすみません。
C++の知識は「基礎的な内容なら少なくとも読むことはできる」程度の人間がC++用に書かれたQtの本を購入して、さほど余分なコストをかけずにPyQtを学べるものでしょうか?
ある程度以上はC++の知識も十分にないと困難だとか、結局はPyQtの英文ドキュメントも併せて読まないと複雑なことは困難みたいな状況を心配しているのですが……。

856:デフォルトの名無しさん
16/12/02 06:47:50.56 heOxDSWf.net
C++Qt本からおいしいところだけを頂く作戦はコストかかると思う
PyQtの基礎が本から学べないのでインストールから躓く可能性がある

857:デフォルトの名無しさん
16/12/02 14:04:53.01 BYmiNfoD.net
QtはC++を十分に理解してないと厳しいし英語読むのも必須
Python使うのが目的でないならC#でもやっとけ

858:デフォルトの名無しさん
16/12/02 22:11:56.05 ni+qSphh.net
3.6のdict、reversedできんかった
あくまでcompact dictなのね

859:デフォルトの名無しさん
16/12/02 23:30:05.81 9ip1hh3L.net
>>831-832
回答ありがとうございます。
普段はC#とRubyとを使い分けていたのですが諸事情でちょっとRubyを使えない状況となりまして、
代替として前から興味のあったPythonに手を出して見たのですが、これまでの経験から「LL言語でもGUIを使えればいろいろ助かるな」と思った次第です。
Qtを選んだのはRubyでも使い回せそうだったからという部分が大きいのですが、コスト面で割に合わなそうというのなら考え直してみます。
wxPythonなら日本語書籍あったのですがかなり高値になっていましたので、Qtなら一石二鳥かなと思ったのですが……。

860:デフォルトの名無しさん
16/12/03 05:33:56.23 MF5SHVtU.net
昔、pyconjpの動画でpyqt入門みたいなの見たことあるな
結構わかり易かった気がする
消されて無ければyoutubeにあると思うから探してみたら?

861:デフォルトの名無しさん
16/12/03 14:33:25.09 iU+ignEA.net
wxPythonなら本いらん

862:デフォルトの名無しさん
16/12/03 14:45:27.63 MBhxeCRo.net
Tkinterならインストールいらん

863:デフォルトの名無しさん
16/12/03 15:19:36.76 IRGw9hUe.net
以下に書いておいた。
スレ立てるまでもない質問はここで 144匹目
スレリンク(tech板:472番)
Godot(ゴドー) Engineではじめるゲーム制作、天沢(あまさわ)らせん、2015
OSS・MITライセンスで、マルチプラットフォーム(iOS/Android/HTML5)、
Python風のGDScriptで書く
2D/3D用だが2D中心で、物理シミュレーションも搭載。
インストール不要で、サイズは20MB
公式サイトの、Demos and Examples から、デモをダウンロードできる

864:デフォルトの名無しさん
16/12/03 16:06:41.02 iU+ignEA.net
tcl/tkってなんで廃れたんだろう

865:デフォルトの名無しさん
16/12/03 17:07:23.32 x7z2pgeG.net
というかPCではクライアントのGUIアプリ自体が廃れたから

866:あ
16/12/03 19:18:05.14 zlVjY0I4.net
matplotlibについて教えていただけないでしょうか。。。
---
import matplotlib.pyplot as plt
plt.rcParams['font.size']=14
plt.title('sample')
---
最後のplt.titleでプログラムが止まって先に進めないのですが、
なにか設定とかしないといけないでしょうか?
anacondaで一括でインストールしています。visual studioで実装中。
助けてほしいです。。
plt.plot(~)
plt.scatter(~)
とかやっても同じようにプログラムが狩猟してしまいます。

867:あ
16/12/03 19:29:11.48 zlVjY0I4.net
841です。
解決しました。。

868:デフォルトの名無しさん
16/12/04 11:32:53.61 Vu1yH0E5.net
スライス便利なんだけどオフセット境界がイマイチ解りにくい

869:デフォルトの名無しさん
16/12/04 21:34:35.81 cqw+Ggol.net
emacsだな
数年ぶりにカスタマイズしたら進化しすぎてて驚いた
visualstudioは同じコードを自由に縦分割、横分割が出来ないのがツラい

870:デフォルトの名無しさん
16/12/06 21:00:18.16 c2kwoyMd.net
asyncio難しいな~

871:デフォルトの名無しさん
16/12/07 08:11:24.29 8Qoemaiz.net
>>844
> visualstudioは同じコードを自由に縦分割、横分割が出来ないのがツラい
できるでしょ?
縦は分割と言うより別ウインドだけどマルチモニター環境だとこの方が便利だし
URLリンク(blogs.msdn.microsoft.com)

872:デフォルトの名無しさん
16/12/07 08:23:10.71 pN2ME9Zl.net
同じファイルを横に並べるのは無理でしょ。

873:デフォルトの名無しさん
16/12/07 15:26:11.18 NUzTP/h4.net
pythonスタートブックという入門の本読み終わったのですが
入門の次の、2冊目でおすすめの本って何でしょうか

874:デフォルトの名無しさん
16/12/07 16:42:25.98 jka8DeMl.net
>>848
入門の次は色んなライブラリやらツールを学習したいでしょうから
「科学技術計算のためのPython入門」とか「PythonによるWebスクレイピング」がいいんじゃないでしょうか。
これらは気になっている本で、まだ読んでことはないのですが、レビューをみるとかなりの高評価。
特に「科学技術計算のためのPython入門」は目次(URLリンク(gihyo.jp))を見ると
Python2系からPython3系の説明もあり(PythonスタートブックはPython2系の入門書)、
ホットなツール(JupyterやらSpyder)の説明もあり、生唾ものですよ。
しかもレビューを見るとPython入門者ならかなりタメにという心強いコメントもあり、アナタにピッタリです。
さてさて、ここに限らずネットで本を薦めると煩い輩もいるものですから、オススメサイトを紹介しておきましょう。
『Dive Into Python 3(URLリンク(diveintopython3-ja.rdy.jp))』、どの章も分かり易くためになります。
ここで一番のお気に入りの章は14.HTTPウェブサービスですね。Webから情報を取り出せるプログラミングというは
色んな可能性を感じさせてくれます。

875:デフォルトの名無しさん
16/12/07 16:50:41.62 NUzTP/h4.net
>>849
詳しくありがとう
その本とサイトチェックしてみます

876:デフォルトの名無しさん
16/12/08 10:57:27.26 T369KVfQ.net
「Automate the Boring Stuff with Python」の日本語版、立ち消えになっちゃったんでしょうか。

877:デフォルトの名無しさん
16/12/10 19:29:38.83 p5EfCbJX.net
2.8作った奴がいる…

878:デフォルトの名無しさん
16/12/10 20:05:07.31 en/a0VWX.net
URLリンク(github.com)

これか
もはやPython2芸と呼んでもいい執念だ
シェル芸みたいに

879:デフォルトの名無しさん
16/12/10 20:31:38.46 Lk6OBkwq.net
2の延命してるやつとかもうpythonに対する老害だろ 小学生にdisられてろよ

880:デフォルトの名無しさん
16/12/10 22:12:56.68 gaUdVz1u.net
名称だめだろうな
商標がどうのこうのとCPython開発のメーリングリストで話が出てる

881:デフォルトの名無しさん
16/12/10 22:50:29.55 gaUdVz1u.net
issueで代わりの名前にNorwegianBlueを提案してるよ、まったくw

882:デフォルトの名無しさん
16/12/11 00:38:04.19 s1r8VFAs.net
atomの書籍はあったけどアナコンダの書籍はどこ?

883:デフォルトの名無しさん
16/12/11 19:00:04.50 Vb5wkvZM.net
きっと西暦3000年にはPython2.999999...がリリースされると予想する

884:デフォルトの名無しさん
16/12/11 19:10:30.30 N5nM3OJr.net
うーん、もう新規開発は3以降なんだけどな(マジレス

885:デフォルトの名無しさん
16/12/11 19:55:42.43 FHN7Y9Gn.net
2.xなんてもうバグフィックスすらしてないんだけどな(マジレス

886:デフォルトの名無しさん
16/12/11 20:24:55.70 a33VHKvT.net
2020年に埋葬を行う予定なので、それまで腐らないように保全はしてるぞ

887:デフォルトの名無しさん
16/12/11 21:27:12.18 B25d2yFW.net
pythonCE用のpygameのようなゲーム作成できるものはありますか?

888:デフォルトの名無しさん
16/12/11 22:55:49.82 hiiS8aXy.net
Godot(ゴドー) Engineではじめるゲーム制作、天沢(あまさわ)らせん、2015
OSS・MITライセンスで、マルチプラットフォーム(パソコン、iOS/Android/HTML5)、
Python風のGDScriptで書く
2D/3D用だが2D中心で、物理シミュレーションも搭載。
インストール不要で、サイズは20MB
公式サイトの、Demos and Examples から、デモをダウンロードできる

889:デフォルトの名無しさん
16/12/12 22:10:51.56 B


890:ea0eRSp.net



891:デフォルトの名無しさん
16/12/13 03:20:39.23 neuXXcOh.net
えっ

892:デフォルトの名無しさん
16/12/15 20:20:58.89 BDlCqBF0.net
ディストリ標準パッケージとかHomeBrewのパッケジージならまだいいけど
それ以外はずいぶんひどい

893:デフォルトの名無しさん
16/12/16 13:16:00.79 SvS+jiAE.net
なんか練習問題として面白いものはないだろうか。
目的があってPythonを学んだというよりは趣味に近いので、実用的なものは素直に他の言語を使う方が安全だし、
プログラミング入門者用の課題は考えることもなく解けるようなものばかりで飽きてしまった。
プログラミングパズルも見つかるのは思考力を問うようなものばかりだから、言語に対する理解が深まるチャンスはあまりないし、
何かを移植してみるとか複雑なアルゴリズムを実装してみるとかの方がいいんかな?

894:デフォルトの名無しさん
16/12/16 13:25:46.18 SvS+jiAE.net
と、書き忘れ。
上でPyQtはC++を理解していないと辛いとあるけれども、どの程度の理解を求められるか聞いてもいいだろうか?
C++はあんまり書きたくはないけど読む限りでは問題ないんだけど、いきなりPyQtで始めるというのはやはり無理が生じる?

895:デフォルトの名無しさん
16/12/16 13:44:34.98 ENhiJOP8.net
>>867-868
そうだね、何かを移植したり複雑なアルゴリズムを実装するのがいいよ
C++読めるならPyQTも大丈夫だよ

と、書き忘れ。
PythonでPyQT書いちゃえば理解も深まるし一石二鳥だから、書いちゃいなよ^^頑張ってね

896:デフォルトの名無しさん
16/12/16 14:11:47.58 YdJc2ZoQ.net
>>867
グラフ理論とか

897:デフォルトの名無しさん
16/12/16 20:23:18.93 P4d6yKEb.net
>>867
各種ソートを自分で実装してみるとか

898:デフォルトの名無しさん
16/12/16 21:21:56.76 GB6oHwlz.net
>867
コードパズル的なので、Pythonに特化したのなら(最近は javascript 向けもある)CheckIOが有名だね。
もう試したかな?
Python固有の言語機能を使わせる問題もあったよ。
自分は、普通の競技プログラミングの方が面白くて、yukicoderやtopcoderに流れたけど。

899:デフォルトの名無しさん
16/12/16 22:27:50.35 SvS+jiAE.net
さんくす。
とりあえずいろいろそのあたり試してみる。

>>862
おお、初めて知った! ありがとう!
とりあえず週末に遊んでみる。

900:デフォルトの名無しさん
16/12/17 06:19:43.29 6O6BI3x1.net
>>867
スレリンク(tech板)

901:デフォルトの名無しさん
16/12/19 08:26:33.48 rwXTG9rH.net
俺はOpenCVの顔認識が面白くてPython覚えたな。
見た目すぐわかる即物的なお題はとっかかりやすい。

902:デフォルトの名無しさん
16/12/20 23:37:11.60 XxCPEnAI.net
gensimというライブラリをインポートして実行すると
warningが出てきてきて邪魔になるので消す方法はあるのでしょうか

903:デフォルトの名無しさん
16/12/24 09:34:54.00 daVFWLB3.net
Python 3.6 Released
URLリンク(www.python.org)

904:デフォルトの名無しさん
16/12/24 12:35:32.64 p4lqfCaM.net
メリクリ

905:デフォルトの名無しさん
16/12/26 13:10:14.29 8cUDP8J2.net
>>861 858さんに1票入れたい。

906:デフォルトの名無しさん
17/01/01 12:50:14.52 6K/PWE5e.net
sanicとかいうの凄いらしいね

907:名無し集中
17/01/01 16:47:05.40 jy2g6db8.net
>>867
coursera.org の"introduction to data science in python" の Quiz と Assignment だけをやる

【概要】py35 jupyter_notebook(サーバー上カーネル利用なのでWWWブラウザだけでよい) pandas 無料コース選択可能 英語だけ日本語なし

【シバリ】
・レクチャー動画をみない
・レクチャーでつかわれるjupyter notebook をみない
・slideをみない
・discussion formをみない

908:デフォルトの名無しさん
17/01/02 06:41:23.90 Y7I2K+/n.net
すみません、教えてください。
pythonの文法書に目を通したんですが、次の式の意味がわかりません。

opts, args = parser.parse_args()
これは、次のように表現されているところもありました。

(options, args) = parser.parse_args()

この、options, argsというカンマの意味がわかりません。


parser参照は、次のように定義されています。

from optparse import OptionParser
parser = OptionParser(usage=

909:デフォルトの名無しさん
17/01/02 08:33:43.50 R5w4/5OT.net
カンマは、2つの値をタプルにしている。
値2つをタプルにするときは、カッコはあってもなくてもいい。
pythonの関数は、複数の値をタプルの形で返すことができる。

910:デフォルトの名無しさん
17/01/02 08:42:20.52 VX82Kdpp.net
「多重代入」ね

911:デフォルトの名無しさん
17/01/02 10:09:55.59 jbaRYfeA.net
a, b = b, a なんてこともできて便利だよね

912:デフォルトの名無しさん
17/01/02 12:06:12.26 GdcUHK9D.net
a,b = (c, d, e)
とかやると
a=(c,d)
b=e
になるときと
a=c
b=(d,e)
になるときがある気がする

913:デフォルトの名無しさん
17/01/02 13:04:47.55 q64ulokO.net
>>883-885
お答えいただきありがとうございました。

すみません、次の理解で正しいでしょうか。

URLリンク(pymotw.com) によると、
print parser.parse_args(['-a', '-bval', '-c', '3']) は、次の結果を返していました。

(<Values at 0x1004cf488: {'a': True, 'c': 3, 'b': 'val'}>, [])

すなわち、parser.parse_args は、辞書型オブジェクト{'a': True, 'c': 3, 'b': 'val'}を返しているようです。

さきの式、(options, args) = parser.parse_args() は、教えて頂いたように、タプル型に変換しているのだとすると、
optionsには、辞書のうちキーのコレクションが、argsには、辞書のうちバリューのコレクションが、2値のタプルに変換されたということになるのでしょうか。
これらのコレクションっていったい何型になっているんでしょうか。

914:887
17/01/02 13:10:07.07 q64ulokO.net
実験しました。
お手数お掛けしました。次のようにわかりました。

>>> print parser.parse_args(['-a', '-bval', '-c', '3'])
(<Values at 0x7f31957c1e60: {'a': True, 'c': 3, 'b': 'val'}>, [])

タプル型に変換
>>> opts,vals = parser.parse_args(['-a', '-bval', '-c', '3'])

>>> print opts
{'a': True, 'c': 3, 'b': 'val'}
辞書型

>>> print vals
[]
リスト型
>>>

辞書型とリスト型がタプルに収められたようです。

915:デフォルトの名無しさん
17/01/02 23:52:38.99 3gHL5+lJ.net
Linuxの、getopts コマンドみたいな、オプション引数の解析か

916:デフォルトの名無しさん
17/01/03 00:36:09.17 +MYdRpMm.net
なんで一次情報みないかな。
optparseは廃止するからargparse使えってあるよ。

917:デフォルトの名無しさん
17/01/03 08:56:39.71 O5amT4li.net
RHELとかCentOSの古いバージョンでシステムのPython使う縛りでもしてんじゃねーの
哀れな人生ww

918:デフォルトの名無しさん
17/01/03 09:42:46.54 TnZehvFm.net
500Gぐらいの巨大なテキストファイルを一行ごと読み込んで処理してるのだけど、一週間ぐらい計算かかる

どうにか高速化したい

ssdにファイル置いたらどのぐらい高速化できますでしょうか?高速化出来るなら買おうと思うのですが

919:デフォルトの名無しさん
17/01/03 09:50:01.89 EwdYFBNg.net
>>892
シーケンシャルアクセスだったらSSDにしてもそんなに早くならないと思う
メモリを増設したりCPU変えるとかGPU使うとかの方が効果あるかも
CPUとかのキャッシュを大きいのにするとか

920:デフォルトの名無しさん
17/01/03 10:11:08.39 Vmas/Nev.net
処理の中身が分からないとアドバイスのしようがない

921:デフォルトの名無しさん
17/01/03 10:25:32.06 hCjfXn+0.net
>>892
HDD でランダムで10MB/sとしても500GBの読み出しは 50,000s
これが 0 になっても14時間ぐらいしか短縮できないよ
処理の方を見直すべき

922:デフォルトの名無しさん
17/01/03 10:28:22.19 NiJgz8R3.net
>>894
ほんそれ

923:デフォルトの名無しさん
17/01/03 11:04:46.55 bKYKotyv.net
数値計算ならSparkとか使えば爆速

924:デフォルトの名無しさん
17/01/03 12:26:15.37 qzU7aiCI.net
>>892
1行毎に読むんじゃなくてまとめて読んでみれば

925:デフォルトの名無しさん
17/01/03 12:31:36.04 7C3/enxT.net
一度に読むって、メモリどんだけ積むんだよ。。

926:デフォルトの名無しさん
17/01/03 13:02:40.64 qzU7aiCI.net
一度に全部読めとは言ってない

927:デフォルトの名無しさん
17/01/03 14:39:15.93 crngBivu.net
500Gのテキストファイルって具体的に何なの?想像すらつかん

928:デフォルトの名無しさん
17/01/03 19:29:48.32 xUoMoOP8.net
普通に読んでたらキャッシュ先読みしてるはずなので
そこは大丈夫なんじゃない?

1行ずつ処理する場合は各処理が独立してる
事が多いので、高速化にはmultiprocessingとか
使うことが多いな、俺は。

929:デフォルトの名無しさん
17/01/03 20:11:30.34 YI7t9SH+.net
1行が長すぎるとか?

930:デフォルトの名無しさん
17/01/03 21:12:36.54 9D0ybwCh.net
並列処理しょう

931:デフォルトの名無しさん
17/01/03 22:10:29.02 XVcLiPUd.net
元ファイルは読み込むだけで、処理した結果は別ファイルに書くのか、
同一ファイルを読み書きするのか、
どちらなのだろう?

932:デフォルトの名無しさん
17/01/04 13:47:08.78 XZra0ySO.net
>>902
つべこべ言わずやってみろって話

933:デフォルトの名無しさん
17/01/04 16:33:45.79 LRb0fkM8.net
exe化がもう少し簡単になったらなぁ
プログラム書いても社内に気軽渡せないから
まずはpython普及活動からしないといけないのが

934:デフォルトの名無しさん
17/01/04 16:51:35.35 ybmZ8prx.net
最初からC#とかで書けば?という話に…

935:デフォルトの名無しさん
17/01/04 16:56:04.54 7VnpjoHi.net
Webでいいだろ
安易に実行ファイル配ると後で地獄を見るぞ

936:デフォルトの名無しさん
17/01/04 17:01:35.60 A5A0Jv3S.net
なんでぽまいらぱいそんたんであそんでるの?

937:デフォルトの名無しさん
17/01/04 17:07:30.15 XZra0ySO.net
>>907
cで書けよ
python呼べるし
思ってるほど大変じゃない
簡単簡単

938:デフォルトの名無しさん
17/01/04 17:17:55.27 LRb0fkM8.net
>>908
C#も使ってるけどやっぱり数値計算とデータ処置はpythonが圧倒的楽
個人でまず結果を出すのが第一だからpythonで最初に書いてしまう

>>909
webは即挫折したわ

>>911
Cはあんまわからんけど確かにpythonでexe化頑張るより他言語から呼ぶ方がいいかも

939:デフォルトの名無しさん
17/01/04 17:19:03.58 BWK338aM.net
IronPythonつかえばええやん

940:デフォルトの名無しさん
17/01/04 17:39:42.31 LRb0fkM8.net
確かにそうですね…

941:デフォルトの名無しさん
17/01/04 19:17:18.76 fR/CnmvD.net
というか、windows10なんて使うなよ

linuxをデスクトップマシンとして使うのだ!

942:デフォルトの名無しさん
17/01/04 19:18:07.12 fR/CnmvD.net
>>909
更新などの保守が大変だね

943:デフォルトの名無しさん
17/01/04 19:19:09.19 fR/CnmvD.net
>>912
webアプリといっても、pythonのフレームワークは使う気になれない。。
.net coreは?

944:デフォルトの名無しさん
17/01/04 21:34:53.01 ybmZ8prx.net
>>912
そういう自作ツールはできるだけ外に出さずに溜め込んどくのが


945:オススメ 本当にPython布教したいなら、社内SEに相談して部署の全PCに入れてもらうしかない 結局のところ、便利ツール作成にはVBAが最強 Excelさえ入ってりゃ誰でも使えるからね



946:デフォルトの名無しさん
17/01/04 23:18:00.89 BVc6syQy.net
そろそろPSに光を当ててくれ

947:デフォルトの名無しさん
17/01/04 23:55:49.29 BWK338aM.net
PostScript?

948:デフォルトの名無しさん
17/01/05 00:23:49.19 jBQh1CN0.net
おっぱい!

949:デフォルトの名無しさん
17/01/05 07:02:34.72 bgD/9Tck.net
>>918
LibreOfficeを普及させたいんだが。

950:デフォルトの名無しさん
17/01/05 07:34:30.91 42rV0dht.net
ooo自壊わろす

951:デフォルトの名無しさん
17/01/05 09:28:53.61 bgD/9Tck.net
>>923
LibreOfficeは開発は盛んだよ
エクセルのファイルも開けるし、互換性はかなり高いと思う。

>>918
わざわざwindowsでしか使えない言語なんて選ぶべきでないだろうと思うが。
今後は、windowsの立場も絶対的なものではなくなっていくだろうと思う。
いつかサポート切れにされるかもしれないし。

どこでも動く、オープンな言語で作成するプログラムがいいと思うよ。

952:デフォルトの名無しさん
17/01/05 10:24:46.51 A5YsqABa.net
>>924
VBAのくだりは半分冗談
でもWindowsの場合は「どこでも動く、オープンな言語」って難しくないか?
JavaScriptくらいかな

953:デフォルトの名無しさん
17/01/05 11:13:32.72 2uA+A+xC.net
そういえば Open Office ってもうすっかり聴かなくなったな

どこ逝っちゃったんだろ

954:デフォルトの名無しさん
17/01/05 11:52:21.36 fddeL2Ud.net
あいつならOSSの墓場に行ったよ

955:デフォルトの名無しさん
17/01/05 17:10:24.82 JwVNc8eK.net
おくりびと
Apache Foundation

956:デフォルトの名無しさん
17/01/05 17:42:10.67 IruuUmgl.net
>>925
PowerShell でええやん

957:デフォルトの名無しさん
17/01/05 18:24:29.56 YNtiq33O.net
>>925
つJVM

958:デフォルトの名無しさん
17/01/05 19:36:10.57 gkyarhH1.net
次のようなエラーが出たので、コードでtry exceptで無視しようとしたのですが、
あいかわらず、同じエラーが発生します。

Traceback (most recent call last):
File "./ExtractAttachedFilesFromEmail-ver1.pi", line 71, in <module>
main()
File "./ExtractAttachedFilesFromEmail-ver1.pi", line 64, in main
fp.write(part.get_payload(decode=True))
TypeError: argument 1 must be string or buffer, not None



fp = open(os.path.join(opts.directory, filename), 'wb')
try:
fp.write(part.get_payload(decode=True))
except TypeError:
raise
fp.close()


どう対策すればエラーの発生を止められるでしょうか。

959:デフォルトの名無しさん
17/01/05 19:48:50.80 qspWL9xX.net
何これギャグ?

960:デフォルトの名無しさん
17/01/05 19:56:52.83 qmzHQB57.net
exceptの中でraiseしてるから
無視したいんだから例外を出さないコード(何もしないならpass)にしとかないと。
それとファイルのオープン・クローズが同一スコープにあるなら
with openのイディオムを使うのが一般的やね。

でもこの場合はpart.get_payload()を先に検証しとくのが筋

961:デフォルトの名無しさん
17/01/05


962:22:19:41.34 ID:bgD/9Tck.net



963:デフォルトの名無しさん
17/01/05 22:48:32.62 bgD/9Tck.net
>>933
>part.get_payload()を先に検証

partは、次のように生成されています。

import email
(省略)
fp = open(msgfile)
msg = email.message_from_file(fp)
fp.close()

counter = 1
for part in msg.walk():
(省略)

part.get_payload()は、おそらくストリームを返すのだろうと思います。
次のようにして、予め、チェックするとうまくいきました!

payload = part.get_payload(decode=True)
if payload is not None:
with open(os.path.join(opts.directory, filename), 'wb') as fp:
fp.write(payload)


ありがとうございました!!! m(~)m

964:デフォルトの名無しさん
17/01/05 22:53:22.33 bgD/9Tck.net
インデントは、TABで作った方がよいのか、
複数個のスペースで作成した方が良いのか。

catでターミナルで表示させたものをコピーして、
それをテキストエディタに貼りつけると、TABインデントと、スペースインデントの位置がずれていました。

965:デフォルトの名無しさん
17/01/06 01:59:46.43 fOPWTFGM.net
pep8

966:デフォルトの名無しさん
17/01/06 06:53:46.44 KGBbpqvB.net
TABインデントはダメ、初心者とか関係なく修正を求められる
常用していると世界中のPython使いから非難されると言っても過言でないレベル

967:デフォルトの名無しさん
17/01/06 07:04:53.12 dNJWZw2b.net
>>938
> TABインデントはダメ、
なしてどすか。

968:デフォルトの名無しさん
17/01/06 07:20:55.74 KGBbpqvB.net
TAB文字による空白はエディター環境によって表示される幅が変わるので
書いた人が意図したレイアウトが崩れる可能性がある
Pythonはインデント構文だからレイアウトが崩れて見えることは読みやすさを損なう

969:デフォルトの名無しさん
17/01/06 07:27:49.41 W1gobICw.net
>>938 >>940
ありがとうございます。
TABは一押しだけで使えるため便利なんですが、
スペース連打がpythonの標準であるなら、今後はそれに従います。

標準的には、TAB一個の代わりにスペースは何個分が良いんですか?

970:デフォルトの名無しさん
17/01/06 07:30:37.46 jDgzP/rL.net
ググれば分かるようなことを質問してるやつは
プログラマには向いてないね

971:デフォルトの名無しさん
17/01/06 07:31:03.39 l/CEs5x/.net
>>940
インデントが一貫していなきゃそもそもエラーだし、一貫しているなら単に表示がずれるだけ。
4tabが8tabで表示されても「崩れる」とは言わんだろう。
pep8でどう規定しているかは別として。

972:デフォルトの名無しさん
17/01/06 08:23:02.09 W13vyZpn.net
プレーンテキストの編集で
ハードタブ入力することなんてもうないなーって
考えてたら年末にMakefile直接編集してた。

973:デフォルトの名無しさん
17/01/06 08:32:15.60 vWuMUwIp.net
PEP8によると、インデントは必ず空白4つで行うこととのこと

974:デフォルトの名無しさん
17/01/06 08:46:33.19 FKUBdTWh.net
>941
スペース連打しないですむように、タブを押したらスペース4個入力するようにエディタを設定すればいいよ。

975:デフォルトの名無しさん
17/01/06 09:04:44.23 KGBbpqvB.net
>>943
制御構造のインデントレベルの話じゃなくて行を継続している箇所とかも含めてレイアウトと呼んだ
レイアウトのずれはPythonでは死活問題だと思う

976:デフォルトの名無しさん
17/01/06 09:15:56.08 AhEOh5B8.net
最近はGoogle系の馬鹿のせいでスペース2つのスタイルも増えつつある
endや}のある言語ならいいけどPythonでインデント2はやっぱり見辛い

977:デフォルトの名無しさん
17/01/06 12:52:33.14 S2R5Pk4v.net
自分しか読み書きしないからタブ(表示は4スペース)でやってる

978:デフォルトの名無しさん
17/01/06 13:39:44.86 yLKPpVdQ.net
俺は2スペースでやってる
エディタ画面を横分割すると2スペースの方が見やすくない?

979:デフォルトの名無しさん
17/01/06 15:19:52.08 XtKi9eaG.net
>>945
しかしスペ2のソースも多い

980:デフォルトの名無しさん
17/01/06 15:21:39.82 XtKi9eaG.net
>>948
スペ2がそんな見辛いとは思わないけどな

981:デフォルトの名無しさん
17/01/06 15:40:17.22 W13vyZpn.net
2にするとネストを深くしがちになるからね。
Pythonコードぽくなくなる

982:デフォルトの名無しさん
17/01/06 18:14:30.97 kp2I/0bG.net
幅2だとレベルがわかりにくいわ
一度に2レベル上(つまりスペースが4つ減る)まで戻ってたりすると一体どこと同じレベルへ戻ったのかパッと見てわからん

983:デフォルトの名無しさん
17/01/06 18:15:39.84 XtKi9eaG.net
それはダラダラと書いてるからだろ

984:デフォルトの名無しさん
17/01/06 18:18:30.92 kp2I/0bG.net
>>955
否定はしないけど、そう言われてもどうしようもない
俺は絶対に4しか使わないから、人のコードを読むときの話だ

985:デフォルトの名無しさん
17/01/06 18:28:51.73 FLKl51d6.net
tabかスペースかどっちかサポートやめてほしいわ
もう今更なんだろけど

986:デフォルトの名無しさん
17/01/06 18:29:44.12 25Rssu9c.net
pythonのtab禁止の影響で
Cでもtab使うのやめちった

987:デフォルトの名無しさん
17/01/06 18:30:56.57 b8mpsnPl.net
連続した行継続の直後に1レベル戻るとか凶悪
カーソル位置に縦線が欲しくなる

988:デフォルトの名無しさん
17/01/06 19:14:13.05 LmbCCxs/.net
4tab でも 2tab でもどうでもいいんだが here document で凶悪化する

(インデント)hoge = '''
...
%s
...
%s
...
''' % (fuga, hage)

989:デフォルトの名無しさん
17/01/06 20:26:34.73 S2R5Pk4v.net
>>960
見辛いと言う意味なら他の言語でも同じでは?

990:デフォルトの名無しさん
17/01/06 21:00:05.89 l/CEs5x/.net
>>947
タブ表示幅が変わるのが死活問題のわけないだろう。

991:デフォルトの名無しさん
17/01/06 21:58:46.38 vWuMUwIp.net
PEP8に逆らうな��

992:デフォルトの名無しさん
17/01/06 23:26:04.58 KGBbpqvB.net
ソースの可読性は些細な問題だと主張する人であるのなら話が合わないな
タブインデントで読みやすいコードを書けると言っているのならそれはPEP8とは無関係で興味ない
参考として書くと新しいバージョンではインデントにタブとスペースを混ぜるとエラーになる

993:デフォルトの名無しさん
17/01/07 00:09:15.65 bP0cwlRr.net
× ソースの可読性は些細な問題
〇 ソースの可読性にとってタブ幅は些細な問題

994:デフォルトの名無しさん
17/01/07 07:03:14.90 bDXT+9KP.net
tab使うなじゃ駄目なのか?
pep8の通りスペース4つで統一しろ
コーディング規約を守った上での見辛い糞コードは知らん

995:デフォルトの名無しさん
17/01/07 07:20:37.29 xYS1fpbG.net
タブコード4つの猛者はいないの。

996:デフォルトの名無しさん
17/01/07 08:02:38.13 bP0cwlRr.net
pythonやる以上pep8に従え、理由は聞くな、で問題ないな。
わざわざ怪しげな理屈をつけて正当化する必要もない。

997:デフォルトの名無しさん
17/01/07 10:52:04.60 QL5QRg0c.net
まとめると、tab使うな。スペース半角4個を使え。でお?

998:デフォルトの名無しさん
17/01/07 10:52:51.55 72YrLFZp.net
エディタでタブの設定をスペース4個にしとけばええやん

999:デフォルトの名無しさん
17/01/07 11:27:21.42 gdmcm9JP.net
>>964
>参考として書くと新しいバージョンではインデントにタブとスペースを混ぜるとエラーになる

>>967
>タブコード4つの猛者はいないの。

スペース4個とタブ1個の行が混在だとエラーだけど
スペース4個とタブ4個の行が混在しててもエラーにならなかったような

1000:デフォルトの名無しさん
17/01/07 11:30:01.42 QL5QRg0c.net
>>970 >>946
ありがとうございます。

CentOSなんですが、vimを使っています。
なにかtabで4スペース可能にするお勧めのターミナルエディタってなんでしょうか。
nanoとかですか?

1001:デフォルトの名無しさん
17/01/07 11:34:03.90 vy3gmxyW.net
Vim

1002:デフォルトの名無しさん
17/01/07 11:36:44.32 DbRDph3N.net
なんでエディタ変えるんだ?vimrcに設定書くだけでよくね?

1003:デフォルトの名無しさん
17/01/07 11:38:14.32 EceZQ54D.net
Vimしかねーだ�


1004:�



1005:デフォルトの名無しさん
17/01/07 11:42:11.94 XDvKv2Q+.net


Pythonのお勉強 Part52
スレリンク(tech板)

1006:デフォルトの名無しさん
17/01/07 12:50:30.86 QL5QRg0c.net
>>973-975
vimって評判よいんですね。
このまま使います。

tabを4個spaceにする設定も調べたいと思います。
>>974
vimrc

ヒントありがとう。

1007:デフォルトの名無しさん
17/01/07 13:08:30.66 nH9ciZhQ.net
vi利用者多いな

1008:デフォルトの名無しさん
17/01/07 13:09:20.74 72YrLFZp.net
vimとか玄人意識高い系しか使わんだろ

1009:デフォルトの名無しさん
17/01/07 13:16:31.53 ek0FkprX.net
せやな
補完機能ない状態でコーディングなんて非効率すぎてむり

1010:デフォルトの名無しさん
17/01/07 13:21:45.81 gdmcm9JP.net
ブラタッチ出来ない人の方が補間好む気がする

1011:デフォルトの名無しさん
17/01/07 13:44:03.11 2zeXFPoa.net
Pythonはvimだな
カーソルの大移動やインデントの修正が多いし

1012:デフォルトの名無しさん
17/01/07 13:57:36.11 EceZQ54D.net
え、Vimで補完使ってないやついるの?
それは凄い

1013:デフォルトの名無しさん
17/01/07 14:03:16.58 72YrLFZp.net
escキー酷使厨のスレ

1014:デフォルトの名無しさん
17/01/07 15:24:22.77 u7goZcpY.net
え、escキー使ってるやついるの?
それは凄い

1015:デフォルトの名無しさん
17/01/07 15:33:50.17 72YrLFZp.net
えっ

1016:デフォルトの名無しさん
17/01/07 15:47:37.33 Us0KDCcD.net
ふつうは Ctrl-[ をつかうし、真ん中あたりに適当にリマップしてる連中もいる。

1017:デフォルトの名無しさん
17/01/07 15:49:33.43 72YrLFZp.net
(´・ω・`)

1018:デフォルトの名無しさん
17/01/07 16:48:12.49 4jt/Q9EM.net
viでESC多用する香具師は下手くそ

1019:デフォルトの名無しさん
17/01/07 17:10:10.49 72YrLFZp.net
そもそもvi使ってねぇし(´・ω・`)

1020:デフォルトの名無しさん
17/01/07 21:46:46.86 3J98lhrC.net
emacs使いだけど、Python だけはatom

1021:デフォルトの名無しさん
17/01/07 21:51:40.25 +s6ATkRJ.net
Vim使いだけど、PythonだけはPycharmだわ

1022:デフォルトの名無しさん
17/01/07 22:56:53.78 bDXT+9KP.net
ぼくPyscripter

1023:デフォルトの名無しさん
17/01/07 23:59:25.73 CmtQT3Mp.net
僕はsublime text

1024:デフォルトの名無しさん
17/01/08 00:44:51.93 1lmOFmsV.net
俺Visual Studio Code

1025:デフォルトの名無しさん
17/01/08 05:05:37.41 zSFIH0Za.net
vscode rubyだけはatom

1026:デフォルトの名無しさん
17/01/08 06:55:26.87 0mVP2hZ6.net
eric

1027:デフォルトの名無しさん
17/01/08 09:46:28.74 qkk6ZrX+.net
まかーばっかりかよここ.........

1028:デフォルトの名無しさん
17/01/08 10:15:10.96 X8VbXaXD.net
idleじゃダメなの?

1029:デフォルトの名無しさん
17/01/08 10:20:51.19 qkk6ZrX+.net
さすが意識高い系臭むんむんの言語だわ

1030:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


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