1 名前:デフォルトの名無しさん mailto:sageteoff [2016/06/22(水) 13:29:27.28 ID:tv9kEjc6.net] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。 騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。 次スレは >>985 辺りで 前スレ くだすれPython(超初心者用) その29 echo.2ch.net/test/read.cgi/tech/1455766402/ 関連スレ Pythonのお勉強 Part51 peace.2ch.net/test/read.cgi/tech/1443700103/ ◆関連リンク Python の Home Page ttp://www.python.org/ ◆長いコードはこういうところにはってください ttp://ideone.com/ ttp://codepad.org/ ttp://pastebin.com/ ttp://dpaste.com/ ◆まとめwiki ttp://python.rdy.jp/
132 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 18:49:40.94 ID:UZfdN1Kz.net] botのかたですか?
133 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 18:50:37.60 ID:sfY4+Etf.net] その可能性は否定できないね
134 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 18:57:38.96 ID:jUc7m6Z9.net] 馬鹿め。 ありますか?って聞かれたら、 ありますよって答えとけばいいんだよ。
135 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 19:03:20.94 ID:UZfdN1Kz.net] 最近のbotは人間のくず波にはなってんだ 感心うえ
136 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 20:50:27.18 ID:7nXY7PCy.net] 感心するより自分の文章力心配した方がいい
137 名前:デフォルトの名無しさん [2016/07/02(土) 21:25:41.39 ID:A9cM4Ou4.net] ID:UZfdN1Kzもボットだしそのくらいは大目に見ろよ 見ての通り人間のくず並みだろ?
138 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 23:11:36.78 ID:aN0Jneaj.net] ウェブ上にある記事をそのままローカル環境に保存したいです。 しかし、以下の書き方だと回線を切ったときにレイアウトが崩れてしまいます。 htmlの拡張子だと、cssやjavascriptまで取得できていないことが原因だと考えています。 何かいいライブラリや解決策はありますか?それとも、不可能ではないけれど、コーディングにスキルがいるのでしょうか? よろしくお願いします。 from urllib.request import urlopen from urllib.request import urlretrieve url = "news.livedoor.com/article/detail/11714603/" urlretrieve(url, "test.html")
139 名前:デフォルトの名無しさん [2016/07/02(土) 23:13:20.33 ID:fxvfEqqa.net] Linuxのcurlコマンドじゃ無理なん?
140 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 00:35:55.56 ID:BbdX03Na.net] HTMLに書いてある、CSS・JSファイルのパスが問題なのかな? サーバー上のHTMLから、同じサーバー上のCSS・JSファイルを取得するなら、 相対パスで指定しているとか? でも、君のPC上のHTMLからなら、相対パスなら君のPCを指すから、 CSS・JSファイルも、ダウンロードする必要がある。 相手サーバーの絶対パスに変えれば、ダウンロードしなくても動くかも HTMLをダウンロードしても、普通は動かない。 制作者が、HTMLをダウンロードして動くようには作っていないから。 だから普通は、画像などのコンテンツだけをダウンロードする ブラウザで、F12を押して、開発者ツールを使って、デバッグすれば? HTMLがサーバー上・君のPC上にある際、読み込まれるファイルがどう違うか確かめる そもそも、他人の作ったアプリを解析するのは、ものすごく大変。 コメント・仕様書もないのに、アプリを解析しなきゃならない。 何十ものファイルが読み込まれるから、普通の人はあきらめるはず
141 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 00:40:39.98 ID:wxgc021b.net] pycurl
142 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 02:00:24.57 ID:s5HIlZiP.net] Chrome で ctrl + s でおk
143 名前:デフォルトの名無しさん [2016/07/03(日) 08:35:57.17 ID:GKjH2M+2.net] ブラウザでやるとhtmlを保存するか全てを保存するかの選択肢があるから 作りこみが必要そう って言ってもBSとかでやれば絶対パスに変換できた気がするから そんな難しくはなさそう
144 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 13:12:19.43 ID:DiVoIdPX.net] >>138 pythonスレでやる内容じゃないな
145 名前:デフォルトの名無しさん mailto:sage [2016/07/04(月) 02:59:13.37 ID:24pN0A7m.net] pub/a.html pub/css/
146 名前:b.css pub/js/c.js サーバー上で、こういうディレクトリ階層にしている場合、 これらを自分のPCにダウンロードしたら、全く同じディレクトリ階層を作る必要がある ファイルの拡張子もたくさんあるし、絶対・相対パス表示もある。 数十のファイルが読み込まれるし、クソみたいなウィジェットもたくさん付けている 他人のサイトなんて、一々、解析してられないよ。馬鹿馬鹿しい [] [ここ壊れてます]
147 名前:デフォルトの名無しさん mailto:sage [2016/07/04(月) 12:02:40.74 ID:bmDp8Deu.net] 142 pythonスレでやる内容じゃないな
148 名前:デフォルトの名無しさん mailto:sage [2016/07/04(月) 12:09:10.84 ID:z1FLHajj.net] pythonでは一体何をすれば…
149 名前:デフォルトの名無しさん [2016/07/04(月) 14:39:31.34 ID:Z3ujEYvuj] 今日python始めたんですけどコマンドプロンプトでファイルとして認識されてませんてでるんですけどどうすればいいですか?
150 名前:デフォルトの名無しさん [2016/07/04(月) 14:51:16.62 ID:Tw9ula4I.net] pythonと、pythonスレの区別が付かないのは暑いから?
151 名前:デフォルトの名無しさん mailto:sage [2016/07/04(月) 15:06:51.09 ID:z1FLHajj.net] pythonスレでは一体何をすれば…
152 名前:デフォルトの名無しさん mailto:sage [2016/07/04(月) 16:37:50.75 ID:igr6hGQQ.net] ペチパーだろお前
153 名前:名無し集中。。 ◆O/rpF5PUVw [2016/07/04(月) 20:59:40.14 ID:XLZhajh3.net] >>136 初心者だがチョッとだけしらべてみた ●結論からいうと、 ・common.css と .jpg 2つがあればよい ・JSは無視してよい(JSからDOM(=HTML)をいじってstyleを変更は機能的にできるが) ●調査方法 FireFox+NoScript (自分は青を使ったが火狐でも十分だろう) ・”名前を付けてページを保存”メニューから2種類で保存 ”Webページ、完全”、と”Webページ、HTMLのみ” (注意:このときファイル名をASCIIで、HTML内で、URLエンコードされないように) ・ LoveCatMan_Full__files ( 1 file .css, 2 files .jpg のみをのこして後は全削除) LoveCatMan_Full_.htm (同名で新ファイルを作成する( ・・・ <HTML><HEAD><BODY>のタグを追加。common.cssを含むtag行をコピー ・・・ 火狐開発ツールで <div class="articleBody">のInnerHTMLをコピーして貼り付け ... ほしい範囲はちがうかもだが ) ●Pythonで (やってないけどたぶんできると思うたぶん) ・urllibで 、.html, .css, .jpg をローカル保存 ・Python 内で.html から soupをつくり 上記調査でやったことと同じことをやり ファイル書く ● JS動かした結果もほしいなら
154 名前:デフォルトの名無しさん mailto:sage [2016/07/04(月) 22:31:17.35 ID:fBjtovDX.net] でっていう
155 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 12:23:31.76 ID:abP/1esm.net] py-getch というモジュールはgetchと互換性がありますか?
156 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 14:26:06.56 ID:YVa+1ojq.net] 保存形式はIE以外でも対応してきてるMHTMLでおねがい。
157 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 22:50:59.77 ID:jRJDfSwk.net] 読み方はマハトマルやぞ
158 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 23:18:31.68 ID:MA2k3Rdl.net] 初心者です。sqliteの質問させてください。 usersテーブルにnameカラムのみがあります。 yamadaさんをinsertする際、すでに存在していればスルー、存在していなければ挿入する というのをやりたいのですがどう書けばいいでしょうか? 以下を組み合わせるイメージです。 INSERT INTO users VALUES ('yamada') NOT EXISTS(SELECT name FROM users WHERE name = 'yamada')
159 名前:デフォルトの名無しさん [2016/07/05(火) 23:28:30.51 ID:TzVVhqyw.net] なんでこのスレで・・・ (プライマリーキーに設定じゃダメなのかな)
160 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 23:36:22.00 ID:MA2k3Rdl.net] >>156 私のようなザコには目からうろこでした。ありがとうございます!
161 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 23:44:11.75 ID:p5TlSvlQ.net] エラーになるじゃん sqlite3ならupsert相当の命令があるが既にある場合何もしないのとはちょっと違うな
162 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 00:06:00.91 ID:qGJVKz7K.net] ウニクエ制約でいいじゃん(いいじゃん?)
163 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 01:57:30.45 ID:vNFNHf89.net] リスト名を取得する方法を知りたいです。 下の場合だと、rokkoに対して合致した場合にmountainをprintさせたいです。 よろしくお願いします。 mountain = ['huji', 'takao', 'rokko'] river = ['meguro', 'kamo', 'asahi'] sea = ['shonan', 'takasaki', 'atami'] text = 'rokko' geography = [mountain, river, sea] for category in geography: for name in category: if name == text: print (category)
164 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 02:46:26.96 ID:S9qDm7+H.net] for category in geography: if text in category: print (category) オブジェクト in リストオブジェクト in 含むとき、真 not in 含まないとき、真
165 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 03:26:30.24 ID:bnrkQm6X.net] >160 geographyをリストのリストでなく、 キーをカテゴリ名(mountainなど)、値をリスト、とした辞書にするのが良いと思います。 そうすれば、キーと値を自然な形で取り出せるので。
166 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 03:31:19.27 ID:bnrkQm6X.net] >162 あるいは、固有名詞から、対応するカテゴリを得るという処理がしたいのならば、 固有名詞をキーにして、カテゴリ(のリストor集合)を値にした辞書を持つという方法もあります。 こっちの方が何回もループ回さずに済みますよ。
167 名前:デフォルトの名無しさん (霧の向こうに繋がる世界) mailto:sage [2016/07/06(水) 10:58:07.74 ID:De8pYE6x.net] 初心者にPythonをおすすめするクソ記事の影響がこのスレに出ている
168 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 11:09:51.15 ID:uN6jT81e.net] 固有値 固有ベクトル は 英語 で 何と言いますか?
169 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 11:42:37.87 ID:UEpscvSf.net] 固有ベクトル>ぐぐる>wiki
170 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 14:46:32.85 ID:vNFNHf89.net] >>163 ありがとうございます。 辞書を使って書いた場合はこんな感じになると思います。 書いてみて、思ったことがあるのですが 1,何度もカテゴリを書き込む必要があるので、あまりいい書き方では無い気がする 2,>固有名詞をキーにして、カテゴリ(のリストor集合)を値にした辞書 という書き方をすると、もっとスマートにかける気がするのですが、どうやって書くのでしょうか? 教えていただけると嬉しいです。 geograpy = {'fuji':'mountain', 'takao':'mountain', 'rokko':'mountain',\ 'meguro':'river', 'kamo': 'river', 'asahi': 'river',\ 'shonan':'sea', 'takasaki':'sea', 'atami':'sea'} text = 'rokko' for key, value in geograpy.items(): if text == key: print(value)
171 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 15:45:47.98 ID:uN6jT81e.net] category = ['mountain', 'river', 'sea'] geograpy = {'fuji': 0, 'takao': 0, 'rokko': 0, 'meguro': 1, 'kamo': 1, 'asahi': 1, 'shonan': 2, 'takasaki': 2, 'atami': 2} print(category[geograpy[text]])
172 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 15:48:17.20 ID:oBxXMfqL.net] 地形の種類と地名の集合を紐付けした辞書データを用意 ループを回して地名の集合に目標が含まれるかテストする categories = {"mountain": {"fuji", "takao", "rokko"}, "river": {"meguro", "kamo", "asahi"}, "sea": {"shonan", "takasaki", "atami"}} text = "rokko" for category, geographies in categories.items(): if text in geographies: print(category)
173 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 15:52:07.67 ID:0UQys2u4.net] >>167 これもおかしいぞ print(geograpy[text])で終わるのに何故ループさせる?
174 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 16:53:19.08 ID:UEpscvSf.net] glist=[[['fuji','takao','rokko'],'mountain'], [['meguro','kamo','asahi'],'river'],[['shonan','takasaki','atami'],'sea']] geography=dict( [y, x[1]] for x in glist for y in x[0]) リストの順番で入らないのは何故?
175 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 17:09:17.84 ID:UPmKjMqh.net] >>171 dictは順序を保持しない。保持したいならOrderedDict docs.python.jp/3/library/collections.html#collections.OrderedDict
176 名前:デフォルトの名無しさん [2016/07/07(木) 16:27:15.24 ID:/AyC11hm.net] これまでpython2で勉強してきましたが,新しいパソコンを購入してせっかくなので環境もpython3にしました. 2のころはGUIでwxpythonを使っていたのですが,python3では正式には対応していないとのことで,phenixを使うことになるかと思います. phenixを使用されている方が居られましたら伺いたいのですが,現状使い勝手はどのような感じでしょうか?
177 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 19:08:19.55 ID:6foOCQOx.net] それを聞いてどうしたいの? ググったらいっぱい出てくるけど?
178 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 19:14:07.71 ID:fln6JgVK.net] >>174 それ聞いてどうしたいの?w
179 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 19:42:07.40 ID:Y6hRAC0W.net] >>175 バカなの? 死ぬの? 死ねよ
180 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 21:29:06.62 ID:FeHl2UAd.net] python2.7とPyQt4でGUIアプリを作ってるのですが、 GUI上で入力した日本語を取得するとどうしても文字化けしてしまいます。 (QLineEditのtext()メソッド) ググッて出てきた解決策を色々試したのですが変わらず…… 誰か助けてください
181 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 21:55:06.49 ID:hNsvcGxY.net] 2系使ってるゴミは死ねってことだよ 早く窓から飛び降りろゴミ
182 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 22:19:23.96 ID:oZiDeRoG.net] 翻訳すると スレ違い そんな超初心者いねーよ
183 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 22:25:04.83 ID:1eZWdJzS.net] 先ほどOSを最新にしたが、まだpythonは 2.x だった。 たぶん 3.x てのは現実には存在しないのだと思う。
184 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 22:49:44.03 ID:oZiDeRoG.net] ってかマジレスすると共存できる 真のpythonユーザーなら各バージョンいんすとるするでしょ
185 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 10:53:03.58 ID:IntJC6pu.net] python3じゃなくてpythonってコマンド名で実行している可能性
186 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 12:41:22.79 ID:Lki/uJV8.net] var brightcove = {}; brightcove.base64 = function() { function b64ToByteArray(b64) { return "test" } return { toByteArray: b64ToByteArray } } alert(brightcove.base64().toByteArray()); こういうJSをpythonで表現したいのですが、うまく行きません。 pythonではどのようにするのがよいでしょうか
187 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 12:46:42.53 ID:gb0PvJK9.net] >>180 システムのpythonはプログラミングには使わないほうが良いよ、pyenvで仮想環境作って3でも2でも好きなの使えば
188 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 13:14:49.02 ID:MZ65v/q8.net] >>183 クロージャ使ってオブジェクト構築する方法を捨ててクラスを設計する brightcoveモジュールとBase64クラスとto_bytearrayメソッドに置き換えるのはどう?
189 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 13:34:32.18 ID:WN2toBJM.net] >>183 ためしてないけど class brightcove(): ..@staticmethod ..def base64(): ....def b64ToByteArray(b64=None): ......return "test" ....class noname(): ......def __init__(self): ........self.toByteArray = b64ToByteArray ....return noname() print brightcove.base64().toByteArray()
190 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 14:28:37.76 ID:Lki/uJV8.net] >>185-186 あざすやってみます
191 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 15:51:02.93 ID:Lki/uJV8.net] >>186 動きました。・・・が何をしているのかが理解できません どうして print brightcove.base64().toByteArray() これが動くんだろう・・・・
192 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 15:53:48.37 ID:Lki/uJV8.net] brightcove.base64()が実行されたときに、 最後にnoname()が呼び出されて 別名にしている?ここらへんのスコープがよくわかりません
193 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 16:21:22.87 ID:XrfHWU2r.net] >>189 noname_obj = brightcove.base64() func_obj = noname_obj.toByteArray print func_obj() 別の表現すると print ( ( brightcove.base64() ).toByteArray )()
194 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 16:48:31.16 ID:MZ65v/q8.net] >>189 >>186 のbrightcove.base64()を呼び出すと b64ToByteArray関数とnonameクラスを定義してnonameのインスタンスを返す Pythonでは辞書に属性を追加できないので nonameクラスで>>183 のjsオブジェクト {toByteArray: b64ToByteArray} を真似ている まあPythonでは一般的な書き方ではないと思う
195 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 16:59:28.99 ID:Lki/uJV8.net] >>191 return {...}を表現するにはこうするしかないんですね あざす
196 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 17:07:14.08 ID:MZ65v/q8.net] あ、>>186 は不完全だtoByteArrayの第一引数がselfになってしまう toByteArrayもstaticmethodでラップする必要があるな class brightcove: ....@staticmethod ....def base64(): ........def b64ToByteArray(b64): ............return b64 ........class noname: ............toByteArray = staticmethod(b64ToByteArray) ........return noname() brightcove.base64().toByteArray("b64 test")
197 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 18:44:44.56 ID:ulrB7cPH.net] selfって書かなくてもいいんですね
198 名前:デフォルトの名無しさん mailto:sage [2016/07/08(金) 18:53:03.99 ID:ulrB7cPH.net] >>193 パっと見、えって思う処理ですね
199 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 20:40:26.01 ID:A2kiW1x0.net] def a(): __print(1) name = "a" 変数nameに関数名を入れてるんですけど このnameから関数を実行させる方法を教えてください phpだと <?php function a(){ echo 1; } $name = "a"; $name(); で出来ますがpythonではどうやるのかわかりません
200 名前:デフォルトの名無しさん [2016/07/09(土) 20:55:49.17 ID:f44ee91j.net] 安易にそういう事をしないのがpython流です
201 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 21:34:33.45 ID:tiewsUwv.net] >>196 name = a name() で行ける "a"を使って呼び出す方法は知らない
202 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 21:42:46.83 ID:YfgAyk2I.net] >>196 >>197-198 の言うとおりなんだが、原理的には eval(name)() や locals()[name]() で呼び出せる。が、やるべきじゃ無い。
203 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 22:18:40.23 ID:w1tY8J+d.net] 小さいスコープで、関数に別名を付けて、 名前を短くして、呼び出したいときもある
204 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 22:19:59.89 ID:YfgAyk2I.net] >>200 それを文字列でやる必要がどこにある?
205 名前:デフォルトの名無しさん [2016/07/09(土) 22:36:16.13 ID:zLjepEFC.net] 文字列の特性を必要としないなら文字列でやる必要性は全くないな
206 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 22:47:24.68 ID:tiewsUwv.net] >>201 100個)の関数を順に呼び出していくアプリを作ろうとしたことがあって 関数名を考えるのがめんどいし、main内にずらっと100個の呼び出しを 書くのも大変だから、動的に文字列でa1()〜a100()を作り出しながら 呼び出そうと思いついたことはある ただ>>199 のやり方を知らなかったので挫折した
207 名前:デフォルトの名無しさん [2016/07/09(土) 23:00:20.45 ID:zLjepEFC.net] ループ、クロージャ、配列で済む話
208 名前:デフォルトの名無しさん mailto:sage [2016/07/09(土) 23:02:27.83 ID:j7FBg3WE.net] evalなんてスクリプト言語ならではの醍醐味なんだから 危険を承知したうえで使えばいいと思うんだがな python流じゃないとか使うべきじゃ無いなら最初からそんなもん実装するなよ
209 名前:デフォルトの名無しさん [2016/07/09(土) 23:05:10.46 ID:zLjepEFC.net] 初心者に危険を承知とか説くのか やれやれ
210 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 00:09:03.81 ID:TyWwPenx.net] ヤっておしまいっ!(キリッ
211 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 00:27:57.27 ID:s1YVXoV8.net] phpならこうだけどpythonではどうすればいいの? って単純に疑問に思っただけなのにこんなにdisられるとは思いませんでしたw
212 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 00:38:37.58 ID:6Xbhdejn.net] 気にするな。 難癖つけることに生きがい感じてる人も多いんだ。
213 名前:デフォルトの名無しさん [2016/07/10(日) 01:51:38.13 ID:8n7tHt7F.net] phperなだけでdisられる時代もあったし大分マシになったんじゃねーの
214 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 02:12:27.35 ID:JTH0ZdYC.net] RoR の黒魔術・メタプログラミングに、懲りた人が多いのかも ツールで、規約に則った、関数名を作り出すから
215 名前:デフォルトの名無しさん [2016/07/10(日) 02:13:22.18 ID:Mf/b32xw.net] 下等生物が人間様の道具を使うなよ。 畜生と同じものを使ってるなんて、人畜共通感染症にでも掛かりそうだわ。 って煽られたことはあるね。 酷すぎて笑った。
216 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 04:05:03.84 ID:p5bjADUu.net] 今のところ、evalを使わない方がシンプルに書けるような話しか出てないからな そのレベルの初心者にはevalはまだ早いとしか言えない
217 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 05:25:05.21 ID:H5gxojYP.net] Python使いはPython独自の作法を持ち、それに反することは許さないな 書くときの利便性第一な考えやコードには特に厳しい
218 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 05:57:49.14 ID:vse3CjPy.net] >>204 クロージャは俺にとってこの世で最もわからないテクニックの一つなんだ 関数の中に関数を書いただけで、なぜクロージャなどという特別な名前になるのか そこに俺はPythonの底知れぬ恐怖と闇を感じる
219 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 13:18:19.45 ID:ts85OtT4.net] >>215 関数の中の関数はローカル変数をキャプチャする機能が含まれるからただの関数と区別するのはおかしくないでしょ 実際他の言語では区別するのが多いし てかドキュメント読むとむしろpythonは区別してない気がするんだけど
220 名前:194 mailto:sage [2016/07/10(日) 14:03:00.41 ID:xN29fWNL.net] ファクトリメソッドを書く時どうしてるんですか?
221 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 14:44:54.64 ID:7RALs3SK.net] FactoryMethodパターンに従って書いてるけど? https://ja.m.wikipedia.org/wiki/Factory_Method_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3
222 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 14:49:44.97 ID:p5bjADUu.net] こうなる理屈が分かってれば、文字列なんて使う必要無いことが分かるはず def gen(): def f(): pass return f print(gen() == gen()) # False
223 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 14:54:48.06 ID:BWKzm6CE.net] ファクトリメソッドとは言うものの、独自解釈が盛り込まれた 似て非なるものを指して言っているような気がしてならない。
224 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 16:28:35.15 ID:PgiToNvG.net] 名前空間に文字列でアクセスしたいって意味だと思ってたんだけど違ったのか
225 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 18:00:33.44 ID:WKr7J3se.net] 出来るけど必要無いって話だろ
226 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 19:19:43.63 ID:EY1v+Nkp.net] >>196 getattr('a')()
227 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 20:36:34.25 ID:L/5VOBwr.net] Evalが危険ってあるけど、どんな危険があんの? 失敗したら地球爆発すんの?
228 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 20:46:43.11 ID:WDQFjLtu.net] その場でソースを解釈して実行するってことだから バグとか悪意のあるコードが実行されたら... あとはわかるよね
229 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 20:51:14.11 ID:UiXNSESM.net] 例えばお前が出会い系で知りあったマンコとセックスするとするだろ? (実際はそのスキルもないだろうけどここはとりあえずヤレると仮定しろ) ところがそのマンコの素性は全く分からんよな? いくら本マンコが「善意の処女やで!」とか言っても実際のところは本マンコにしか分からんだろ? 強烈なメンヘラかもしれんよ?美人局かもしれんよ?梅毒持ってるかもしれんよ? たった一発のマンコでお前の薄っぺらい人生が崩壊するかもしれんのだよ? それでもお前ヤれるか?怖いだろ?……俺はヤるけどな
230 名前:デフォルトの名無しさん [2016/07/10(日) 21:13:17.83 ID:acSiYBLC.net] おいおっさん
231 名前:デフォルトの名無しさん [2016/07/10(日) 21:16:43.03 ID:acSiYBLC.net] 使いたきゃあ使えばいいんだよ 人の忠告を無視する奴がどの面下げて教えを請いに来てるのか 想像もつかねえけどなw さぞかし面の皮が厚いんだろ 脳みその収まる余地が無いくらいにな まあPHPユーザーならそんなもんだろうよ
232 名前:デフォルトの名無しさん [2016/07/10(日) 22:16:37.63 ID:7RALs3SK.net] eval自体はユーザー入力を突っ込まなければ特に問題があるわけではない ユーザー入力を突っ込むと危険なのはpickle系も同じ evalの問題は求める結果に対して過剰な機能であること、linterが利かないこと