1 名前:デフォルトの名無しさん mailto:sage [2022/05/22(日) 22:25:08.74 ID:/hGmbW/Z.net] 当スレに★Python以外のプログラミング言語での回答類を書くべからず★ 派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。 「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。 このスレッドは「お勉強」スレのほうには書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。 ★エラーを解決したい場合★は、 表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、 実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。 Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★ 【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、 プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。 ttps://techiedelight.com/compiler/ Run Code機能あり。 ttp://ideone.com/ デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ◇Python公式◇ www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi 〇前スレ〇 【まず1嫁】くだすれPython(超初心者用) その56 mevius.5ch.net/test/read.cgi/tech/1640536690/ 次スレたては >>985 あたりが挑戦する。 ### END OF TEMPLATE ###
11 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 15:01:54.57 ID:v/p+BagL.net] >>4 sqlでの抽出は知らんけど、他の方法で抽出でけた import pandas as pd data=[ [0,0,2470,0,0,27], [0,0,1570,0,0,0], [0,1580,1440,0,35,31], [0,1290,2878,0,0,31], [2522,885,940,31,0,0], [1527,1057,1639,28,5,31], [1527,1457,1639,28,26,31]] df = pd.DataFrame(data) def check(row): d = {1:25, 2:20, 3:15} return all(i[1] > d[len(row)] for i in row) # 各PRICEと各P(%)の組をzipで作って、その中からPRICEがゼロのものを削除したものをcheck関数でチェック [check([k for k in j if k[0]>0]) for j in [list(zip(i[:3], i[3:])) for i in df.values.tolist()]] [True, False, True, False, False, False, True] # ブールインデックス作成 df2 = df[_] # ブールインデックスで抽出 df2.values.tolist() [[0, 0, 2470, 0, 0, 27], [0, 1580, 1440, 0, 35, 31], [1527, 1457, 1639, 28, 26, 31]]
12 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 15:18:41.40 ID:v/p+BagL.net] プロンプトが無くて入力と出力が分かりにくかったので、プロンプト追加 >>>import pandas as pd >>>data=[ ・・・ [0,0,2470,0,0,27], ・・・ [0,0,1570,0,0,0], ・・・ [0,1580,1440,0,35,31], ・・・ [0,1290,2878,0,0,31], ・・・ [2522,885,940,31,0,0], ・・・ [1527,1057,1639,28,5,31], ・・・ [1527,1457,1639,28,26,31]] >>>df = pd.DataFrame(data) >>>def check(row): ・・・ d = {1:25, 2:20, 3:15} ・・・ return all(i[1] > d[len(row)] for i in row) # 各PRICEと各P(%)の組をzipで作って、その中からPRICEがゼロのものを削除したものをcheck関数でチェック >>>[check([k for k in j if k[0]>0]) for j in [list(zip(i[:3], i[3:])) for i in df.values.tolist()]] [True, False, True, False, False, False, True] # ブールインデックス作成 >>>df2 = df[_] # ブールインデックスで抽出 >>>df2.values.tolist() [[0, 0, 2470, 0, 0, 27], [0, 1580, 1440, 0, 35, 31], [1527, 1457, 1639, 28, 26, 31]]
13 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 15:20:27.82 ID:joAjo/JZ.net] >>5 >>10 >>11 ありがとうございます! 家帰ったら内容目通していじってみます
14 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 15:21:54.55 ID:joAjo/JZ.net] >>12 正直かなり助かりました。 まだ家帰れてないので試せてないけど、かなり行けそうなイメージです
15 名前:デフォルトの名無しさん [2022/06/05(日) 15:24:04.14 ID:udiiYXiV.net] >>9 >親クラスの_cmp()が呼ばれているはず 確かめた?
16 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 15:33:26.33 ID:NOI2DZIw.net] >>15 お返事ありがとうございます。親クラスのメソッドが呼び出されていることを実際にどう確認すればいいのか思いつけないレベルです(デバッガ? トレース?) ただ単に、例外が送出されずに比較結果が表示されたので、何らかの比較するメソッドが呼ばれたのだろうと想像しただけです 例えば、foo <= datetime.datetime.max が評価されるとき 1) foo.__le__(datetime.datetime.max) が呼ばれる 2) fooには__le__メソッドが定義されていないので親クラスに遡って datetime.datetime.__le__(self=foo, other=datetime.datetime.max) が呼ばれる 3) ttps://github.com/python/cpython/blob/main/Lib/datetime.py の2110行 self._cmp(other) へ進む ここでself=foo, other=datetime.datetime.max なので、 foo._cmp(other=datetime.datetime.max) と、 ttps://techiedelight.com/compiler/?zbRJ の4行目で定義したメソッドが呼ばれる と考えていたのですが……継承に関する理解がどっかで間違っているのでしょうね
17 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 15:56:02.34 ID:U0Dsg58D.net] 俺も気になる。何で_cmp呼ばれんの?
18 名前:デフォルトの名無しさん [2022/06/05(日) 18:26:33.72 ID:NPpCVuaP.net] foo を造ってるのが now() なので foo の型が datetime のままなんじゃね
19 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 19:36:27.49 ID:NPpCVuaP.net] print(super(DatetimeTest, self)._cmp) ↓ AttributeError: 'super' object has no attribute '_cmp'
20 名前:デフォルトの名無しさん [2022/06/05(日) 19:37:47.11 ID:NPpCVuaP.net] こっちは動く https://techiedelight.com/compiler/?Jmnq
21 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 19:39:44.56 ID:v/p+BagL.net] >>12 allの引数が空の場合(全てのPRICEがゼロの場合)にTrueを返すのでcheck関数修正 def check(row): d = {1:25, 2:20, 3:15} return all(i[1] > d[len(row)] for i in row) if row else False
22 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 20:20:03.24 ID:x6+Exssm.net] ジェネレーター式まで学習が進んだが ちゃんと慣れないと突然でてきたとき「なんだこれ!?」ってなるとおもうわ 見やすくするためのものだからそんな複雑な構造で出てくることはないと思うが
23 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 21:55:46.01 ID:NOI2DZIw.net] ID:NPpCVuaPさん、ありがとうございます > foo を造ってるのが now() なので > foo の型が datetime のままなんじゃね type(foo)はちゃんと"<class '__main__.DatetimeTest'>"になっていましたので、その線は無さそうです で、試していただいた ttps://techiedelight.com/compiler/?Jmnq ですと、>>16 で私が考えたとおりの動作をしているように見えますね となると、datetime.datetimeとHogeで何が違うのか……ちょっと脳味噌が煮えてきたので、一旦専ブラを閉じて頭を冷やします
24 名前:デフォルトの名無しさん mailto:sage [2022/06/05(日) 23:10:11.97 ID:v/p+BagL.net] >>23 dirで_cmpが見えるか見えないかの違いじゃないでしょうか >>20 のdir(Hoge(0)), dir(Fuga(0))は伴に_cmpが見えますが dir(datetime.datetime.now())は_cmpが表示されないのでアクセスできないんですよ
25 名前:デフォルトの名無しさん mailto:sage [2022/06/06(月) 08:54:18.93 ID:9r9DwyjN.net] 見えないのはわかったけどその挙動を実現するための言語仕様ってあるんだっけ?
26 名前:デフォルトの名無しさん [2022/06/06(月) 09:18:43.10 ID:Ug3DHjCK.net] 本体はこっちじゃね https://github.com/python/cpython/blob/main/Modules/_datetimemodule.c
27 名前:デフォルトの名無しさん [2022/06/06(月) 09:23:35.02 ID:Ug3DHjCK.net] まずやるべきことは >15 だろ
28 名前:デフォルトの名無しさん mailto:sage [2022/06/06(月) 09:43:37.49 ID:zYl8ARh2.net] やりましたみなさん、分かりました! datetime.pyの最後のにfrom _datetime import *をtryする記述があり 成功したら_cmpなどを消す処理が書いてあるんですが、この_datetimeをimportする関連個所を ごっそりコメントアウトして import datetime dir(datetime.datetime.now())
29 名前: したら_cmpが表示されましたよ、つまりdatetimeの本体は_datetimeで>>26 のヤツじゃないでしょうか [] [ここ壊れてます]
30 名前:6, 9, 16, 23 mailto:sage [2022/06/06(月) 09:50:52.59 ID:PsDk58Y7.net] >>24 お返事ありがとうございます 呼べないのはDatetimeTest._cmp()であってdatetime.datetime._cmp()は呼べている(ように見える)わけですから datetime.datetime._cmpが見えないことに意味があるのかどうか……一晩経っても脳が煮えたままです ちなみにdir(foo)だと_cmpが見えてますね…… >>26-28 とりあえず知識もスキルもないなりに手を動かそうと思って、 ttps://techiedelight.com/compiler/?zbRJ のimport datetimeの位置に datetimeモジュールのソースをそのまま全部貼り付けてあれこれ試したところ(そのコードはでかいしTECHIE DELIGHTの利用規約的にクリアかどうか分からないのでアップしません) ttps://github.com/python/cpython/blob/main/Lib/datetime.py の最後、2614行目以降が無ければ>>16 で私が考えたとおりの動作になる、つまりfoo._cmp()が呼ばれますが、2614行目以降がそのままだと呼ばれませんでした ということで、遅ればせながら>>28 さんと同じ結果に辿り着けました Cで書かれたモジュールを読み込んで、未使用の名前を削除して、という工程の中になにかありそう、というあたりが今のところ私の限界です
31 名前:デフォルトの名無しさん mailto:sage [2022/06/06(月) 09:54:12.32 ID:Ug3DHjCK.net] なるほど _cmp は存在しなかったで FA
32 名前:デフォルトの名無しさん mailto:sage [2022/06/06(月) 09:54:13.01 ID:PsDk58Y7.net] 皆さまいろいろとありがとうございます やはり>>27 さんのおっしゃるとおり、まず>>15 さんの指摘を確かめなければならなかったようですね
33 名前:デフォルトの名無しさん mailto:sage [2022/06/06(月) 09:56:28.25 ID:9r9DwyjN.net] >>28 まじか グローバルにも_cmpがあるからそれを消すためのコードと思いきや、datetime.datetime._cmpも消えるのね…
34 名前:デフォルトの名無しさん [2022/06/06(月) 10:03:42.68 ID:Ug3DHjCK.net] >>29 そこで削除されてる _cmp は module のグローバルの _cmp であって 各クラス内の _cmp は削除されてないようにも観える
35 名前:デフォルトの名無しさん [2022/06/06(月) 10:05:27.81 ID:Ug3DHjCK.net] >>32 かぶったが 解せぬ
36 名前:デフォルトの名無しさん mailto:sage [2022/06/06(月) 10:13:54.31 ID:zYl8ARh2.net] >>32 グローバルの_cmpを消す処理で合ってると思いますよ 通常は _datetime (たぶん本体がC言語)をimportする、この中にはself._cmpが無いのでdirで見えないし グローバルの_cmpを消す処理でグローバルの方も見えない _datetimeのimportに失敗したらdatetime.pyに書かれているdatetimeクラスが使われるし グローバルの_cmpを消す処理が実行されないので dir(datetime)でグローバルの_cmpが見えるし、dir(datetime.datetime)でself._cmpが見える
37 名前:デフォルトの名無しさん [2022/06/07(火) 17:25:02.03 ID:NE4LVa9l.net] なんのための fake
38 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 06:15:05 ID:8a3xVi5I.net] python 2.x 系の環境です。 file_path を関連付けで実行させるために下記コードを記述しました。 目的としては引数の文字列を unicode として渡したいです。 subprocess.Popen(「'start', file_path], shell=True) この際、引数は cp932 として扱われるようで、 file_path を cp932 にencode しないと失敗します。 unicode にしかない文字が含まれる場合があるので unicode のまま渡したいのですが Popen 側で引数を unicode として受け取れる方法はありますか? encoding= は Python 2.x は未対応、 またパイプを使って chcp 65001 を先に実行させてもダメでした。
39 名前:37 [2022/06/08(水) 07:56:30.16 ID:Ty02xZw9.net] win環境なのですが2.x系では内部で ANSI版のCreateProcessAを呼び出しているとのことで そもそもダメということが分かりました ctypesなど使ってCreateProcessWを直接呼び出すなどするしかないみたいです
40 名前:デフォルトの名無しさん [2022/06/08(水) 12:41:12.70 ID:P10Nnex8.net] 今のWindowsおすすめpython環境はなんですか? 教育用?にWindowsでのpython環境を作りたいです。 無印python、anaconda、PyCharmはどれがいいでしょうか。 エディタはVSCodeの利用を考えてます。 自分は普段、LinuxやWSL2でemacsを使っているオールドタイプです。 教えて下さい
41 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 13:17:16.31 ID:Ylodbyzl.net] google colaboratry で十分
42 名前:デフォルトの名無しさん [2022/06/08(水) 13:42:31.40 ID:rPUwIz8x.net] たとえば以下のようなリストが即興で欲しくなった場合ってどうしてます? [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 10, 11]…………] (下の例では0~12まで) ググった結果numpyで配列を作ってtolistでリスト化する方法は見つけたんですけど もっとぱっと書けないですかね? import as numpy np arr_2d = np.arange(12).reshape((4, 3)) print(arr_2d.tolist())
43 名前:デフォルトの名無しさん [2022/06/08(水) 13:43:05.22 ID:rPUwIz8x.net] 0~12じゃねえわ11だった
44 名前:デフォルトの名無しさん [2022/06/08(水) 15:41:41.08 ID:Mk/J73jd.net] >>39 前は素の python 入れて pip してた Anaconda + conda 使ったこともある Thonny + pip も良いと思う
45 名前:デフォルトの名無しさん [2022/06/08(水) 15:45:15.80 ID:Mk/J73jd.net] np.arange(12).reshape((4, 3)).tolist() [[y * 3 + x for x in range(3)] for y in range(4)]
46 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 15:50:39.30 ID:WqwdOMp+.net] >>41 [list(range(i, i+3)) for i in range(12)[::3]]
47 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 15:55:39.94 ID:SMHvnx3K.net] import more_itertools list(more_itertools.chunked(range(12), 3))
48 名前:デフォルトの名無しさん [2022/06/08(水) 16:25:32.81 ID:KT22GtKj.net] [np.array([0, 1, 2]) + 3*_ for _ in range(4)]
49 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 18:22:00.06 ID:WqwdOMp+.net] >>41 さらに短くできた [list(range(i, i+3)) for i in range(0,12,3)] もう出尽くしたやろ、ワイのが一番やな、組み込みのみだし直感的だし 応用もきくし、ワイが一番やろw
50 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 18:40:08.42 ID:3lPgPXCP.net] >>39 WinPython+VScodeが正解だぞ anacondaは、Pythonを習得し、Pythonと外部ライブラリの境界を把握できるように なった人のうち、anacondaを必要とする人だけが使うものだ
51 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 19:34:37.02 ID:nVdli+zf.net] >>39 Pythonで何やりたいのかわかんねーからてきとーだけど Dockerコンテナにanacodaとvscodeが正解
52 名前:デフォルトの名無しさん mailto:sage [2022/06/08(水) 19:37:13.76 ID:d7/kuIlk.net] dockerはdockerの勉強になるしwindowsだと安定しないから要らんな
53 名前:デフォルトの名無しさん [2022/06/08(水) 23:45:53.43 ID:rPUwIz8x.net] >>44-48 ありがとう、勉強になった!
54 名前:デフォルトの名無しさん [2022/06/09(木) 03:35:46.64 ID:aPNi5OBU.net] pythonのライブラリを調べているのですが C言語で書かれている部分(cソースコード)には どうやってたどり着けばいいのでしょうか? 例としてrandom.random()が0.0以上1.0未満の浮動小数点数を かえしますが、どうゆう仕組みで返すのかを調べたいのです
55 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 04:32:16.69 ID:FzQACe2i.net] >>53 コンパイル済みのを一般に調べるのは無理。標準ライブラリなら例えばcpython のリポジトリから探せる。https://github.com/python/cpython
56 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 05:11:23 ID:aPNi5OBU.net] >>54 回答ありがとうございました _randommodule.cまでたどりつきました 少しハードルが高いですが頑張って理解に努めようと思います。
57 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 05:17:33 ID:FzQACe2i.net] >>55 蛇足かもですがpython の乱数はメルセンヌツイスタというアルゴリズムなので調べてみるといいかもしれません
58 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 05:44:46.90 ID:aPNi5OBU.net] >>56 _randommodule.cの中に日本人の名前があったので 何故だろうと思いましたがメルセンヌツイスタで検索したら つながりました。感謝です
59 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 18:02:41.85 ID:i3H8tE1L.net] >>39 公式Python+PyCharmが便利
60 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 18:22:37.05 ID:8SlPB6O/.net] 教育用なら圧倒的シェアを獲得しているVSCodeの方が良いと思うよ
61 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 18:36:52.52 ID:ZOUr8HN/.net] pycharmはなぁ…
62 名前:デフォルトの名無しさん [2022/06/09(木) 22:20:46.40 ID:KIKA+I2C.net] >>39 教育に、環境構築の手間を含められるかどうかによるかな。 純粋にプログラムとは何かを知ってもらうだけだったらcolab Pythonスクリプトをちゃんと動かせるようになることが目標だったらWindows用のPythonかなぁ。
63 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 22:22:21.55 ID:1X1IjXim.net] ideoneでいいじゃん。 colabより高性能だよ。 公開されてしまうが。
64 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 23:14:03 ID:gzzbtW8N.net] そいや親戚のとこの子供が学校でPythonのプログラムやっているというのだが、 ああいうのって、どういう仕様の実行環境なんだ? グラフや絵を描けたり、画面上のピアノの鍵盤叩くと音が出せるとか、 なにやら色々とできるようなのだが というかpipであれこれ山盛りにされてる環境にも思える Scratchだと思ってた
65 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 23:16:22 ID:1tSt6fQl.net] ideoneとColab(Jupyter)だと機能がダンチだから土俵がちがう
66 名前:デフォルトの名無しさん mailto:sage [2022/06/09(木) 23:20:50 ID:1tSt6fQl.net] >>63 MakeCodeとかUI Flowのあたり? ブロックプロラミングとPythonを行ったり来たりできる
67 名前:デフォルトの名無しさん [2022/06/10(金) 03:26:54.12 ID:v7zmV4Lt.net] vscodeって途中のコードいじってると下記の折り畳み全部開いちゃうじゃん。あれ超鬱陶しい
68 名前:デフォルトの名無しさん mailto:sage [2022/06/10(金) 12:08:03.84 ID:sFhUkWJJ.net] 関数の引数型説明(アノテーション?)をつけるとき、intやstr等の組込み型ではなく、クラスのインスタンスの場合どのように書けばよいでしょうか
69 名前:デフォルトの名無しさん mailto:sage [2022/06/10(金) 12:38:18.30 ID:Lq4KcKs2.net] https://docs.djangoproject.com/ja/3.2/intro/tutorial05/ このページの最初のコードをshellモードでやってもtimezone has no 'now'って出るんだけどなんでだよ ついでにいうとsettings.pyでuse_tz = Falseにすると逆に日本時間になってTrueにするとUTCになる
70 名前:デフォルトの名無しさん mailto:sage [2022/06/10(金) 14:22:36.04 ID:Lq4KcKs2.net] 解決 from django.utils import timezone じゃなくて from datetime import timezoneって書いてた
71 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 10:31:55 ID:yOzdOwl+.net] 超初心者です!古いMacでも出来ますか?
72 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 11:18:37.09 ID:85fUpHB3.net] >>70 https://homepages.cwi.nl/~jack/macpython/index.html これだとバージョン古いからMac-on-Linux化してLinux側で動かすか リモートでもいいならWebブラウザのGoogle Colabやクラウド上のLinuxでやれる
73 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 11:20:32.01 ID:IHQzlSUe.net] >>67 例えばpandas(pd)のデータフレーム(df)なら import pandas as pd def some_func(df: pd.DataFrame, some_num: int = 42) -> pd.DataFrame: df2 = df.cooy() # 処理 return df2
74 名前:67 mailto:sage [2022/06/12(日) 06:48:37.19 ID:0q70LBVd.net] >>72 ありがとうございます
75 名前:デフォルトの名無しさん [2022/06/12(日) 08:55:03.32 ID:LQ+2P+LS.net] サポート期限すぎたMac使ってそう
76 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 18:06:38.20 ID:9B8stwi/.net] leetcodeの問題解いてるんだけどさ コードをvscodeとかのエディタ上で再現しようとしてもinputはleetcode側がやってるから、コードコピペしてもうまく動かないってことか? Input: strs = ["flower","flow","flight"] class Solution: def longestCommonPrefix(self, strs: List[str]) -> str: # 回答をここに書いた こういうクラスを実行する場合って solu = Solution() solu.longestCommonPrefix() こんな感じにすると思うんだが、エラーが NameError: name 'List' is not defined とかになるんだよね
77 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 18:18:33.18 ID:d5yVlq+K.net] そのくらいはimportしろよ
78 名前:デフォルトの名無しさん [2022/06/12(日) 18:22:48.72 ID:V8Tt9ICP.net] エラー文も読めないのか 新しいpythonならlist[str]だバカタレ
79 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 18:23:08.52 ID:fSdhUbKc.net] >>75 そこだけの話でいうと from typing import * だけど、問題のコードが古い 今はListをlistと書くようになったから
80 名前:デフォルトの名無しさん [2022/06/12(日) 18:42:58.91 ID:w/rq6Our.net] nameErrorとかattributeErrorと最低限のエラーぐらい読めるようになろう 問題といてる場合じゃない
81 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 19:23:48.95 ID:9B8stwi/.net] >>78 なるほどそういうことか ありがとう
82 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 03:56:57.46 ID:i0EppADi.net] >>1 def reverse(url): return url[::-1] lst = [ ['=v?hc','taw/','moc.e'], ['.www','//:sp','tth'], ['but','uoy'] ] yt = ''.join( lst[0] + lst[2] + lst[1] ) id_lst = ['MOYukLAWwkK', 'A4c_Lbwf-Jw', '0glgH5rR_po'] for id in id_lst: print( reverse( id + yt ) ) "".join("ht_t_ps://ja_.wiki_pedia.o_rg/_wiki/朝鮮神宮".split("_"))
83 名前:デフォルトの名無しさん [2022/06/17(金) 05:22:40.60 ID:eircCDFG.net] >>1 reverse = lambda *argv: [ '//:sptth'[::-1] + url[::-1] for url in argv ] lst_url = reverse('IPq5AyxxvpM=v?hctaw/moc.ebutuoy.www', '0EgauYFUN8N=v?hctaw/moc.ebutuoy.www', '48132/-/selcitra/pj.tnediserp', '4456111984139806941/sutats/oobnolihsusta/moc.rettiwt', '81605591320X602502201/txt/elpmis/pj.og.ldn.iakkok', '1021=morf?15978662os/hctaw/pj.oedivocin.www', '8xebddeeiYY=v?hctaw/moc.ebutuoy.www') print(*lst_url, sep='\n')
84 名前:デフォルトの名無しさん [2022/06/17(金) 08:29:57.19 ID:doPvN/Dz.net] これを三項演算子で書くことってできますかね? if a: if b or c: print("1") else: pring("2")
85 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 08:40:15.00 ID:impPpfbo.net] インデントどこやった
86 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 09:16:26.10 ID:b18JcTPN.net] 5chはインデント未対応なので pythonコードを貼るときは 行頭インデントを全角アンダーバーで 埋めてください
87 名前:デフォルトの名無しさん [2022/06/17(金) 09:26:11.91 ID:doPvN/Dz.net] こんなかんじです a b c は true か falseが入る変数です if a: _if b or c: __print("1") else: _print("2")
88 名前:デフォルトの名無しさん [2022/06/17(金) 09:35:01.18 ID:nb2nCyEf.net] >>86 print((1 if b or c else "") if a else 2) 三項演算子ならば全ケース対応する必要がある a and not (b or c)の場合は空文字列とした
89 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 09:52:15.09 ID:Ws3c1l54.net] 回答になってないが if not a: __print(2) elif b or c: __print(1) でよくない?
90 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 12:17:47 ID:uqpMsu92.net] a = True, b = False, c = Falseのケースを見落としてるのか 意図して何もしてないのかが読み手にはわからないからすごく気持ち悪い
91 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 12:40:54 ID:u2aqxJXf.net] テキストだと以下のようになるんだけど # 整数(Python の int 型)の要素をもつリストを与えた場合 x = np.array([1, 2, 3]) x.dtype 結果 dtype('int64') 自分の環境だとdtype('int32')になるんだよね これってあんまり気にしなくて良い部分? ちなみに以下のはテキストと同じ結果になる # 浮動小数点数(Python の float 型)の要素をもつリストを与えた場合 x = np.array([1., 2., 3.]) x.dtype 結果 dtype('float64')
92 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 13:02:51.91 ID:sBNVv+WO.net] numpyのintはC言語のlong あなたの環境はWindowsで本はLinuxなのだろう
93 名前:デフォルトの名無しさん [2022/06/17(金) 16:24:32.82 ID:G79h5Zer.net] >>87 無駄な改行が増えるので仕様が異なる
94 名前:デフォルトの名無しさん [2022/06/17(金) 16:26:41.62 ID:G79h5Zer.net] >>90 OSの32/64と pythonの32/64と それぞれどっちが動いてるかは意識するべき
95 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 17:59:15.20 ID:JzEGKltv.net] >>93 それとは別の話なんやで
96 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 19:32:27.63 ID:Ta4m0XWe.net] >>82 'stnemugra-gnikcapnu-tut#lmth.wolflortnoc/lairotut/3/aj/gro.nohtyp.scod//:sptth'[::-1]
97 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 20:07:00 ID:IFnpw5My.net] jupyternotebook で実行中のセルからほかのセルを呼び出して実行できませんか? マジックコマンドをみてもそれらしきものがないような vbaでいえば、セルをプロシージャ、ノートブックをモジュールのように扱いたいのですが・・
98 名前:デフォルトの名無しさん [2022/06/17(金) 23:55:43.50 ID:doPvN/Dz.net] 86ですが回答ありがとうございました。 これでいけそうです print("b") if not a else print("a") if b or c else print("c")
99 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 01:17:30.65 ID:lHai4Yqe.net] >>96 モジュール化するのはだめなんか? インポートしたらいいじゃまいか
100 名前:デフォルトの名無しさん [2022/06/18(土) 11:02:31.05 ID:0BdDrqNN.net] >>90 気になるなら x = np.array([1, 2, 3], dtype=np.float32)
101 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 17:19:34.23 ID:AeKYwQGO.net] ""と''の違いってある? 単に出力の違いとかじゃなくてコードを書く上での使い方の違いとか
102 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 18:19:13.17 ID:HiXA4239.net] https://pep8-ja.readthedocs.io/ja/latest/#section-11
103 名前:デフォルトの名無しさん [2022/06/18(土) 18:53:41.89 ID:U2ccem7m.net] >>100 英語キーボードなら''のほうが楽
104 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 19:06:28.02 ID:H57335ve.net] >>98 ありがとうございます 検索すると、実行セルのipynbとは別のipynbファイルおよびセルをインポートする方法はあるのですが、 実行セルと同じipynbファイルにある別セル(例えば、実行セルの一つ上のセル)を呼び出したい 場合は、自分自身のipynbをインポートするということでしょうか? インポートするipynbのセルすべてを実行するとあるので、素人感覚では無限ループになってしまうそうなのですが・・ 呼び出される側のセルをpyファイルに出力してそのpyファイルをインポートすればいい話かもしれませんが、いちいち pyファイルで書き出すのもなあ…と 理解が悪くてすみません
105 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 19:19:37.26 ID:HiXA4239.net] 普通に関数を作るのではだめなの
106 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 20:04:40.40 ID:H57335ve.net] >>104 ありがとうございます それでももちろんできるのですが、呼び出される側のセルを単体で実行することも多く、また同一ipynbのその他多くの セルからも呼び出したいのです(処理が共通している vbaだと、publicsubプロシージャで独立させてしまえばいい話だったので同じことがしたいなと
107 名前:デフォルトの名無しさん [2022/06/18(土) 20:08:08.31 ID:cOcEcivy.net] jupyterなんて池沼用だろ
108 名前:デフォルトの名無しさん [2022/06/18(土) 22:44:24 ID:FjYCWDRz.net] blenderでpythonスクリプトを使ってキャラクターの目のまばたきの動きを制御してるんですがやってることをグラフで表すとこんな感じで https://i.imgur.com/3wSHCrT.jpg yにどのくらい目を動かすかの数値が入り xにアニメーションの経過フレーム数が入るとして xが0のときyは0 xが3のときyは6 という条件があるものとして それをグラフで表すと増量が一定ならば一番左のグラフのようにyが2ずつ増えるグラフになると思いますけど これだとまばたきが毎回同じ動きになってしまうので変化をつけたいんですが たとえば真ん中や右のグラフのようにyの数値が不規則に増えていくグラフを計算するたびに作成するみたいなことをしてまばたきの動きに変化をつけたいんですが それに使える関数とか計算式みたいのってないですかね
109 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 22:53:35 ID:HiXA4239.net] この分野はド素人だが CSSにはanimation-timing-functionってのがあって似てる
110 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 09:13:37.77 ID:CQcbRoeX.net] dictionary_one = {"a": 1, "b": 2, "c": 3} dictionary_two = {"c": 3, "d": 4} merged1 = {**dictionary_one, **dictionary_two} print(merged) # {'a': 1, 'b': 2, 'c': 3, 'd': 4} merged2 = dictionary_one | dictionary_two print(merged2) これの "merged1="部分と"merged2 ="部分ってやってること同じという認識でいいのかな?
111 名前:デフォルトの名無しさん [2022/06/19(日) 09:55:52.19 ID:EfD69g8z.net] >>109 前者は遅い