1 名前:デフォルトの名無しさん [2019/07/24(水) 21:02:48.30 ID:d1IM+Tl+.net] 当スレに★Python以外のプログラミング言語での回答類を書くべからず★ ☆「Ruby では」「Rubyでは」をNGワード登録推奨 このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 ★Pythonのソースコードはそのまま5ちゃんにコピペするとインデントが崩れるので ↓等のてきとうなソースコード用うpろだに貼ってきてください。 ttp://ideone.com/ デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ttps://jupyter.org/try (旧try.jupyter.org)ちょっとめんどうそう ◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と 実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。 ◇Python公式サイト◇ www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/ 〇前スレ〇 くだすれPython(超初心者用) その43【Ruby禁止】 mevius.5ch.net/test/read.cgi/tech/1555397061/
862 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 10:43:50.47 ID:2k415C0d.net] >>845 参加するプロジェクトの規約次第
863 名前:デフォルトの名無しさん [2019/10/03(木) 10:57:22.26 ID:KXJlaU6i.net] reST か GAS式 https://tonari-it.com/gas-documentation-comment/
864 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 12:17:40.89 ID:9BVuc7cd.net] s = "ab-cd-ef-gh" pick = re.search(r"(ab-)(.*)(-)",s) pick[2]が"cd-ef"になるのはどうしてですか? どうして"cd"ではないの?
865 名前:デフォルトの名無しさん [2019/10/03(木) 12:19:40.74 ID:KXJlaU6i.net] デフォは最大一致を探す
866 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 12:30:02.80 ID:9BVuc7cd.net] あー「(-)1個あればいいんだからひとつもらうで」 ってことか。なるほろ
867 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 12:52:57.33 ID:Ni5XrvWW.net] >>841 今ってクラスB持ってる会社ってあるんかね うちは持ってたけど何年も前に返納されたw
868 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 14:04:58.69 ID:DwNgQhCD.net] >>851 うち持ってる 誰でも知ってる大企業
869 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 14:22:25.65 ID:4GYQfqj5.net] 殆どは何年か前に自主的に変換したんだよね。
870 名前:デフォルトの名無しさん [2019/10/03(木) 17:54:47.90 ID:sW73yJNw.net]
871 名前:プログラミングなんてやりたくねーよー なんの役に立つんだかさっぱりわかんねーよー [] [ここ壊れてます]
872 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 17:55:56.25 ID:wbZFe5vy.net] 誰に強要されてるんだw
873 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 18:16:18.64 ID:Vvozhugd.net] >>854 プログラムってゲームと同じだろ。 考えるな楽しむんだ。 好きなことをやれ。 嫌いなことをやる必要はない。 プログラムは無限の窓が開いている。
874 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 18:31:17.68 ID:QW/GUpCE.net] 直感を信じろ、自分を信じろ、好きを貫け、人を褒めろ、人の粗探ししてる暇があったら自分で何かやれ
875 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 22:01:40.39 ID:dkX5HVkN.net] >>854 業務支援に役立つぞ
876 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 22:59:46.57 ID:ArP3YJIm.net] matplotlib便利すぎワロタ
877 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 23:32:38.06 ID:aXeTL6Ha.net] >>854 言語の選択権あるだけマシだぞ
878 名前:デフォルトの名無しさん mailto:sage [2019/10/03(木) 23:53:39.72 ID:4GYQfqj5.net] >>854 学生さん? ゲームでも作ってみたら? ロボットでも良いけど。 小学生用の教材も沢山出始めてる
879 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 01:19:18.96 ID:z4d9bLlT.net] l =[1,2,3,4,5,6,7,8,9] のようなリストから l2=[2,6,7,9] みたいに、飛び飛びの要素だけスライスした新しいリストが作りたいんですが、どういうやり方がスマートでしょうか 本番のリストは要素数250で抜き出したい要素数は15個です
880 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 01:24:01.62 ID:z4d9bLlT.net] p=[2,6,7,9] l2=[j for i,j in enumerate(l1) if i in p] というのを考えたのですが、なんかバカっぽい気がします
881 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 01:26:46.69 ID:sQ4qD72o.net] 法則性がないものにアルゴリズムを求めるな
882 名前:デフォルトの名無しさん [2019/10/04(金) 01:34:08.01 ID:5l5U7bxj.net] >>863 そのコードだとl2=[3,7,8]にならない? t2に書かれたindexでlを抜き出してくるだからね それでいいなら、[l[i] for i in p]じゃないのかな。 そうじゃなくて、共通要素を抜き出したいんだったら大体そのコードみたいな感じになる
883 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 01:47:34.01 ID:z4d9bLlT.net] あ、失礼 l2 = [i for i in l1 if i in p]ですね なんかスライスにピックアップリストぶち込むみたいなやり方があるのかなーと思って質問しました そうかー、こういう感じでいいのか…
884 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 02:03:08.39 ID:kLahYNxr.net] あるリストから、別のリストにある要素だけ取り出したいということならsetを使う list(set(l) & set(l2)) 質問がとにかく分かりにくい
885 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 03:40:57.71 ID:z4d9bLlT.net] 実際にはurlみたいな文字列が250個入ったリストから、特定の15個だけ取り出すという作業をします で要素の位置はわかってるんだけど、文字列はわからない という状況です だからやっぱenumerate使うやつで合ってました 下手に数字で例えたからわけわからんことになってしまった。申し訳ない
886 名前:デフォルトの名無しさん [2019/10/04(金) 08:06:39.16 ID:yLLPeGBi.net] >>863 numpy import numpy as np l = np .array(l) p = np.array(p) l2 = l[p]
887 名前:デフォルトの名無しさん [2019/10/04(金) 09:58:06.30 ID:5l5U7bxj.net] >>868 それはenumerateいらないよ。 [l[i] for i in p]で十分なはず。
888 名前:デフォルトの名無しさん [2019/10/04(金) 10:32:03.56 ID:H4yAqlPM.net] 文字列が250個入ったリストの作り方を教えてください
889 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 12:13:19.50 ID:iTXt/277.net] 250回appendするだけだろ 何を教えるんだよ
890 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 12:14:47.94 ID:agtdeb40.net] ['aaa'] * 250とかないの???
891 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 12:18:44.97 ID:aEect36P.net] なぜ実行してみない。
892 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 12:28:52.23 ID:BEYT4ZYw.net] >>873 for st in range(1,251): print('URL_'+str(st)) # URL_1 # URL_2 # URL_250
893 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 14:02:36.12 ID:5NfK7twU.net] ["str" for _ in range(250)]
894 名前:デフォルトの名無しさん [2019/10/04(金) 15:36:48.48 ID:fSTucKVx.net] ラクできるモジュールといえば?
895 名前:デフォルトの名無しさん [2019/10/04(金) 16:38:18.25 ID:FW+Y/3wm.net] シートに手とか足とかつくツイスターゲームってあるけど あれの3D版みたいなのでロボットアームで強制的に動かされるのを pythonでコントロールしてみたい
896 名前:デフォルトの名無しさん [2019/10/04(金) 16:44:21.71 ID:FW+Y/3wm.net] >>862 >>> import pandas >>> s = pandas.Series([1,2,3,4,5,6,7,8,9]) >>> s[[2,6,7,9]] 2 3.0 6 7.0 7 8.0 9 NaN
897 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 16:44:24.14 ID:G8fXI2dQ.net] >>878 お前、変態が過ぎるぞ^^;
898 名前:デフォルトの名無しさん [2019/10/04(金) 16:52:56.14 ID:FW+Y/3wm.net] >>869 >>> np.array([1,2,3,4,5,6,7,8,9])[np.array([2,6,7,9])] IndexError: index 9 is out of bounds for axis 0 with size 9 >>> np.array([1,2,3,4,5,6,7,8,9])[np.array([2,6,7,0])] array([3, 7, 8, 1]) numpy で out of bounds 回避する方法知りたいな
899 名前:デフォルトの名無しさん [2019/10/04(金) 17:05:52.01 ID:7eAmLvDA.net] >>881 配列のインデックスは0から始まる 1つずれている
900 名前:デフォルトの名無しさん mailto:sage [2019/10/04(金) 17:13:26.64 ID:eAirWXm1.net] こんにちは PCで作業するときに使用するアプリケーションを まとめて起動するスクリプトを目的別に作りたいのですが 単純に起動だけすれば良いときはsubprocess.Popen('notepad')であってますか? subprocess.run('notepad')でも起動するのですがシェルでコードを実行すると プロセスの終了待ちみたいになってしまったので…
901 名前:デフォルトの名無しさん [2019/10/04(金) 18:55:53.45 ID:YCAxcrIK.net] subprocess.Popen(['notepad']) OSとか環境によっては shell=とか 他のオプションも必要
902 名前:デフォルトの名無しさん mailto:sage [2019/10/05(土) 17:40:17.42 ID:8eaxbCO5.net] プログラミング言語の最初には大抵print("Hello Work")なんてのが書いてますが、 PythonでAIのことを(ちょこっと)学ぼうとしたときの Hello Worldに相当する作るものってありますか?
903 名前:デフォルトの名無しさん mailto:sage [2019/10/05(土) 17:55:45.22 ID:rp30F/e7.net] >>884 ありがとうございます 配列で渡すこともできるんですね いやあ昨日質問した後アイコンを変えた方が見分けやすいと思って exe化を試みたら見事にハマってしまいやっとさっき成功しました…
904 名前:デフォルトの名無しさん mailto:sage [2019/10/05(土) 17:58:24.92 ID:RY9rLLlz.net] >>885 Word2Vecを使って どこだかの出してる新聞を解析した結果だったと思うファイルを教師にして 英文(聖書とかが無難じゃね?)を解析 2バイト文字は・・・がんばれ。
905 名前:デフォルトの名無しさん mailto:sage [2019/10/05(土) 19:10:14.03 ID:i7l1Y0em.net] >>885 ニューラルネットで論理演算 CNNでMNIST ランダムフォレストでタイタニック生存率 MCMCで最尤推定
906 名前:デフォルトの名無しさん mailto:sage [2019/10/05(土) 20:03:27.74 ID:N/JZn/pV.net] ハローワークには突っ込まない
907 名前:デフォルトの名無しさん mailto:sage [2019/10/05(土) 22:42:42.98 ID:e+zF3nvf.net] >>885 画像系ならmnist一択 それ以外は専門外だから知らぬ
908 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 03:07:49.70 ID:xEniyG0f.net] 入門書はまずiris取り上げることが多い気がする 簡単すぎてつまらんデータだけど、hello worldレベルっていうならそうだろうなって感じ
909 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 18:28:05.79 ID:vga0yYdh.net] irisをSVMとかで適当に分類してAI呼ばわりするのはもの凄ぇ違和感あるんですケド MLの入門ってなら分かりますケドネ
910 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 19:16:37.05 ID:qpx1VOF3.net] 俺、入りたての頃、研究室の教授に AIって難しそうなんですが、MLとどうちがうんですかー?って質問したら、 AI=MLって理解でいいぞ!逆も真で、ML=AIだ!って答えが返ってきたぞ。。。 >>892 は AIはMLより一段以上うえの何かだと思ってるんだろうけど その差はどこらへんがどのくらい? 具象化よろしく。
911 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 19:28:52.75 ID:Poa32tbw.net] https://pbs.twimg.com/media/DzFdrL4XQAAKsnr.jpg
912 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 19:41:32.53 ID:qpx1VOF3.net] >>894 イデーとマテリアみたいな関係ってことか
913 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 19:53:00.89 ID:vga0yYdh.net] >>893 うーむ、似て非なるものでアルと考えるネ MLが学術的な理論であるとするとAIは遊戯的な道楽ネ
914 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 20:00:03.33 ID:qpx1VOF3.net] >>896 つまり895的には、 ML→樹木 AI→果実(ただしウマいとは限らぬ) みたいな感じなのか?
915 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 21:03:39.11 ID:xEniyG0f.net] 自分はAIを実現するための技術の一つがMLだと思ってる >>895 これは笑うところだよ
916 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 21:16:19.61 ID:qpx1VOF3.net] >>898 (´ε`;)ウーン… 純粋情報工学系じゃないからか、 わらいのセンスがいまいちよーわからんわー
917 名前:デフォルトの名無しさん [2019/10/06(日) 22:06:11.34 ID:1GG5Tgde.net] ちょっと前までコンピュータ将棋の開発者はAIかと問われても違うと答えてたけど、今ではそれもAIの一種として捉えられてるからな 方法はともかく学習要素があればAIになるんじゃないの 学習要素ないのにAI謳ってるのもありそうだけど
918 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 22:06:45.19 ID:vga0yYdh.net] >>897 いぐさくとりぃ 例示上手ねキミ才能あるヨ
919 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 22:13:50.54 ID:vga0yYdh.net] >>900 この間唯のゲーム理論をAIだとドヤ顔で紹介してて草生え散らかしたネ ヒトが知能と解釈し得るか否かをAIの境界線上としているのだろうカ
920 名前:デフォルトの名無しさん [2019/10/06(日) 22:21:23.38 ID:+SSpDwaf.net] AIの定義なんぞないから言ったもん勝ちだろな
921 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 23:01:04.91 ID:qpx1VOF3.net] >>901 %E6%88%91%E5%BE%88%E8%8D%A3%E5%B9%B8%E5%BE%97%E5%88%B0%E6%82%A8%E7%9A%84%E7%A7%B0%E8%B5%9E ・・・文字化けするかな? ↓ならどうかな \u6211\u5f88\u8363\u5e78\u5f97\u5230\u60a8\u7684\u79f0\u8d5e
922 名前:デフォルトの名無しさん mailto:sage [2019/10/06(日) 23:08:56.33 ID:qpx1VOF3.net] >>900 でぃーぷらーにんぐは人工知能的に第三世代の代表格らしいな MLの各種手法は第二世代 >>903 統一見解はまだないの? なんか うすもんやりとしたものは かたまりつつあるんでないの? 寒天ゼリーくらいの強度かもしらんが。
923 名前:デフォルトの名無しさん mailto:sage [2019/10/07(月) 19:14:20.38 ID:CZdmuB5H.net] test変数に、exec等を使って文字列を追加しようと思った場合どうしたら良いですか? test変数に宣言自体はexecの外で行いたいです 以下のようにすると、空白の文字列がprintされます。 test = "" exec('test += "test"') print(test)
924 名前:デフォルトの名無しさん mailto:sage [2019/10/07(月) 21:38:31.21 ID:aWHtMKCu.net] exec(f'test+={test}')
925 名前:デフォルトの名無しさん mailto:sage [2019/10/07(月) 22:44:00.71 ID:CZdmuB5H.net] >>907 ありがとうございます
926 名前:デフォルトの名無しさん mailto:sage [2019/10/07(月) 23:19:37.27 ID:WyRvg0cv.net] >>899 AIブームへの皮肉だよ 程度の低いものまでAIだともてはやされているので、研究者はAIって言葉を積極的に使おうとしなくなっている pythonでまともに実装されてるものはまともな機械学習だろうけど、パワポで甘い言葉で囁いてくるようなのは紛いもんのAIなんじゃないかなって言うネタです
927 名前:デフォルトの名無しさん mailto:sage [2019/10/08(火) 17:10:51.26 ID:uaD7+k1O.net] 学習機能がないものはAI と呼ぶべきではないだろう。 学習と、実行が分かれていても全体ではAI だから何の問題もない。 そういう意味では、電気釜が学習データーを利用して飯を炊いててもAIを使ってると言っても良いかもしれないが。
928 名前:デフォルトの名無しさん mailto:sage [2019/10/08(火) 21:15:04.64 ID:Y05mWx0F.net] この板だけがエンティティ不可なのか いつのまにか5ch全体でできなくなったのか・・・ >>904 Wo hen rongxing dedao nin de chengzan! >>901
929 名前:デフォルトの名無しさん mailto:sage [2019/10/08(火) 21:16:29.78 ID:Y05mWx0F.net] >>909 解説ありがとう >>910 >学習と、実行が分かれていても全体ではAI → 電気釜もAI搭載 なるほど! そういえば、そうだな > AI家電は学習結果なデータだけ使ってる
930 名前:デフォルトの名無しさん [2019/10/08(火) 23:28:58.44 ID:evevkQtI.net] どうみてもアスペな家電です ほんとうにありがとうございました
931 名前:デフォルトの名無しさん [2019/10/08(火) 23:33:19.89 ID:txbzJQbY.net] アステカ神殿!?
932 名前:デフォルトの名無しさん mailto:sage [2019/10/08(火) 23:40:25.80 ID:4CpPhkv4.net] とたんに皇后しくなったなw
933 名前:デフォルトの名無しさん mailto:sage [2019/10/09(水) 13:19:11.41 ID:vBNS6dZR.net] 複数のリストをそれぞれsetに変換したいときって、どうするのが一番シンプルですか? lists=[lis1,lis2...]にmap(set(),lists)みたいなのができないかなと思ったのですがうまく行きません(set化されない)
934 名前:デフォルトの名無しさん [2019/10/09(水) 13:36:18.22 ID:sFmCi5mO.net] map(set, lists)
935 名前:デフォルトの名無しさん mailto:sage [2019/10/09(水) 13:40:39.44 ID:wmrCsqX1.net] mapの第一引数で関数自体を要求されてるのに関数を実行した結果を渡しちゃだめよ
936 名前:デフォルトの名無しさん mailto:sage [2019/10/09(水) 13:48:04.87 ID:e2ybTrrh.net] おぉ? funcの引数部分は書かないのか これmapのfuncに引数はとれないということですか?
937 名前:デフォルトの名無しさん [2019/10/09(水) 14:05:42.28 ID:D6A8dkqU.net] 関数の戻り値ではなく関数そのものを渡すから (関数もオブジェクト)
938 名前:デフォルトの名無しさん [2019/10/09(水) 14:09:08.84 ID:D6A8dkqU.net] mapのfuncに引数をとりたければ「引数を埋めた関数を呼ぶ関数」を渡すことになる f(x,y)があり、map(f(•,2), list)がほしければ、 from functools import partial map(partial(f,y=2),list)
939 名前:デフォルトの名無しさん mailto:sage [2019/10/09(水) 14:22:06.15 ID:e2ybTrrh.net] なるほど…勉強になりました
940 名前:デフォルトの名無しさん [2019/10/09(水) 15:20:00.54 ID:gEtou4VA.net] インポしなきゃいけないの?ラムダでなんとかならない?
941 名前:デフォルトの名無しさん [2019/10/09(水) 17:56:11.45 ID:D6A8dkqU.net] map(lambda x:f(x,2),list)
942 名前:デフォルトの名無しさん [2019/10/09(水) 19:02:19.94 ID:fJHQLW8A.net] setどこ行った
943 名前:デフォルトの名無しさん [2019/10/09(水) 20:24:52.94 ID:Rl3dhliI.net] 呼び出し方の話でしょ
944 名前:デフォルトの名無しさん mailto:sage [2019/10/09(水) 20:54:23.73 ID:ZvOECUeE.net] partialよりlambdaでカリー化のがわかりやすい気がする。
945 名前:デフォルトの名無しさん mailto:sage [2019/10/11(金) 13:19:03.75 ID:A16fclQB.net] df
946 名前:.loc[bool_mask,[col_1,col_2...]]=[[1,2,3..],[2,4,6..]] 複数選択複数代入がやりたいんですが、やっぱループするしかないでしょうか? [] [ここ壊れてます]
947 名前:デフォルトの名無しさん mailto:sage [2019/10/11(金) 19:09:58.82 ID:3P56+Sdr.net] 普通にできた https://ideone.com/2zlBrx
948 名前:デフォルトの名無しさん mailto:sage [2019/10/11(金) 21:37:52.14 ID:A16fclQB.net] おお…更新用リストの転地の問題でした もうしわけない
949 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 13:59:00.08 ID:TumfHtO6.net] rangeの返り値ってlist型とちゃうの?
950 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 14:17:34.91 ID:D2+OyZ4Y.net] range()の帰り値はシーケンス型のrange型である つまりrange()はrange型である
951 名前:デフォルトの名無しさん [2019/10/13(Sun) 14:24:28 ID:llG9wcVh.net] >>931 python3ではそう range型のジェネレータが返る いちいちlistでメモリに展開するのが非効率だから
952 名前: mailto:sage [2019/10/13(Sun) 15:30:57 ID:TumfHtO6.net] ジェネレータっぽいオブジェクトがかえってくるんすね サンクス
953 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 17:10:11.96 ID:T+KUU83v.net] python(a.py)から別のpython(b.py)を実行したんですが、どうもb.pyの処理が実行されていないようです a.pyとb.pyは同一ディレクトリに置いています a.py ---------- import subprocess #サブプロセス python_file1 = 'b.py' print("a") result = subprocess.check_call(['python', python_file1]) print("c") print(result) b.py ---------- print("b") a.py実行 ------- a c 0 なぜb.pyの処理がされないのでしょうか?
954 名前: mailto:sage [2019/10/13(Sun) 17:21:11 ID:I8cQof7f.net] 正常に実行されたように見えるが
955 名前: mailto:sage [2019/10/13(Sun) 17:27:27 ID:D2+OyZ4Y.net] 我々の知るよしのない異空間にbが出力されている
956 名前: mailto:sage [2019/10/13(Sun) 17:37:40 ID:T+KUU83v.net] ありがとうございます サブルーチン(サブスレッド?)上で実行されているという事ですね a b c 0 というのが期待している動作なのですが メインルーチン上でやりたい場合には何を使えばいいのでしょうか…?
957 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 19:45:05.89 ID:9lWPklM4.net] def b():を作ってメインルーチンで呼び出す
958 名前: mailto:sage [2019/10/13(Sun) 20:06:07 ID:QvtX88Gt.net] >>938 やってみた うちの環境では期待通りの出力が得られたんだけど何だろね windows10 python3.5.2 windows10上のVMWareで動いてるcentos7 python3.6.8 wsl python3.6.8 cygwin python3.6..8 すべてOKだった a b c 0
959 名前: mailto:sage [2019/10/13(Sun) 20:11:32 ID:TKS/8hxH.net] >>940なにそれきもい >>935 「パイプ」を使って吸ったり吐いたりするといいんでないかいの
960 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 21:08:33.73 ID:37E24O6c.net] 同じく期待通りに動いたぞ Fedora 30 $python3 -V Python 3.7.4
961 名前:デフォルトの名無しさん [2019/10/13(日) 21:31:33.70 ID:oUSkq72n.net] IDLEだと表示されないね 端末からIDLEを起動すると、b.py の出力が端末に出ているのが見える https://i.imgur.com/g7xdagL.png あと端末上で a.py を実行すると全部画面に出るけど、リダイレクトとかするとずれる % ./a.py a b c 0 % % ./a.py | cat b a c 0 %
962 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 21:49:00.46 ID:mUvVkZQa.net] 普通に関数にして呼び出したらよくね? てか例だとサブプロセスにする意味が分からないんだけど その順に処理したいなら関数呼ぶべきだろjk
963 名前: mailto:sage [2019/10/13(Sun) 21:54:47 ID:kaSZg9r2.net] >>944 同じこと思ったw 関数にするまでもなく a.py を print("a") import b print("c") と書けばいいんじゃなかろうか
964 名前: mailto:sage [2019/10/13(Sun) 22:01:03 ID:2cfG7zlA.net] なんか計り知れない思惑でもあるんちゃうか
965 名前: mailto:sage [2019/10/13(Sun) 22:13:04 ID:D2+OyZ4Y.net] 特に深い意味はなく最近知ったsubprocessを試してみたかっただけだろ
966 名前:う [] [ここ壊れてます]
967 名前: mailto:sage [2019/10/13(Sun) 22:29:53 ID:T+KUU83v.net] 皆様ありがとうございます >>945様の通りにしたら普通にいけました 用途的にもどう考えてもsubprocessでやるべきではなかったです ありがとうございました
968 名前:デフォルトの名無しさん mailto:sage [2019/10/13(日) 22:52:27.29 ID:QvtX88Gt.net] >>943 print('a', flush=True) にしたらリダイレクトしても期待通りの順番になった
969 名前:デフォルトの名無しさん [2019/10/14(Mon) 07:57:39 ID:mfuSBJ/S.net] 兄さん、catもバッファリングあるで。
970 名前: mailto:sage [2019/10/14(Mon) 12:19:48 ID:MWArLfdG.net] 最近のGNUのcatはバファリングしないみたいだよ -uオプション(バファリングを無効にする)は残ってるけど無視される macとかは知らん
971 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 00:14:25.01 ID:Bai05OKm.net] VSCodeでpython書いてます フォーマッタにautopep8を入れてます 関数宣言などの上に2行空白行を入れてくるのをやめさせたいのですが 何を設定すれば良いでしょうか 例として、 # say hello def say_hello(): print("hello.") これをフォーマットすると # say hello def say_hello(): print("hello.") となってしまいます 宣言と、その上のコメント行との間には改行を挟みたくありません
972 名前:デフォルトの名無しさん [2019/10/15(Tue) 00:26:09 ID:Uk3+p6qz.net] def say_hello(): '''say hello''' print("hello.")
973 名前: mailto:sage [2019/10/15(Tue) 00:28:00 ID:6JoAHvL2.net] >>952 関数に対するコメントはdefの下にdocstringで書く まずはPEP8を一読して
974 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 01:00:53.51 ID:Bai05OKm.net] >>953-954 ありがとうございます ドキュメントストリング(トリプルクォート)の件はちらっと調べたりはしてました 後出してすみませんが、blender用のpyファイルをVSCodeで書いており 既存の公式アドオンファイルなどの中身を見ると だいたいが951の通り、宣言文の上に行コメントが入っている感じなので それに合わせたいのです(ならautopep8使うなよってツッコミはご遠慮ください) 例えばimport文の記述位置の修正(ファイルの先頭に持っていかれる)を無視する為に --ignore=E402 を指定しています このように特定コードを指定することで改行の件も無視できないかなと思ったのですが autopep8 宣言前 改行 などでググっても思うように情報が出てきません
975 名前:デフォルトの名無しさん [2019/10/15(Tue) 01:07:21 ID:Uk3+p6qz.net] blenderのサンプルのことは忘れろω あれは糞だωωω (blenderが糞とは言ってない)
976 名前: mailto:sage [2019/10/15(Tue) 01:17:19 ID:6JoAHvL2.net] >>955 俺ならautopepをやめるw uncrustifyでpep8用持ってきて自分好みの設定をした方が早そう
977 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 01:23:54.81 ID:NeqDSxDF.net] flake8でチェックして、必要に応じて自分で修正してるわ 勝手に変更されるのが嫌なので
978 名前: mailto:sage [2019/10/15(Tue) 01:38:14 ID:72mqelru.net] 保存時フォーマット+手動フォーマット派だな 理由はこういう時こまるから 道具に遊ばれてるのほどばかばかしいこともない
979 名前: mailto:sage [2019/10/15(Tue) 11:35:47 ID:ntxaWRsX.net] PEP8に従えないならpythonを辞めた方がいい 君には宗教は向いてない もっと別の言語を探すべきだ
980 名前: mailto:sage [2019/10/15(Tue) 12:06:17 ID:YTs2ZIZB.net] PEP8順守しないと 同じことするコードは 誰でも同じようなコードになり読みやすい(はず) といううりにしているメリットが壊れる
981 名前:デフォルトの名無しさん [2019/10/15(Tue) 12:28:19 ID:/7eSP3bX.net] 「Pythonで書くと同じことするコードは誰でも同じようなコードになり読みやすい」 このカンバンは嘘だった! 特定のコーディングルールを守れば、という条件を付けるのであればどんな言語でも同じじゃんwww
982 名前: mailto:sage [2019/10/15(Tue) 12:33:26 ID:PCFM8zGG.net] キ
983 名前:bズは自殺してろ [] [ここ壊れてます]
984 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 12:45:38.61 ID:iZY+JTOL.net] dストの位置でコードの読みやすさなんてノミのクソほどしか変わらんだろ甘えるな
985 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 12:57:41.28 ID:LXkkA+L3.net] >>962 python のコーディング規約がPEP なんだからか守るべきだよ。
986 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 13:04:44.56 ID:LXkkA+L3.net] 3.8 がリリースされたな。 :=というオペレータが導入され、<変数> := <式>の形で変数への代入を式に埋め込むことができます。この表記をnamed expression(名前付き式)と呼ぶようです。 例 length = len(s) if length > 3: print(length) else: print('too short') これは これはこのように書けます。 if (length := len(s)) > 3: print(length) else: print('too short') 余談 := はセイウチ演算子 walrus operator と言うらしいな。両目と牙の形に似てるからだと
987 名前:デフォルトの名無しさん [2019/10/15(火) 14:24:13.16 ID:nuB7xRPW.net] じゃあせめて :3= くらいやってくれないと。
988 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 14:43:12.22 ID:iJLx9DXs.net] それじゃあエルビスにひげがついたようなもんだろ
989 名前: mailto:sage [2019/10/15(Tue) 15:08:50 ID:ntxaWRsX.net] パスカル代入子でいいんじゃねえの
990 名前: mailto:sage [2019/10/15(Tue) 15:42:32 ID:4VeqxDxA.net] >>967 バカボンのパパ演算子
991 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 15:45:01.35 ID:PY4hsy3Z.net] :)
992 名前: mailto:sage [2019/10/15(Tue) 15:50:21 ID:7esu9lml.net] execとevalの違いが良くわからないんですが、どっちが優秀なんですか?
993 名前: mailto:sage [2019/10/15(Tue) 15:58:02 ID:ntxaWRsX.net] ttps://sicp.comp.nus.edu.sg/chapters/img_javascript/sicp.png このオサンが持ってる通り
994 名前:デフォルトの名無しさん [2019/10/15(火) 16:02:48.63 ID:cAxXsgrc.net] そんなにevalなよ 弱くなるぞ
995 名前:デフォルトの名無しさん [2019/10/15(Tue) 19:40:19 ID:UuW7b2Cm.net] blender の python バージョン上がらんかな ソースからビルドすれば好きなバージョンに出来るらしいが まんどくせ
996 名前: mailto:sage [2019/10/15(Tue) 21:27:29 ID:Bai05OKm.net] >>956-959 とりあえずignore設定で対処してしまいました 今後他にも煩わしい点が出てきて面倒になったらautopepは辞めて他の手段を探します uncrustifyはメモっておきます ありがとうございました
997 名前: mailto:sage [2019/10/15(Tue) 23:13:36 ID:h8wIShZn.net] そこまでして間違ってる方のテンプレに合わせないと気が済まないとか病気だろ なんとか障害ってやつ
998 名前:デフォルトの名無しさん mailto:sage [2019/10/15(火) 23:57:18.52 ID:LXkkA+L3.net] >>976 そこまでしてblender のコメント方式に合わせる必要性があるの? Python の関数のコメントなら docstring を使うべきだろ。 help(関数名) でdocstring が出るし、Vscode でもサポートしてるし(autoDocstring)。 https://qiita.com/firedfly/items/00c34018581c6cec9b84
999 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 03:15:06.56 ID:Ia5ZcaaY.net] 他の言語ではスクリプトの上の部分にforなど使って処理を書いていました。 そして、下の方にサブルーチンを大量に作ってそこから適宜読み出していました。 このようにすると、上部を修正するだけでスクリプトが簡単に編集できるためです Pythonだとサブルーチンを上部に書くとエラーが出ますが毎回ホイールで下に移動して書き直すのは不便ではないでしょうか? 慣れれば普通ですか? また、Pythonではインデントに空白を使う人が多いようですが、 エディタの設定で改善されるかもしれませんが、うっかりDelやBackSpaceで消すとイ ンデントがずれたりして嫌なのですが慣れますか?
1000 名前: mailto:sage [2019/10/16(Wed) 06:59:57 ID:r4KKfSye.net] 別にpythonに限らずネストの深さでインデント揃える癖ついてたから気にならなかったわ 可読性的にも癖つけた方がいんでない?むしろ今までどうしてたのか気になる
1001 名前:デフォルトの名無しさん [2019/10/16(水) 07:17:18.25 ID:n7nWPnDS.net] python 3.8.0 で import win32clipboard を実行しても、以下のようなエラーが出る。 ImportError: DLL load failed while importing win32clipboard: 指定されたモジュールが見つかりません。 python 3.8系はしばらくインストールしないほうがいいカモ。
1002 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 08:59:50.72 ID:Mi1dGaVf.net] >>979 > Pythonだとサブルーチンを上部に書くとエラーが出ますが def で宣言する関数の事を言ってるんだよね? エラーなんて出ないけど。 関数呼び出しを先に書くとと言う話? インデントについてはIDE で面倒みてくれるだろ。何を使ってる? 下の方に関数呼び出しがあっても何ら不都合はないよ。
1003 名前: mailto:sage [2019/10/16(Wed) 10:15:15 ID:dCHq3Ix4.net] >>979 WindowsならCtrl+F MacならCommand+Fで 検索ウインドウが出るから いちいちホイールコロコロしなくても 行きたいサブルーチン名さえわかってれば 一気に移動できる >インデントに空白 どーしても宗教的理由とかでお嫌なら タブで統一してもいい。 ただし、 どーしても長い行を分割して書かざるを得ない場合の 後半行のインデントにも 空白ではなく、タブを使うことになる。
1004 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:17:42.14 ID:dCHq3Ix4.net] くだすれPython(超初心者用) その45【Ruby禁止】 mevius.5ch.net/test/read.cgi/tech/1571188632/
1005 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 10:27:55.66 ID:kX3OMluf.net] いちいちスクロールして使ってるな〜 今ちゃんと動いてるから触りたくないけど関数だけ別ファイルに分けれるんだよね?
1006 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:28:50.95 ID:dCHq3Ix4.net] >>985 >関数だけ別ファイルに分けれるんだよね? Yes
1007 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 10:39:45.65 ID:pCAY8ipP.net] 関数へのジャンプだってIDEが面倒見てくれるだろ ジャンプどころかその場に表示だってできる
1008 名前:デフォルトの名無しさん mailto:age [2019/10/16(水) 10:43:28.41 ID:dCHq3Ix4.net] IDEが嫌いだったり、宗教上の理由で使えないだったり PCのスペックが糞でうごかなかったり するひとだって いるんですよー!
1009 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 10:53:52.75 ID:pCAY8ipP.net] IDEの導入ってそんなにハードル高いんか そいつは知らなんだわ
1010 名前: mailto:sage [2019/10/16(Wed) 11:29:28 ID:1/rjcmpT.net] IDEを使わないってどっちかと言うと宗教だろ。 プログラミングの効率がかなり違って来る。 どうしても複雑なIDEを使いたくなければ Sublime などのエディターでもかなりやってくれるけど。 そもそも今までプログラミングはどうしてたんだよ。 テキストエディタのみ? IDEを使わないと、コード補完とかやってくれないから入力効率がかなり悪くなる。 ミスも多くなる。
1011 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 11:38:20.65 ID:RHZrzUKd.net] え?ノミみたいな視野の見識してるね IDEじゃないと補完できないだって 傑作すぎてジョークと区別がつかないわ 1990年くらいから書き込んでるんだろうかね
1012 名前:デフォルトの名無しさん [2019/10/16(水) 12:48:15.93 ID:dmmazo8P.net] E.S.P.だが 上の方でサブルーチンがーとか言ってるVBerは ソースの上からグローバルな場所にコード書き始めてるんだろ hoge.py -------- コード コード 関数 関数 -------- どうみても馬鹿だが どうしてもこんな書き方を望むなら main関数とか作って hoge.py -------- def main(): コード コード 関数 関数 main() -------- って書いとけばいい
1013 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 12:54:49.05 ID:1/rjcmpT.net] >>991 IDE以外のなにができるって? 例えば? IDE例えば Jupytor Notebook の例 1) import numpy as np np.su で subtruct とsum が選択できる? np.sum() でこんなの出る? できなくても構わないが Signature: np.sum( ['a', 'axis=None', 'dtype=None', 'out=None', 'keepdims=<no value>', 'initial=<no value>'], 2) pr でprint選択できる? print() でこんなの出る? できなくても構わないが Docstring: print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments:
1014 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 14:36:40.14 ID:bcBxjAM2.net] エディタでもIDEでも関数を別ファイルに書いて 二つのウインドウで表示しながらプログラミングすれば いいんじゃないの? 太古の昔からみんなそうやっているけど。 もちろん三つ以上のウインドウを開けてもかまわない。
1015 名前:980 [2019/10/16(水) 15:22:00.21 ID:6vD3SXWz.net] C:\Windows\System32にdllをコピーして暫定対応できるようです。 以下issueの既知の不具合かも。 https://github.com/mhammond/pywin32/issues/1406
1016 名前:デフォルトの名無しさん [2019/10/16(水) 15:36:59.61 ID:3Ceb6FWi.net] >>993 IDEじゃないJupyter Notebookでもそのぐらい出来るぞ、と思ってスクリーンショットを撮ってたところだったんだが、 Jupyter NotebookはIDEでこういうことが出来るという主張かな。 でも、Jupyter NotebookはあんまりIDEって言わなくないか?
1017 名前: mailto:age [2019/10/16(Wed) 16:54:17 ID:dCHq3Ix4.net] >>989 HDDの空き容量の時点でね もうね >>990 >今までプログラミングはどうしてたんだよ。 テキストエディタのみ? Yes!(゚Д゚)
1018 名前: mailto:sage [2019/10/16(Wed) 17:06:12 ID:kX3OMluf.net] 関数探すの面倒でメモ帳に保存してそっちで編集してコピペでVSCodeに貼ってたけどちゃんとした使い方調べた方がいいな
1019 名前: mailto:sage [2019/10/16(Wed) 17:13:58 ID:lWzU93N+.net] vim, emacs だとhotelのwindowsでも走るようにUSBメモリーに開発環境入っちゃう なんてこともできたりはする
1020 名前:デフォルトの名無しさん mailto:sage [2019/10/16(水) 17:25:14.05 ID:bKQy1ZjZ.net] >>996 Notebook は、完全なIDE では無いがIDEの最低限は持ってる。(コード補完) Notebook とnbextentions が使えれば、iPhone でも同じことができるし。 長々としたものは閉じたり、開いたりできるし。 Jupytor からはVS Code も起動できるし、まあ手頃でいいんじゃない? 大規模なプログラム開発には無理だが、練習用としては使いやすいのでは? そもそもの話の発端は、インデントが面倒とか、スクロールが面倒とかと言う話だったから、この程度で十分では。 >>997 テキストエディタだけでどんな言語をやってたの?
1021 名前: mailto:sage [2019/10/16(Wed) 17:27:32 ID:9ut2IWOv.net] >>997 HDDの容量は? VScode本体で230Mぐらいだよ。(mac用) Pycharmだと610Mほどあるけど。
1022 名前:1001 [Over 1000 Thread .net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 83日 20時間 24分 44秒
1023 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています