1 名前:デフォルトの名無しさん [2017/09/01(金) 16:44:47.30 ID:igIE9hK/.net] Pythonオフィシャルサイト www.python.org/ テンプレ等は2以降で ■前スレ Pythonのお勉強 Part53 mevius.2ch.net/test/read.cgi/tech/1494683284/
554 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:00:11.88 ID:iCgsmEIv.net] Pyscripter
555 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 10:41:49.55 ID:f6VgeCZI.net] >>542 viをデフォのまま使ってますが
556 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 11:57:27.69 ID:YrZlhbzz.net] >>544 使いこなしてない人も除く
557 名前:デフォルトの名無しさん [2017/11/18(土) 12:36:10.85 ID:FEn0Kapw.net] スクレイピングについて詳しくないのですが、https://pastebin.com/pw5MY5em このようなXPathがあった時に、tr[i](i は可変)/td[1]/aを指定する方法ってありますか?
558 名前:デフォルトの名無しさん [2017/11/18(土) 15:20:17.48 ID:CUoz+hOS.net] pastebin.com ← 嫌な予感しかしないドメインだよね。
559 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 15:42:14.45 ID:aPTF67yF.net] >>546 tr/td[1]/aでは駄目?
560 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 15:52:54.30 ID:6foiYhRZ.net] pastebin と言うと、3大コテハンの1人、ピラフ大王ですか?w
561 名前:デフォルトの名無しさん [2017/11/18(土) 16:22:07.83 ID:kkjtCBRp.net] >>547 えっ
562 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 17:33:25.03 ID:kJphPX1C.net] >>548 //tr/td[1]/aで出来ました Xpathって凄い楽ですね
563 名前:デフォルトの名無しさん [2017/11/18(土) 17:55:35.92 ID:RZqekwb+.net] >>499-500 有難うございます、。ディスクの空き容量が増えてPythonが軽快に動作するようになりました!
564 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 19:22:34.68 ID:K92jR5uJ.net] 以前はこんな誘導に引っかかるマヌケがいるかと思ってたが フェンリルってコテが似たような誘導でVPSを飛ばしたのを見てからは考え直した
565 名前:デフォルトの名無しさん [2017/11/18(土) 19:30:30.88 ID:pU7DmZxX.net] >>553 無知はマヌケじゃねえよ 無知をマヌケだと思っているお前がマヌケなんだ
566 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 21:08:51.65 ID:45hOY2mv.net] ムチムチはデブじゃねえよ ムチムチをデブだと思ってるお前がデブなんだ
567 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 21:19:47.69 ID:ScUjvH+z.net] いや自称ムチムチの単なるデブが多いってことだろ って何の話だ?
568 名前:デフォルトの名無しさん [2017/11/18(土) 21:51:04.20 ID:feVOO+Au.net] jupiter notebookについて、 noteの保存先や読込先を別ドライブからにしたいのですが、どのようにしたらよいでしょうか。 ご存知の方教えてください。
569 名前:デフォルトの名無しさん [2017/11/19(日) 12:27:46.83 ID:+ydD/daI.net] >cd 別ドライブ >cd 別ディレクトリ >jupyter notebook
570 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 12:28:56.23 ID:0sXGB0BG.net] jupyter notebook --generate-config 作成されたファイルを開くと、コメントアウトされた設定が並んでいます。内容を確認して、必要な設定を有効にしましょう。 設定を全て確認してはいませんが、とりあえず以下を設定しています。 # The port the notebook server will listen on. c.NotebookApp.port = 8080 # The directory to use for notebooks and kernels. c.NotebookApp.notebook_dir = u'/Path/to/notebooks/' ディレクトリ指定 同様に「c.NotebookApp.notebook_dir」という文字列を探す。これを指定することでいつも同じディレクトリで動かせる。 c.NotebookApp.notebook_dir = 'your/favorite/notebook/directory'
571 名前:デフォルトの名無しさん [2017/11/19(日) 12:47:37.04 ID:+ydD/daI.net] >>552-554 japanese.engadget.com/2016/04/15/rm-rf-qanda/
572 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 12:52:51.48 ID:wldwR+dE.net] エクセルのセルの内容をIEに貼り付けて次のセルへ移動させて繰り返していきたいのですが方法ありますか?
573 名前:デフォルトの名無しさん [2017/11/19(日) 14:58:02.79 ID:0maIvd8f.net] パイトンではできないと思うわよ。 多分、OLE使うのかな? dim youtsheet worksheet set yoursheet = activeworkbook.worksheet("your sheet") targetsell = yoursheet.cells(yourrow,yourcol) '以下略 : : 'move next cell targetsell = yoursheet.cells(yourrow+rowoffset,yourcol+coloffset)
574 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 15:00:37.95 ID:0sXGB0BG.net] 一旦、エクセルの内容全部読み込めばいいじゃん いちいち、ファイルにアクセスする必要ないだろ
575 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 15:36:04.87 ID:v+DVGmxm.net] csvかなんかにエクスポートしてpandasで読んでselenium使ってブラウザに貼り付ける
576 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 15:37:36.76 ID:imJRuJSF.net] オヌヌメのフレームワークは?
577 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 15:45:59.62 ID:Ay/cPvn9.net] kerasかな
578 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 16:59:25.79 ID:mK+V9r5i.net] pandas入ってるなら直接エクセル読めるんじゃないの?
579 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 17:28:27.90 ID:sxn02hI9.net] 例えば大きさ(4, 5)の配列xを6層×10層繰り返してy(4, 5, 6, 10)の配列が欲しい時、どんな演算するのがスマートですかね? y=((x*np.ones((6, 10, 1, 1))).transpose(2,3,0,1)) は流石にもっといい方法がありそうで……
580 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 18:22:24.67 ID:qmloQZM2.net] >>561 openpyxl
581 名前:デフォルトの名無しさん [2017/11/19(日) 19:04:14.07 ID:1/mWyqVE.net] >>560 お前も>>553 と同じマヌケだなあ
582 名前:遊園 mailto:age [2017/11/20(月) 15:45:22.22 ID:24SMIr3R.net] >>561 ココナラで依頼してた人?
583 名前:デフォルトの名無しさん [2017/11/20(月) 21:06:23.08 ID:2+FvKnlV.net] PerlもRubyも滅んでPythonだけ残る?
584 名前:デフォルトの名無しさん [2017/11/20(月) 22:45:31.79 ID:Pkea+7u9.net] ルビーは滅びんやろ 誰もユーザー居なくなっても一人でメンテしてそう
585 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 22:49:26.01 ID:ab2J4plE.net] RubyはRoR以外にキラーソフトがないしなぁ 個人的には好きだが初心者に勧めるならパイソになる
586 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 22:50:03.54 ID:ddq66K5a.net] Javaエンジニアから移行しようと思います 意見ください
587 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 22:51:51.93 ID:wSxKzlXT.net] 量子PCの時代がやってきたらパイソンだけになりそう
588 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 23:14:54.34 ID:eYR3zpI3.net] pythonって変数の見える範囲どうなってんの? 衝突したりしない?
589 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 23:36:25.15 ID:W/KAhSi0.net] pythonでも静的型チェックしたい haskellみたいに関数型っぽい記法がもっと欲しい
590 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 23:40:38.86 ID:GkhyFhEh.net] Ruby は、Vagrant, Chef もある 開発者は誰も、Vagrant の作者、 Mitchell Hashimoto (HashiCorp)を避けて通れない、と言われている
591 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 00:06:50.03 ID:kW07Lmzg.net] >>575 ディープラーニングブーム
592 名前:ェ去っても日本で定着するか様子見じゃん [] [ここ壊れてます]
593 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 00:08:50.31 ID:SOf041Mo.net] rktとansible派だからVagrantもChefもお呼びじゃない
594 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 01:11:16.92 ID:7GgteXiC.net] PoweShell Core ってどうかな。
595 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 02:03:59.37 ID:5aM0ZK9C.net] 避けては通れないって よく知らないけど、そいつデブなの?
596 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 02:42:05.14 ID:g6loEhY5.net] そうだよ死ねよ
597 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 11:22:38.88 ID:RYYlpLyl.net] 肥満大国はこれだから
598 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 20:57:54.72 ID:IlBdcuWw.net] >>577 他の言語とあまり変わらん ただブロックに対するスコープがないことと代入で変数を生成するためちょっとトリッキーに見える動作をすることがあるからこの辺りを見ておいた方がいい https://www.oreilly.co.jp/community/blog/2011/11/namespace-and-scope-in-python.html
599 名前:デフォルトの名無しさん [2017/11/21(火) 21:00:39.52 ID:aoTpu/Dr.net] >>575 僕達の見解としては、これからはアセンブラだと思うよ。
600 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 21:32:47.06 ID:I1FPMoBf.net] >>587 なぜですか?!
601 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 22:42:57.01 ID:D0Caxv/X.net] >>575 別に移行しなくてもいいんでない。共にやれば。
602 名前:デフォルトの名無しさん [2017/11/22(水) 16:17:07.47 ID:9hdU5G5U.net] pythonチュートリアル読んでるけど細かすぎねえかこれ
603 名前:デフォルトの名無しさん [2017/11/22(水) 16:38:05.76 ID:tp3rvCxZ.net] こまいかどうかはともかく 体系がなっとらん
604 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 17:50:18.07 ID:a2w0tA5i.net] ドキュメントは必要なところを読めばいいから、ある程度細かいことは歓迎だけどな。 プログラミング自体の初心者だと、たしかにわかりづらい部分はあるかもね。 プログラミング経験者からすると、Python独自の作法とか、 他言語との対照表みたいなのがあるといい。
605 名前:遊園 mailto:sage [2017/11/22(水) 18:08:23.92 ID:MeIRWi6F.net] 俺も欲しい。 できればC#と比べてくれると嬉しい。
606 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 22:00:33.41 ID:pEQ0GCud.net] けどそのチュートリアル大事やで。 読み終わったあと、さぁ何をしようってなるよ。
607 名前:遊園 mailto:sage [2017/11/22(水) 23:24:22.00 ID:MeIRWi6F.net] 就職かな?w エクセル操作に一票
608 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 23:50:34.03 ID:a2w0tA5i.net] >>594 そうだよね。 くだすれの方でネタになったargparseのチュートリアルも正直かなり細かいけど、 ああ、こんなことまで出来るんだぁ、から始まって、 結局その例をパクリながら、自作スクリプトを書き直ししたしなぁ。 チュートリアルは興味を持ってもらってなんぼというところもあるかも知れないけど、 とりあえずマネてみればそれなりに応用は利くようになると思うのが実感。
609 名前:デフォルトの名無しさん [2017/11/23(木) 01:32:49.79 ID:dN4AoUwX.net] 初歩的な質問ですいませんが誰か教えてください def calc(self, event): #押されたボタンのテキストを取得 char = event.widget['text'] #resetが押された場合 if char == 'reset': self.k = ['0'] #rが押された場合 elif char == 'r': self.k = ['0'] #+が押された場合 elif char == '+': x = x + 1 self.k = [str(x)]#今の値に+1する elif char == '-': x = x - 1 self.k = [str(x)] #今の値から-1する self.dp_var.set( ' '.join(self.k) ) というプログラムの現在ディスプレイに表示されてる値に+1をするという部分の作り方 で詰まってしまいました 誰かヒントだけでも教えてください・・・
610 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 05:48:11.38 ID:uF7hi9HH.net] >>597 どんな方法を使ったか知らないが普通 ディスプレイに表示されている値は出力されたものであり変更できない 一旦削除してまた別の数字を出力すれば
611 名前:デフォルトの名無しさん [2017/11/23(木) 08:55:51.04 ID:XBDj7YCq.net] >>591 素晴らしい体系を提案してくれ給え。
612 名前:デフォルトの名無しさん [2017/11/23(木) 10:45:32.24 ID:A/UsFlMH.net] event.widget.setlabel(str(self.k))
613 名前:デフォルトの名無しさん [2017/11/23(木) 10:57:35.66 ID:BHLx1drH.net] event.widget.configure(width=20, height=5, text=str(x), font=('Migu 1M', '24'), fg='red)
614 名前:デフォルトの名無しさん [2017/11/23(木) 13:35:00.16 ID:Gsw8xDzr.net] >598 80 60 85辺りかな?
615 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 17:54:37.84 ID:s5J6nT+y.net] fot i in [100, 100, 100]: print(i)
616 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 17:55:27.07 ID:OEoWdmlz.net] 2次元リストで要素はintとstrの混在,ファイルから読んで更新,ファイルに書き出すということをやってます。 1行ごとに読んでsplitで要素に分解して特定の列だけintに変換してlistに格納、書き出すときはint要素をstrに変換してjoinで結合, 1行ごとに書き込みという風にやってますがなんか無駄なような気がします。 2次元リストごと一括でread,writeする簡単な方法はありませんか?
617 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 18:31:53.82 ID:V6s4lnHY.net] A,B,C(改行) X,Y,Z(改行) CSV だと、列区切りにカンマ、行区切りに改行を使うから、 1行ずつしか読み書きできない 全部の行をまとめると、行区切りがなくなる。 A,B,CX,Y,Z
618 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 18:33:23.12 ID:aJsuycVV.net] Javaエンジニアです コード量少なく済むってまじですか?
619 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 18:43:26.69 ID:iOhHGSNn.net] まじ
620 名前:605 [2017/11/23(木) 18:50:50.08 ID:Gsw8xDzr.net] >>607 マジか!!
621 名前:デフォルトの名無しさん [2017/11/23(木) 19:00:56.02 ID:A7IWH6W8.net] >>605 全部一気に読みこむと改行て消えるんか?
622 名前:デフォルトの名無しさん [2017/11/23(木) 19:49:19.59 ID:DyM7pS8r.net] >>604 json, pickle, sqlite3好きなの選べ
623 名前:デフォルトの名無しさん [2017/11/23(木) 20:13:58.63 ID:EP8I35kw.net] ●●●宇宙の外側に何があるのか?●●● jbbs.livedoor.jp/bbs/read.cgi/stud ▲y/3729/1069922074/84-87 この掲示板(万▲有サロン)に優秀な書き▲込みをして、総額148万円の賞金をゲットしよう!(*^^)v jbbs.livedoor.jp/stu ▲dy/3729/ →リンクが不良なら、検▲索窓に入れる!
624 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 20:42:54.38 ID:V6s4lnHY.net] >>609 改行はあるかも知れないけど、 その改行をすべて拾っていかないと、1行ずつ処理できない
625 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 20:56:22.29 ID:haiMWBI7.net] pandas使えば一発で解決するな
626 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 21:11:52.18 ID:3u99Ww5l.net] >>604 とりあえずCSV処理するときにsplitだのstrtokだの使うな。大人しくcsvモジュール使え。 エスケープシーケンスどころか空セルにすら対応できなくなるから。
627 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 21:15:48.96 ID:AE4DGBUv.net] なんでわざわざライブラリあるのに自分で書こうと思うのか分からん
628 名前:デフォルトの名無しさん [2017/11/23(木) 21:24:21.79 ID:dN4AoUwX.net] 596です ありがとうございます
629 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 02:28:11.33 ID:4BpIkKm4.net] お前らよりも、ずっと神 https://www.youtube.com/user/sentdex/featured
630 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 02:28:27.65 ID:4BpIkKm4.net] お前らよりも、ずっと神 https://www.youtube.com/user/sentdex/featured
631 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 10:34:27.08 ID:W4G6A7kr.net] >>604 >>> csv_raw_data = """hoge,1,10,fuga apple,2,20,pine
632 名前:apple strawberry,3,30,mango""" >>> >>> print(csv_raw_data) hoge,1,10,fuga apple,2,20,pineapple strawberry,3,30,mango >>> >>> csv_data = [[int(col) if col.isdigit() else col for col in row.split(',')] for row in csv_raw_data.split('\n')] #数字の文字列はintに変換して2次元リスト化 >>> csv_data [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>> >>> [row[1] for row in csv_data] #2列目のデータ抜き出し [1, 2, 3] >>> >>> new_col_1 = [111,112,113] #2列目のNEWデータ >>> new_csv_data = [[new_col_1[row_idx] if col_idx==1 else col_data for col_idx, col_data in enumerate(row_data)] for row_idx, row_data in enumerate(csv_data)] >>> new_csv_data [['hoge', 111, 10, 'fuga'], ['apple', 112, 20, 'pineapple'], ['strawberry', 113, 30, 'mango']] >>> >>> new_csv_raw_data = '\n'.join([','.join([str(col) for col in row]) for row in new_csv_data]) #intはstrに変換して文字列化 >>> print(new_csv_raw_data) hoge,111,10,fuga apple,112,20,pineapple strawberry,113,30,mango >>> [] [ここ壊れてます]
633 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 11:33:00.39 ID:W4G6A7kr.net] >>610 がすすめるjsonは癖があるし、pickleはバイナリデータだからdumpしないと読めないし編集できないし sqlite3はしらんけども・・、csvのデータを扱うなら>>614 の言うようにcsvモジュール使うのがベストだと思う しかし、>>604 の質問を考察するに特殊なcsvを扱うわけではなく 自分で作った2次元リストの保存にcsvにするというだけなのだから>>619 でいいと思う(csvモジュール勉強するのめんどいじゃん) さらに>>619 は自由にカスタマイズ可能、例えば各列の先頭をそろえるためにスペースを入れるとかなんとか うーん、>>619 がベストアンサーであると確定してしまったね
634 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 11:38:11.01 ID:GsVE4oKd.net] strにカンマとタブとスペースと空文字と空白と改行が以下略
635 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 11:45:22.75 ID:GsVE4oKd.net] まず手で編集する気があるのかを訪ねるべきだった
636 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 11:51:38.02 ID:GsVE4oKd.net] 次に値域を尋ねるべきだった フォーマットについて話すのはそれからで良かった
637 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 12:38:53.37 ID:lepqzR4M.net] jsonそんなに癖あるかな
638 名前:デフォルトの名無しさん [2017/11/24(金) 12:42:09.24 ID:znYgKojB.net] (自分が)使えない事を世間では「クセがある」と言うんやで 覚えとき
639 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 12:46:05.01 ID:JwzuLRFp.net] csvモジュールの使い方覚えるのさえ面倒くさがる雑魚がpython、、、
640 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 13:33:05.64 ID:gyq0zbJn.net] 雑魚にも難しいことができるように言語は進歩してきた もっと雑魚の言い分に耳を傾けろおら
641 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 14:40:46.80 ID:W4G6A7kr.net] >>604 おいっ! すごい方法を思いついちまった、天才かもしれん 2次元リストをstr()で文字列化して、それをファイルに保存 データを復元するときは、exec("value_name " + "=" + "ファイルから読み込んだ文字列”) >>> data = [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>> >>> import re >>> save_data = re.sub(r'(\],)','],\n', str(data)) #ファイル直接見た時に見やすいように改行挿入 >>> print(save_data) [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>> >>> exec("value_name" + "=" + save_data) >>> print(value_name) [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>>
642 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 14:57:34.18 ID:W4G6A7kr.net] execよりevalの方がいいわ安全だし >>> value_name = eval(save_data) >>> print(value_name) [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>>
643 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 16:54:50.41 ID:gjW1rQ8R.net] どんな言語を使ってプログラムできても所詮俺たちはコピペ職人に過ぎない
644 名前:デフォルトの名無しさん [2017/11/24(金) 18:45:37.50 ID:FT0GxPR+.net] そう卑下するな コピペでも職人の域に逹してるなら大したもんだ
645 名前:603 mailto:sage [2017/11/24(金) 20:40:44.33 ID:SOBToF3l.net] たくさんレスありがとさんです pickleとかpandasとか知らなかったので大変勉強になりました。今回はファイルを直接編集する道も残しておきたかったのでcsvにしました。リードもライトもfor文がなくなってすっきりしましたw
646 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 21:23:09.23 ID:t572wEhv.net] Pythonは貴方にとって何? 1. 飯の種 2. 仕事の道具 3. 趣味のツール 4. 楽しいおもちゃ
647 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 21:35:38.52 ID:r4TUJvjC.net] 趣味のおもちゃ
648 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 21:53:56.64 ID:W4G6A7kr.net] >>632 csvモジュール使ってみたけどコレなかなか良いよ 数字の文字列を自動でintに変換してくれるようなことはしてくれないみたいだけど、なかなか良いよ >>> import csv >>> csv_data = [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>> >>> with open('csv_test.csv', 'w', newline='') as csvfile: s = csv.writer(csvfile, delimiter=',', quoting=csv.QUOTE_NONE) s.writerows(csv_data) >>> with open('csv_test.csv', newline='') as csvfile: s = csv.reader(csvfile, delimiter=',') read_csv_data = [[int(col) if col.isdigit() else col for col in row] for row in s] >>> read_csv_data [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>>
649 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 22:18:26.44 ID:W4G6A7kr.net] ちょっと待って、ちょっと待ってぇ、>>619 と比較してみようか >>> csv_data = [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>> >>> with open('csv_test.csv', 'w') as f: f.write('\n'.join([','.join([str(col) for col in row]) for row in csv_data])) 57 >>> with open('csv_test.csv') as f: read_csv_data = [[int(col) if col.isdigit() else col for col in row.split(',')] for row in f.read().split('\n')] >>> read_csv_data [['hoge', 1, 10, 'fuga'], ['apple', 2, 20, 'pineapple'], ['strawberry', 3, 30, 'mango']] >>> うーん、こっちもナウイよね
650 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 22:47:43.93 ID:dBxfSdVP.net] >>633 全部
651 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 22:50:17.62 ID:mPUfH2u/.net] 5. 敵 ってのはいないのか
652 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 01:20:28.23 ID:P57Umvv2.net] 研究道具
653 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 15:46:17.92 ID:unmm6CwQ.net] >>606 近寄るな 頭が悪くなる >>624 微妙に方言がある (方言は置いといても)CSVよりマシだと思う
654 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 15:48:10.37 ID:unmm6CwQ.net] >>633 Cのラッパー