Pythonのお勉強 Part7 ..
[2ch|▼Menu]
2:デフォルトの名無しさん
23/12/27 15:43:24.25 sVIMH2iW0.net
●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その59
スレリンク(tech板)
次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ### ?

3:デフォルトの名無しさん
23/12/28 00:18:55.96 PfV0RGQH0.net
json.loads()で読み込んだすっごい深い階層のどこかにある特定のキーの中身を取り出すのはどうしたらいいだろう

4:デフォルトの名無しさん (オイコラミネオ MM27-v4ek)
23/12/28 07:41:51.96 RaV9XYpTM.net
前スレWindowsのショートカット(.lnk)はリンク先を呼び出すスクリプトだから
直接処理したいならLinuxと同じようにシンボリックリンクを作らないとね

5:デフォルトの名無しさん
23/12/28 07:46:51.07 RaV9XYpTM.net
って書いたけどバイナリ解析して取り出でWshShortcut呼ぶ必要が無くなるな

6:デフォルトの名無しさん (ワッチョイ a372-Vioh)
23/12/28 09:54:35.25 GpULO4aD0.net
>>3
スタック、キュー、再起
好きなの選べ

7:デフォルトの名無しさん (ワッチョイ f354-NbWU)
23/12/28 10:03:58.31 3LJz5hCH0.net
BeautifulSoupだと階層無視して検索とかできるけど、
あんな感じでキーは判ってるので構造に対して柔軟に取得したい

再帰で辞書かリストか判断しながら辿っていけばいいのは判るけど、
自分でいちいち書きたくない

8:デフォルトの名無しさん (JP 0Hc7-sfQN)
23/12/28 12:00:13.88 h0GDpcwsH.net
>>3
glom
URLリンク(glom.readthedocs.io)

9:デフォルトの名無しさん (JP 0Hc7-sfQN)
23/12/28 12:01:30.42 h0GDpcwsH.net
>>3
glom
URLリンク(glom.readthedocs.io)

10:デフォルトの名無しさん (ワッチョイ f354-NbWU)
23/12/28 12:23:16.61 3LJz5hCH0.net
いいね
globみたいに**で飛ばすのか
リストで返ってくるのがちょっと意外だった

11:デフォルトの名無しさん (アウアウウー Saa7-fuVg)
23/12/28 16:10:11.78 Cpi03Itga.net
古典的な方法として正規表現があるけど
それではだめなの?

12:デフォルトの名無しさん (ワッチョイ f354-NbWU)
23/12/28 16:30:57.91 3LJz5hCH0.net
htmlのスクレイピングでも、こんなもん直接正規表現で抽出した方が早い、
という局面はよくあるけど、回り道して正攻法でやった方が結局うまく行く

13:デフォルトの名無しさん
23/12/28 22:45:10.41 EC2vWFQE0.net
XPathを模したJSONPathってのがあって
Python用のモジュールもあるからそれのが潰し効く

14:デフォルトの名無しさん
23/12/31 23:26:27.13 zAD+40EH0.net
Ruby なら、dig で、
配列はインデックスで、ハッシュはキーで指定できる
require 'json'
# 改行を削除する。削除しなくても同じ結果
json_str = <<'JSON'.delete( "\n" )
[{"あ":[{"い":1}, "x"]}]
JSON
p json_obj = JSON.parse( json_str )
#=> [{"あ"=>[{"い"=>1}, "x"]}]
p json_obj.dig( 0 ) #=> {"あ"=>[{"い"=>1}, "x"]}
p json_obj.dig( 0, "あ" ) #=> [{"い"=>1}, "x"]
p json_obj.dig( 0, "あ", 0 ) #=> {"い"=>1}
p json_obj.dig( 0, "あ", 0, "い" ) #=> 1

15:デフォルトの名無しさん (ワッチョイ 3d56-LR3M)
24/01/01 02:21:58.28 /RwaAIWF0.net
今からpyでGUIやるとしたら何がお勧め?
ちなみに社内利用のツール作りたい

16:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/01 05:29:55.18 8JDkd5n2M.net
PythonはGUIがとても弱い
これだけ流行ってもPythonでゲーム作る人少ないでしょう

17:デフォルトの名無しさん (ワッチョイ b2bd-mVFJ)
24/01/01 09:31:16.04 FY+JXkGU0.net
強弱は関係ない

18:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/01 09:41:18.11 LVCnPGal0.net
GUIは簡単にやれるならやってみようと手を出したけど、
全然簡単じゃない上にやりたいのと違うのしかできない
どうせ自分しか使わないならGUIにする必要もない
ということで見限ってる

19:デフォルトの名無しさん
24/01/01 10:14:09.09 Y+kcGNY5r.net
>>17
ライブラリが弱いって話だから大いに関係ある

20:デフォルトの名無しさん
24/01/01 16:58:47.27 TV87FrAo0.net
tkinterかPysimpleGUI

21:デフォルトの名無しさん
24/01/01 17:21:32.37 rZ1QEI030.net
目指すものによる
pygame(SDL)やEel(HTML)なんてのもあるし

22:デフォルトの名無しさん
24/01/01 20:04:03.89 yqkPDDz60.net
fletが好き

23:デフォルトの名無しさん (ワッチョイ 4d80-slPv)
24/01/02 05:16:39.05 H+L4L0Nu0.net
copilotすげーな
もっと短くできない?って聞くと毎回短くなって勉強させてくれるわ

24:デフォルトの名無しさん
24/01/02 10:17:40.38 rCzOacgf0.net
pysimpleguIってデフォルトのフォントサイズ変えらんないの?
いちいち設定するのめんどくせー

25:デフォルトの名無しさん
24/01/02 10:31:53.39 rCzOacgf0.net
あ、出来たわ
サイコー!

26:デフォルトの名無しさん
24/01/02 10:36:02.44 YHSrr3CM0.net
UIが欲しい訳でもないんだよな
設定やら入力はファイルから読み込むとかの方が楽に決まってる
動いてる最中に現在のステータスを表示させたり、
オプションをリアルタイムで変更したりしたい
CUIだと、コンソールにスクロールして表示されるのを目で追うとかになるし、
リアルタイムでの変更もできない

27:デフォルトの名無しさん
24/01/02 17:06:08.58 YHSrr3CM0.net
list1がインデックスのリストで、その[0:2]の内容をインデックスとした
list2の一部を取り出したい時はどう書いたらいい?

28:デフォルトの名無しさん
24/01/02 17:24:28.33 yAberLu60.net
>>26
>動いてる最中に現在のステータスを表示させたり、
>オプションをリアルタイムで変更したりしたい
両方ともCLIでもできるでしょ

29:デフォルトの名無しさん
24/01/02 17:28:18.91 yAberLu60.net
>>27
[list2[i] for i in list1[0:2]]
どういう形で取り出したいかとか
取り出した後にどう使いたいかで適切な方法は変わる

30:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/02 19:39:00.00 YHSrr3CM0.net
ああ、それだ
どうやってもループ的になるのは避けられないんだな
1行で書けるというだけで

31:デフォルトの名無しさん
24/01/02 21:01:40.65 YHSrr3CM0.net
def fill_rcsv(field, name, position):
  candidate = search(name, field)
  for position in candidate:
    fill_rcsv(field, name, position)
要素だけ書くとこんな感じの再帰呼出しで、
複数回呼ぶとうまくいかない
  for position in candidate[0:1]:
みたいに1回だけにするとばっちり動く
再帰で何かが上書きされてるんじゃないかと疑ってるけど、
そんな筈は無いし、何がおかしいんだろう

32:デフォルトの名無しさん
24/01/02 21:34:01.44 MhnXHP5rr.net
>>30
numpy使えば
arr2[arr1[0:2]]

33:デフォルトの名無しさん
24/01/02 21:36:03.53 MhnXHP5rr.net
>>31
何やりたいのか知らないけど引数のpositionが意味ないからそりゃ動かないだろうな

34:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/02 21:48:28.13 YHSrr3CM0.net
なんで意味ないの?

35:デフォルトの名無しさん (ワッチョイ b18d-nK/n)
24/01/02 21:51:12.00 gERpN8hs0.net
map(lambda x: list2[x], list1)

36:デフォルトの名無しさん
24/01/02 22:23:44.72 YHSrr3CM0.net
実際には終了条件の為にrestという変数も渡してる
fill_rcsv()の中でrest.pop(0)する
最初から空なら終了
呼び出しの時のrestを、rest.copy() にするだけで挙動が全然違う
再帰の時の引数にリストを渡した時の呼び出し元に対する影響がよく判らない

37:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/02 22:56:33.18 iDasqM+7M.net
>>36
いや再帰どうこうの以前に>>31見ただけでなんか設計おかしいのがわかるでしょ
candを計算するのにname, fieldしか使ってないのに
変数名positionをcandから取り出したやつで上書きしてイテレートしてる

38:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/02 22:57:38.80 iDasqM+7M.net
副作用がばりばりあってそれでも想定通り動くコードなのだとしたらその部分だけ見せてもわかるわけないしどっちにせよおかしい

39:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/02 23:06:10.04 YHSrr3CM0.net
省いちゃったけど、positionはfieldを更新するのに使ってる

ループが1重ならちゃんと動作するので、設計自体はおかしくないんだけど、
2回目以降を呼ぶ時に前回の影響が何故か残ってるとしか思えない

40:デフォルトの名無しさん (ワッチョイ 4601-EF0K)
24/01/02 23:27:49.93 tsCK1S6o0.net
>>36
>呼び出しの時のrestを、rest.copy() にするだけで挙動が全然違う
そりゃそうでしょ

>再帰の時の引数にリストを渡した時の呼び出し元に対する影響がよく判らない
再帰関係ないじゃん

引数にリストを渡した時の呼び出し元に対する影響がよく判らないのに
設計自体がおかしくないと思うのが間違い

41:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/02 23:32:04.47 YHSrr3CM0.net
そりゃそうでしょ、というのが全く実感できないんだよな
なんで動かないのか不思議で仕方ない

その根拠を知りたくて質問してるのに、
そんなの動かないよーだけでは同類

42:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/03 00:11:45.62 1+Mz/XnMM.net
質問の仕方でpython弱いのが分かるレベルなのに
開き直って甘えてんなあ
teratailとかでそんな聞き方したらぶち殺されるぞ
あまりスレ民の優しさに甘えるなよ

43:デフォルトの名無しさん (ワッチョイ c56e-NoMX)
24/01/03 00:20:02.95 WAHmHtMV0.net
Elixir の再帰では、リストの要素をすべて走査したら終了する。
引数には、accumulator・蓄積変数を持っている

リストを、[ head | tail ] に分解して、headを処理する。
tailを引数に渡して再帰する

終了条件は、tailが空[ ]になった時

[1, 2, 3] → [1,[2,3]] 1を処理
[2,3] → [2, [3]] 2を処理
[3] → [3, []] 3を処理
[] → 終了

44:デフォルトの名無しさん (ワッチョイ c279-9iEs)
24/01/03 00:24:10.82 tiof+l/G0.net
再帰呼び出しがうまくいきません
・終了条件のための引数restは省略しています
・引数positionの参照は省略しています
・引数fieldの更新も省略しています
・引数positionの算出も省略

重要な部分が省略されてて不具合なんて分かるわけがない

45:デフォルトの名無しさん (ワッチョイ c56e-NoMX)
24/01/03 00:30:19.66 WAHmHtMV0.net
Ruby のオブジェクトは、shallow copy だから、参照しかコピーされない。
内側のオブジェクトはコピーされずに、同一オブジェクトを使い回す

deep copy は難しい。
Python もそうなのかも?

46:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/03 00:31:22.73 LcImUTxt0.net
添削を依頼してる訳じゃないんだよな
400行のコード貼ったって誰も読まない
ループじゃ無ければ動く、という部分をとっかかりに
はまりポイントが思いつく人だけ反応してくれればいい

47:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/03 00:32:41.65 1+Mz/XnMM.net
今後もプログラミング続けるなら、まず質問する時に、後出し後出しで事故ってるとこをどんどん出すのはやめたほうがいい
教える側が普通に想像する事態について丁寧に説明しても、あとからあとから「いや、実はこうなんで」って出てくるなら、
どんな初心者の変なコードにも対応できる一般論や抽象的な話しかできなくなってしまう
そうなると有意義なアドバイスは難しい

それとは別に、ごくまともな指摘をもらっておいて
いや俺はわかってる、設計はあってる、でもなんかおかしい、俺は悪くない みたいなことを言わないほうがいい ムカつくし、単に嘘をついてるから
断片的な話だけで完全に設計間違ってることがわかるレベルで間違ってる

48:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/03 00:39:15.47 LcImUTxt0.net
丁寧に説明してないやんw

49:デフォルトの名無しさん (ワッチョイ 62ff-wGTU)
24/01/03 00:51:01.69 KdVdKcTt0.net
参照渡しと値渡しの概念すら理解してないんだろ多分

50:デフォルトの名無しさん (ワッチョイ 6e31-aVO2)
24/01/03 00:57:56.55 /ozK3YEK0.net
高卒SES共が喚きおるw

51:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/03 01:11:16.06 LcImUTxt0.net
結論としては、deepcopy()で解決した
ピンと来た人いるかな?

52:デフォルトの名無しさん (ワッチョイ c24f-tmHX)
24/01/03 01:26:32.45 1Vhp1t1B0.net
>ループが1重ならちゃんと動作するので、設計自体はおかしくないんだけど、
>2回目以降を呼ぶ時に前回の影響が何故か残ってるとしか思えない
ここジワるな

53:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/03 01:56:55.37 LcImUTxt0.net
リストをコピーして渡したいだけなのに、別モジュールのimportまで要ると思わんやん

ぐぐって見つかる再帰呼び出しの例は、再帰の魔法みたいな部分を強調したいので、
そんな面倒くさいケースは紹介しない

list.copy()というそれっぽいものが用意されていて、
大抵はそれでちゃんと別物として扱ってくれるので疑ってなかったのが敗因

浅いコピーと深いコピーの違いはぶっちゃけまだよく判ってない

54:デフォルトの名無しさん
24/01/03 03:27:46.18 1+Mz/XnMM.net
ここまでで二重配列って説明一切出てないけどどうやってバグらせたかはわかるよ
そもそも再帰なのに入れ子のミュータブルをdeepcopyで渡さないといけない時点で書き方確実に間違ってるからどうでもいい

55:デフォルトの名無しさん (スプッッ Sdc2-c3EK)
24/01/03 09:36:00.75 Hn1laHOqd.net
再帰関数の中でディープコピーとは
ヘビーなモノ作ってるねぇ

56:デフォルトの名無しさん (ワッチョイ 2e10-yToa)
24/01/03 10:38:21.88 ddCxQkeE0.net
やべーな…

57:デフォルトの名無しさん
24/01/03 12:42:33.64 8a8+YZHz0.net
>>53
>浅いコピーと深いコピーの違いはぶっちゃけまだよく判ってない
もう答え出てるやん

58:デフォルトの名無しさん
24/01/03 15:04:21.23 g3N633bF0.net
荒っぽく説明すると
デスクトップのショートカットだけコピーするのが浅いコピー
ショートカットの中身までコピーするのが深いコピー

59:デフォルトの名無しさん
24/01/03 15:11:36.20 EtnQA6qj0.net
1. listを渡す
2. list.copy()した結果を渡す(shallow copy)
3. list.deepcopy()した結果を渡す(deep copy)
ショートカットだけコピーするのは1じゃないか?

60:デフォルトの名無しさん
24/01/03 16:16:50.31 TWtcN/3Cr.net
だろうね
再帰でイミュータブル渡すならまずコピーでなく参照を渡して済むことがほとんどだし
そうじゃないならリストで渡さずタプルにして値で渡せばいい
あらゆる意味で変

61:デフォルトの名無しさん
24/01/03 16:17:41.41 9d0scbEX0.net
>>26
遅レスだけどWebで良いやん
streamlitみたいなのでサクッと作れば良くね?

62:デフォルトの名無しさん
24/01/04 08:43:33.03 Bfa1kVrNM.net
>>61
これ
もうネイティブアプリの時代じゃないんだよな

63:デフォルトの名無しさん
24/01/04 11:09:29.68 TXiVOLS30.net
webなのかー
ブラウザでやること自体のメリットはあんまり感じないけど、
ハードルが低いなら巻かれてみよう

64:デフォルトの名無しさん
24/01/04 12:24:20.61 JYOy60Zk0.net
俺はネイティブ派だけどね
やはり速度的に全然違うし
ただプログラミングスタイルとしてネイティブは終わってる

65:デフォルトの名無しさん
24/01/04 12:44:57.47 sQEt7tpm0.net
かないしことにwebについていけてない俺

66:デフォルトの名無しさん
24/01/04 12:46:29.15 TXiVOLS30.net
入力と出力の部品が一揃いあって使い慣れたものが目の前にあるじゃろ
という話なんだろうな
いろんなプラットフォームを意識する必要もない

67:デフォルトの名無しさん
24/01/04 12:49:45.92 TXiVOLS30.net
組み込みとか、金融とか、PGの仕事のジャンルという大きなくくりの一つとして、
webがあるんだよな
どこかの会社のホームページ作る仕事がそんなにあるの?
という話でもないらしい

68:デフォルトの名無しさん
24/01/04 13:17:29.54 soqHQibb0.net
何でもかんでもWebで作ろうとするのも何でもかんでもネイティブで作ろうとするのと同類

69:デフォルトの名無しさん
24/01/04 14:36:17.83 Dez+na860.net
redditかなんかでwebはゴールデンハンマーじゃないって言ってる人いたな

70:デフォルトの名無しさん
24/01/04 18:14:28.57 AtEpitve0.net
pythonでスクレイピングを行うvbaを起動するとTimeoutになってしまうんだけど、どうしたいいでしょうか。
ただ、VBA単体で実行するとブラウザは起動します。
エラー文:TimeoutError The driver failed to open listening port 127.0.0.1:54568 within 10s
■python構文
app = win32com.client.Dispatch("Excel.Application")
app.Visible = 1
app.Workbooks.Open(Filename=r"C:\XXX\XXX\XXX\XXX.xlsm")
app.Application.Run('OpenScrping02')
■VBA構文
Dim Driver As New ChromeDriver
'Dim Driver As New Selenium.ChromeDriver
Dim XPath As String
Dim element As String
Dim FWFlag As Boolean
Dim myBy As New By
Dim tmp As String
Driver.Get "chrome://settings/defaultBrowser"
↑でエラー文が発生します

71:デフォルトの名無しさん (ワッチョイ 3d56-LR3M)
24/01/05 10:38:06.98 bgnh+40l0.net
ここでnuitka知って使ってみたんだけど、作ったファイルがもれなくウイルス判定されちゃう。
どしたらいい?

72:デフォルトの名無しさん (ワッチョイ e57c-lTP4)
24/01/05 15:42:25.38 OXJtFwUv0.net
exe化しなきゃ良いんじゃね
寧ろexe化って何でするの?

73:デフォルトの名無しさん (ワッチョイ 068a-W4m0)
24/01/05 15:54:44.47 CRLJuRKT0.net
pythonが使えない人に使ってもらう為じゃ

74:デフォルトの名無しさん (ワッチョイ e57c-lTP4)
24/01/05 16:16:04.20 OXJtFwUv0.net
だからさstreamlitみたいなのでサクッとWebアプリ化して自社鯖なりクラウドにおいてURL叩くだけで使わせれば良いじゃん
わざわざexe化して配布して回るの?
修正とかしたらまた配り歩くの?

75:デフォルトの名無しさん
24/01/05 19:36:56.21 CRLJuRKT0.net
自社サーバーやクラウドが使えない企業なんじゃ

76:デフォルトの名無しさん
24/01/05 20:17:32.46 g/+l7Xoo0.net
>>71
コンパイル中にウィルス判定くらうからびびるね

77:デフォルトの名無しさん
24/01/05 20:59:15.61 P3pj9U7P0.net
raw=pandas.DataFrame({…
gb=raw.groupby(['name1','name2'])
gbmaxts=raw.loc[gb['totalScore'].idxmax(),:]
とやって、グループごとのtotalScore最大値の行を抜き出したいのですが、
問題はtotalScoreが重複した場合、どれを抜き出すか選べないのです。
score2というのがあって、重複した場合それの最大値で抜き出したいのですが、
どうやって記述すればいいでしょうか?

78:デフォルトの名無しさん
24/01/05 22:53:58.62 CVYX6lXR0.net
>>70
外部のスクリプトからExcelを開いたときはアドインとかライブラリへの参照が自動で追加されてないからとか?
エラーの内容がちょっと違う気もするけど念のためVBAで追加するようなコードを書いてみては

79:デフォルトの名無しさん
24/01/05 22:56:36.81 CVYX6lXR0.net
>>77
もっといいやり方がありそうだけど
gb=raw.groupby(['name1','name2’]).apply(lambda x: x.sort_values([“totalScore”, “score2”], ascending=False))とか

80:デフォルトの名無しさん (ワッチョイ 0904-P53C)
24/01/05 23:13:15.31 esWN4e6y0.net
>>74
exeが好っきゃねん

81:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/05 23:14:45.64 /M3pFdhP0.net
悪そうなexeは大体ウィルス

82:デフォルトの名無しさん (ワッチョイ 9901-K7ZM)
24/01/05 23:41:15.38 gyQRIy730.net
windowsならbatかpslでpython3を叩く自動スクリプト組んで配布すりゃよくね?初回起動時はポータブルなpythonをダウンロードするようにしてさ

83:デフォルトの名無しさん
24/01/06 05:01:59.44 JjfDjvUq0.net
今時の企業PCでexeファイルを許可なしでインスコ出来る事有る?
大抵は監視ソフト入っててインスコ出来ないようになってるよね
システム部門に申請して云々って手続きが必要とかさ

84:デフォルトの名無しさん
24/01/06 13:03:27.75 Bm30fRbr0.net
>>78
ありがとうございます。他を調べても同様のケースがないため、大変助かります。
可能でしたら、外部スクリプトから実行する際の構文などをご教示いただけないでしょうか。
また、改善するか不明ですが、現状のPythonでブック開く・マクロ実行までを、Pythonでブック開くまでにしてそれ以降はOpenイベントでマクロを実行する方法を試してみようと思います。

85:デフォルトの名無しさん
24/01/06 13:11:34.66 O8iz2Lme0.net
print('' in 'abc')
はTrueになる
print('abc'.index(''))
も0になって、
print('abc'.index('a'))
と区別が付かない
その文字が含まれるかどうかのテストに''ならFalseになるように
書くにはどうしたらいいだろう

86:デフォルトの名無しさん
24/01/06 15:02:18.93 B8r3vk8n0.net
なんじゃ?

87:デフォルトの名無しさん
24/01/06 15:14:44.79 O8iz2Lme0.net
そういう方針なのかと思ったら、
print('' in {'a', 'b', 'c'})
print(None in {'a', 'b', 'c'})
こういうのはちゃんとFalseなんだよな

88:デフォルトの名無しさん
24/01/06 15:16:09.97 UVNrTgIa0.net
先に空文字列と比較して弾く

89:デフォルトの名無しさん
24/01/06 15:23:37.20 x5UhZuS4M.net
まず 'ab' in 'abc' をその集合表記で書いたらどうなるか考えてみるべきだな

90:デフォルトの名無しさん
24/01/06 16:41:54.16 zuoTYpca0.net
pythonではそうなってますで終わりと言われればそれまでだが
包含か一致かの違いと考えれば辻褄が合うような

91:デフォルトの名無しさん
24/01/06 16:43:39.27 DBEfGZD30.net
>>83
会社にもよるし、部署にもよる

92:デフォルトの名無しさん
24/01/06 16:58:54.42 O8iz2Lme0.net
print('' in 'abc')
for c in 'abc':
print(c == '')
print('' in ['a', 'b', 'c'])
for c in ['a', 'b', 'c']:
print(c == '')
どちらもイテレータの中身のチェック
一番上だけTrue

93:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/06 17:17:20.43 x5UhZuS4M.net
len('')
len('a')
len('ab')
これは同じか?

94:デフォルトの名無しさん (アウアウクー MMb1-SV6x)
24/01/06 17:22:06.80 x5UhZuS4M.net
in演算子について誤解があるようだな
print('ab' in 'abc')
を書いてみてわからなかったらあきらメロン

95:デフォルトの名無しさん (ワッチョイ b119-nK/n)
24/01/06 18:53:00.25 TtodDVSd0.net
そう決められてるからで良いと思う

96:デフォルトの名無しさん (ワッチョイ fd54-Sdmn)
24/01/06 18:59:45.88 O8iz2Lme0.net
不便だし他と不整合だしメリットが見つからないし覚えにくい
最初にそうしちゃったから今更変えられないだけに見える

97:デフォルトの名無しさん
24/01/06 20:39:07.75 R3OUyaI00.net
>>96
勘違いしてるが、別に君のために開発された言語ではないよ。
君が言語に合わせるか、君が別の言語に移るかだ。
毎度毎度、知能が足らないのか?

98:デフォルトの名無しさん
24/01/06 21:58:55.80 TtodDVSd0.net
"" in ""

99:デフォルトの名無しさん
24/01/07 02:32:16.08 AyQnYcYI0.net
>>92
知らんかった、、
forの場合、in後の反復オブジェクトをiter化してStopIterationが出ると止めてるらしいので
in演算子後の文字列をiter化すれば同じ結果になるだろうけど

100:デフォルトの名無しさん (ワッチョイ ff9b-5x1m)
24/01/07 06:43:26.45 OFj05X8E0.net
URLリンク(docs.python.org)
__contains__の実装次第でどうにでもなるから深く考えない方がいい
文字列の場合はsubstringと決めただけ

101:デフォルトの名無しさん (ワッチョイ 5f54-RBu5)
24/01/07 11:02:41.98 D2Jhfkux0.net
文字列だと「なにもない」を部分であるとみなして、
集合は「なにもない」は部分ではないとする

わざわざそうするのは、こういう処理の時にシンプルに書けて合理的でしょ
という例が思い浮かばないんだよな

102:デフォルトの名無しさん (オッペケ Srb3-BDiM)
24/01/07 11:50:59.18 UlWxidQqr.net
馬鹿だから分からないだけ

103:デフォルトの名無しさん (オッペケ Srb3-BDiM)
24/01/07 11:54:53.69 UlWxidQqr.net
1文字が含まれるかどうか調べるときは1文字でin演算すればいい
部分列を高速に検索かけられる分できること増えてるだけじゃん
言語仕様に文句を言っていいのは、不必要に文法を複雑にしてるor性能を落としてるときだ
文字列検索ほど頻出なものに不平を言うのは想像力も経験も知恵も足りてないだけ

104:デフォルトの名無しさん
24/01/07 12:09:13.58 D2Jhfkux0.net
つまり、変なのは判ってるし、本当はFalseを返したかったけど、
アルゴリズム的にTrueにした方が高速に検索できるということかな
空で検索するのって、そんなにコストかかるか?
最初にFalseで落とすだけな気がするけど

105:デフォルトの名無しさん
24/01/07 12:14:01.04 wa10GErKr.net
リストや文字列の+、 *は、数の+、*と動きが全くちゃうでしょ
でも同じ演算子を使う
inの動きが変わるのも、それと実装の仕組みは同じ
+、*は盲目で受け入れてこれには文句言うのは、君にプログラミングの才能がない証拠

106:デフォルトの名無しさん
24/01/07 12:17:51.58 D2Jhfkux0.net
話を逸らすなよ
コストはかかるのか?

107:デフォルトの名無しさん
24/01/07 12:24:13.06 OFj05X8E0.net
え、こわい
> つまり、変なのは判ってるし
ここが盲目的ってことよ

108:デフォルトの名無しさん
24/01/07 12:28:34.29 wa10GErKr.net
その質問が、もう頭悪い
'' in 任意の文字列 は君の定義なら常にFalseでPythonの定義なら常にTrueなんだからどっちでも計算量O(1)
文字列照合のアルゴリズム1つも知らないでしょ
周りがおかしいんじゃなく、自分がおかしいと気づいて

109:デフォルトの名無しさん
24/01/07 12:30:47.74 D2Jhfkux0.net
まあ、そんなのはどうでもよくて
ちゃんと意味があってそうなってるんだから
っぽいことを口々に言ってるけど、誰も具体的に説明しない
疑問を持ってはいけない信者にしか見えない

110:デフォルトの名無しさん
24/01/07 12:57:44.19 sci9WlQL0.net
まず、''がどの文字列のsubstringでもあることは納得している?

111:デフォルトの名無しさん (ワッチョイ df01-7oM0)
24/01/07 17:38:24.57 5+E3QIG90.net
>>84
workbook = app.Workbooks.Open(workbook_path)
workbook.VBProject.References.AddFromFile(library_path) #ライブラリ参照の追加
app.AddIns.Add(addin_path).Installed = True #アドインの追加

112:デフォルトの名無しさん (ワッチョイ ffcf-mfjK)
24/01/07 19:17:19.79 0B+dDN0v0.net
>>109
ヒント出してる人はいるだろ。疑問を持っちゃいけないってんじゃなくて自分で考えてほしいんだよ。

113:デフォルトの名無しさん (ワッチョイ 5f54-RBu5)
24/01/07 19:57:16.52 D2Jhfkux0.net
print([] < ['a', 'b', 'c'])
print(set() < {'a', 'b', 'c'})
これはどちらもTrue

存在と包含は区別されている
文字列に対しては、部分文字列が存在するか、ではなく
部分文字列が包含されているか、という判断になっている

数学では、空集合は全ての全ての集合の部分集合と定義されている
pythonはそれを何の気なしに真似しただけで、
コーディング上のメリットは多分ない

114:デフォルトの名無しさん
24/01/07 22:07:49.51 TwcVJJcj0.net
家にあるバームクーヘン捨てた方が良い?
このままだと全部食ってしまう
ゴミ箱に入れて捨ててきた方が良いかな
痩せたいんだ

115:デフォルトの名無しさん
24/01/07 22:20:39.09 TwcVJJcj0.net
間違い

116:デフォルトの名無しさん
24/01/08 01:26:32.88 AMrdn5qYr.net
>>109
「話を逸らすなよ」から「そんなのはどうでもよくて」って頭おかしいのかな
君は馬鹿でプログラミングに向いてないからやめたほうがいいと思うよ

117:デフォルトの名無しさん
24/01/08 01:47:28.12 +d9aYMzGr.net
何故 'abc' でforループ回して出てくる  'a' でさらにforループ回せることは気にならなかったのかな。
for c in 'a':
print(c)
って書いてみな
その考えで言うとまず 'a' in 'abc' が判定できる時点でおかしいはず
'a'が配列なんだからね
君は論理的思考が苦手。論理的な人が文句をいうならそこに気付くはず
初心者が間違った思い込みを持って、現実で痛い目見てベソをかいてるだけ

118:デフォルトの名無しさん
24/01/09 18:33:15.79 Vu9b1JtR0.net
2は、シバン(1行目)をどう記述するといいの?
1 実行できる。(前提)
$ cat hello.py
#!/usr/bin/python3
print('こんにちは')
$ ./hello.py
こんにちは
2 エラーになる。但しコマンドラインからは実行できる。
$ cat trace.py
#!/usr/bin/python3 -m trace --trace
print('こんにちは')
$ ./trace.py
/usr/bin/python3: No module named trace --trace
$ /usr/bin/python3 -m trace --trace trace.py
こんにちは
$

119:デフォルトの名無しさん
24/01/09 18:44:05.47 0U/diL1hd.net
shebang行は引数を1つしか取れない仕様なので無理
なんかenv -Sを使うとできるらしいけどこれは裏技だろ
URLリンク(stackoverflow.com)

120:デフォルトの名無しさん
24/01/09 20:16:21.36 Vu9b1JtR0.net
>>119
なるほど。ありまとう。
$ ./env-s.py
--- modulename: env-s, funcname: <module>
env-s.py(3): print('おはよう')
おはよう
$ head -1 env-s.py
#!/usr/bin/env -S /usr/bin/python3 -m trace --trace

121:デフォルトの名無しさん
24/01/09 22:56:04.87 yAWwPWIFM.net
>>1
データを作りたいのだが、
配列の応用のページはないですか、
辞書と組み合わせて作るのかな、、、

122:デフォルトの名無しさん (ワッチョイ ff16-CQ+T)
24/01/10 02:15:30.29 jb9etaSC0.net
もうちょっと具体的に例出して
サンプルがほしいなら適度に複雑なjsonファイルを読み込んでマッピングされた構造を見れば、Pythonコンテナ型を組み合わせたデータの参考になるかもね

123:デフォルトの名無しさん (ワッチョイ 5f26-dvWY)
24/01/10 20:03:25.99 1+rGKMzm0.net
/usr/bin/python3 を単に、python3 と書けないの?

WSL2, Linux なら、
Ruby は、anyenv で入れた
which ruby
/home/ユーザー名/.anyenv/envs/rbenv/shims/ruby

which python3
/usr/bin/python3

ファイルの形式
file /usr/bin/python3
/usr/bin/python3: symbolic link to python3.6

file `which python`
/usr/bin/python: symbolic link to python2.7

file `which python2`
/usr/bin/python2: symbolic link to python2.7

file `which python3`
/usr/bin/python3: symbolic link to python3.6

readlink -f /usr/bin/python3
/usr/bin/python3.6

124:118 (ワッチョイ ff2a-vxeA)
24/01/10 21:28:20.35 tkcC6j/f0.net
>>123
書けない。

$ head -1 seabang.py
#!python3 -m trace --trace
$ ./seabang.py
bash: ./seabang.py: 実行できません: 必要なファイルがありません

またコマンドラインで、
> $ /usr/bin/python3 -m trace --trace trace.py
と敢えてフルパスで書いたのは、コマンドサーチパスによって、
/usr/local/bin/python3 や、
/opt/bin/python3 をつかまされたのでなく、
> #!/usr/bin/python3 -m trace --trace
と同じものである事を明示した。

125:デフォルトの名無しさん (ワッチョイ ffec-NF1f)
24/01/12 13:04:31.27 tRoUC1RJ0.net
あの言語が初の2023年「プログラミング言語オブザイヤー」に TIOBE指標
スレリンク(newsplus板)

126:デフォルトの名無しさん
24/01/12 16:14:20.07 X3Et3NVj0.net
さすあの言語

127:デフォルトの名無しさん (ワッチョイ 5fa6-e3w4)
24/01/12 23:13:49.86 qpkwrl5Y0.net
酒飲みながらプログラムしたらダメだな、、、
完成しないのはともかく、これまで作ったプログラムもグチャグチャになった

128:デフォルトの名無しさん
24/01/14 00:31:39.78 2hOInSqy0.net
>>123
alias python=/usr/local/bin/python3

129:デフォルトの名無しさん
24/01/14 00:42:31.25 qiQHyAuR0.net
shebang解釈するのはOS
シェルのaliasなんて知ったこっちゃない

130:デフォルトの名無しさん
24/01/14 01:10:46.48 2hOInSqy0.net
はーUNIXってめんどくせーな

131:デフォルトの名無しさん
24/01/14 02:18:10.75 7LBFQKTK0.net
alternativesコマンド使えよ

132:デフォルトの名無しさん (ワッチョイ dd54-gTDN)
24/01/14 15:18:15.99 Q2PJ+y/b0.net
lru_cacheを引数がリストの関数にうまく使えないものか

133:デフォルトの名無しさん (ワッチョイ 6e2a-Y4mw)
24/01/14 17:09:07.05 TH9x5mnt0.net
日本の風邪には lru 3錠

134:デフォルトの名無しさん
24/01/20 18:43:10.52 YNA0HNCL0.net
SQLAlchemy 2.0.x
リレーションシップ周りでめっちゃエラー出まくる
一応未だに更新のある1.4.x系の最新版で安定
速度とか関係あるのかわからないけど2.0.xはもう諦めた・・

135:デフォルトの名無しさん (ワッチョイ 799a-yxEf)
24/01/20 19:56:04.61 /L7Db3ea0.net
FastAPIで画像を返す方法です
以下のurlをコピペしましまたが、/image/jpgにアクセスすると、サーバー側に
AttributeError: 'tuple' object has no attribute 'tobytes'
とエラーが出て画像が表示されません
どこがおかしいんでしょうか?

URLリンク(qiita.com)

136:デフォルトの名無しさん (ワッチョイ aef4-cQcU)
24/01/20 20:35:18.09 60EP5gQY0.net
>>135
この部分を
byte_image = cv2.imencode(".jpg", im)
これに
_, byte_image = cv2.imencode(".jpg", im)

137:デフォルトの名無しさん (ワッチョイ 799a-yxEf)
24/01/20 20:38:57.00 /L7Db3ea0.net
>>136
どうもありがとうございます!うまくいきました!
「_, 」はなにを表しているんでしょうか?

138:デフォルトの名無しさん (ワッチョイ 8259-Kt/h)
24/01/20 20:54:35.40 bVsXkJM80.net
>>135
アンパック
例えば
ary = [11,22,33]
a=ary[0]
b=ary[1]
c=ary[2]
print(a,b,c)

d,e,f=ary
print(d,e,f)
みたいに書ける

139:デフォルトの名無しさん (ワッチョイ 799a-yxEf)
24/01/20 21:08:58.00 /L7Db3ea0.net
>>138
どうもありがとうございます!
何かを省略する方法っぽい事はなんとなく分かりましたがそれ以上は全くわかりませんでした。。。😢

140:デフォルトの名無しさん
24/01/20 22:11:16.53 Wt8BDq5K0.net
3.12.1でlen(list[str])=1270のlenを大幅に超える[8950:]でスライスすると
ランタイムごとコケるバグ見つけた
詳しい条件わからん
バグ報告任せた

141:デフォルトの名無しさん (ワッチョイ 7292-Kt/h)
24/01/20 23:28:31.66 L0GckCs+0.net
訂正&メモ >>134
1.4.51だとなぜか1ペアしかリレーションシップできない
1.4.35だとすべて完璧
原因はわからん

142:デフォルトの名無しさん (ワッチョイ 2754-08sO)
24/01/21 00:03:32.85 P8Z4Rari0.net
アンパックすぐバグる
やっぱり戻り値は1つで複数要るならclassにするべき

143:デフォルトの名無しさん
24/01/21 01:15:24.18 po0/ndNG0.net
どうバグるのか知りたいが
最近は気軽にタプルでエラーも返すのも多いね

144:135でないが (ワッチョイ e746-3F89)
24/01/21 10:23:36.26 o2VBG8hD0.net
>>138
「_, 」と、(1)アンダースコア(2)カンマ(3)空白の説明を求められたのに、(2)しか説明していないじゃないか。一を聞いて1/3を知る病気ならともかく、そうじゃないなら真面目にやりたまえ。

145:デフォルトの名無しさん
24/01/21 12:34:58.93 P8Z4Rari0.net
戻り値の3番目を使って、とかやってるうちに、
設計変更で4番目に変わったりする
引数も順序に依存する実装は危険でこれは名前で渡せば済む

146:デフォルトの名無しさん
24/01/21 13:17:49.68 sojbDPP/M.net
pythonはdictionary型の扱いが超簡単だから
あえてリストやタプル使うメリットは少ない

147:デフォルトの名無しさん
24/01/21 13:24:37.87 P8Z4Rari0.net
でも辞書はいちいち新規かチェックして新規なら空要素自前で追加しないとエラーになる

148:デフォルトの名無しさん
24/01/21 14:21:19.60 4j/edAe10.net
defaultdictというのがあってだな

149:デフォルトの名無しさん
24/01/21 14:23:04.39 4j/edAe10.net
リストもタプルも使うべきところがある
位置引数とキーワード引数の使い分けも同じ話
常にどちらか一方が優れてるわけではない

150:デフォルトの名無しさん
24/01/21 14:25:23.39 P8Z4Rari0.net
あるのは知ってるけど、やっぱり使わない方がいいという結論になった
autovivificationは便利すぎて人間の手に余る

151:デフォルトの名無しさん
24/01/24 17:22:01.11 qE5i82RQ0.net
simplenote のAPIを使いたいと思っています。
PIPでのインストールはできたのですが、
その先に進めずにいます。
特定のノートの表示、或いは書き込みのサンプルって
どこかにありませんでしょうか。

152:デフォルトの名無しさん
24/01/24 17:34:12.86 +ohNM6I10.net
>>151
どのモジュールかわからんがコードやサイトはみた?
URLリンク(pypi.org)
もしこれならコードのコメントから生成したサイト
URLリンク(simplenotepy.readthedocs.io)
もあったけどシンプルで詰まる要素はなさそう

153:デフォルトの名無しさん
24/01/24 17:45:37.79 qE5i82RQ0.net
>>152様、
早々のレスありがとうございます。上のサイトは確認しました。
ただ、まだそれを見て理解できるレベルに無い為、サンプルがあればなぁと思った次第です。
下のサイトはもう少し詳しい情報があるようなので、読んでみてすすめてみたいと思います。

154:デフォルトの名無しさん
24/01/27 11:53:42.32 0NhbJ8Wy0.net
モザイクを検出して、透過に塗りつぶして、別の画像に貼り付けるプログラムを
作ったので良かったら遊びにきて下さい
wikiwiki
同人誌同人ゲーム無修正化差し替え備忘録まとめ Wiki*
URLリンク(wikiwiki.jp)
左のメニューのところにプログラムを貼り付けてあります

155:デフォルトの名無しさん
24/01/27 12:49:01.53 adhbL1sP0.net
Pythonやってるのって韓国人ばかりだからな。
Pythonのことは韓国人に教えてもらうのがいいね!
スレ主も韓国人だよ!
よろしくね!
マンセー!

156:デフォルトの名無しさん
24/01/27 13:12:03.24 iYaqlGb/0.net
Pythonやってるのはアメリカ人では?

157:デフォルトの名無しさん
24/01/27 13:14:35.22 iVwMSijj0.net
イギリス人だよ

158:デフォルトの名無しさん
24/01/27 13:49:00.50 xBRVRWWV0.net
ネトウヨはPythonじゃなくて何やるの?

159:デフォルトの名無しさん
24/01/27 14:18:31.74 FVNmXnrw0.net
ruby

160:デフォルトの名無しさん
24/01/27 14:19:22.20 UmjQ6ogE0.net
DNCLとかCASLとか?
環境から設計、構築せんとなにもできんけど

161:デフォルトの名無しさん
24/01/27 14:31:41.13 RgsoOhIN0.net
真の玄人は自作言語で遊ぶのかも知れんね
そして誰にも使ってもらえないうえにライブラリも作ってもらえない孤独と戦い続ける自分に酔う

162:デフォルトの名無しさん
24/01/27 14:32:21.12 iYaqlGb/0.net
>>158
優雅にシェルスクリプトやるけど

163:デフォルトの名無しさん
24/01/27 14:38:47.19 iVwMSijj0.net
自作言語はみんな作るでしょ
たとえば、改行で区切られたテキストファイルがいくつかあって、
それらのandをとりたいとか、orをとりたいとか、
引き算したいとかの要求があって
それぞれ別に演算したものを最後に結合するとか複雑になってくると、
簡易言語にして処理させた方が楽だし間違わない

164:デフォルトの名無しさん
24/01/27 14:42:45.64 iYaqlGb/0.net
>>163
それsedやawkとかを駆使するんじゃだめなん?

165:デフォルトの名無しさん (ワッチョイ e77c-3nFm)
24/01/27 15:11:07.85 JGqkehCy0.net
>>158
Adaは必須だぞ

166:デフォルトの名無しさん (ワッチョイ 2754-08sO)
24/01/27 15:58:13.54 iVwMSijj0.net
sedではさすがに無理だろうな
awkを駆使するのもperlを駆使するのもpythonを駆使するのもだいたい同じ

167:デフォルトの名無しさん
24/01/27 17:41:35.12 adhbL1sP0.net
Pythonやってるのは朝鮮人だよ。
朝鮮民族は優秀だからね。
マンセー!

168:デフォルトの名無しさん (ワッチョイ 5fb2-lb9z)
24/01/27 18:20:33.14 XATQ3Seh0.net
Ubuntuでpythonの仮想環境を作ってやろうと、virtualenvwrapperインストールしてみたんだけど、python2.7の仮想環境作れない
python3の仮想環境は作れるのになんでなんだよ

169:デフォルトの名無しさん
24/01/28 08:27:37.48 oGUqOnQT0.net
10年くらい前のうぶんちゅでやればいいんじゃね

170:デフォルトの名無しさん
24/01/28 10:23:45.33 FsKreJ+lM.net
perl が書きやすいな。
短くてすむし。

171:デフォルトの名無しさん
24/01/28 11:05:18.45 p3aFFEDG0.net
パズル解かせるツール作ったけど、時間かかる
手軽にコンパイルして1000倍くらい高速化できないかな

172:デフォルトの名無しさん
24/01/28 11:21:35.15 Z6St36Gea.net
ゆーぶんつ だからな

173:デフォルトの名無しさん
24/01/28 11:29:31.28 Yx5WT5p70.net
古い本だとpython2だから仮想環境作りたいのに
手直しでpython3のコードにするしかないのか

174:デフォルトの名無しさん
24/01/28 11:53:21.76 DsZuLMRu0.net
古いCPythonはOSが仮想じゃないと動かすのイヤだけど
IronPythonつかうのは?
>>171
PyPy

175:デフォルトの名無しさん (ワッチョイ 914c-VZBr)
24/01/28 11:57:18.88 YaSmQ++K0.net
バージョンよって剰余演算子の挙動が違う?
-1%3とか

176:デフォルトの名無しさん
24/01/28 15:00:04.30 dJCvp/mJ0.net
Goしか勝たん

177:デフォルトの名無しさん (ワッチョイ a510-7cac)
24/01/28 22:00:26.48 YIEH2wXy0.net
EXEを作るのにPyinstallerを単純に使うとDefenderに引っかかる上にできたEXEをマルウェアと誤認識する。
EXEを作るのに何かいい方法は無いですか?

178:デフォルトの名無しさん (スプッッ Sdea-/kxR)
24/01/28 22:34:48.90 89INJw2Rd.net
C#あたりを利用する

179:デフォルトの名無しさん
24/01/28 23:35:55.61 XA4USmaU0.net
beautifulsoup使うとpylanceに怒られて真っ赤になるのが悩みなんですが
isinstance使わないでアノテーションで上手く誤魔化す方法って無いんですかね

180:デフォルトの名無しさん
24/01/29 01:23:41.33 fIBxeYXl0.net
>>177
超初心者スレの319-320

181:デフォルトの名無しさん
24/01/29 07:04:44.51 BQjVYH600.net
>>177
参考
URLリンク(gamingpc.one)

182:デフォルトの名無しさん (ワッチョイ a510-7cac)
24/01/29 14:19:04.33 eAHTiPqF0.net
>>180
>>181
ありがとう

183:デフォルトの名無しさん
24/01/29 17:15:55.16 bcp1g5iWa.net
pythonはオワコンですか?

184:デフォルトの名無しさん
24/01/29 17:52:08.04 oRNxL8Vy0.net
AIに使われてる場合は速度は問題になってないの?

185:デフォルトの名無しさん
24/01/29 18:06:50.34 dJGrkc+s0.net
Pythonが遅いところはPythonで処理せずC言語等で書かれた速いライブラリで処理するので問題にならない

186:デフォルトの名無しさん
24/01/29 18:51:05.91 bhL+9uC20.net
PythonをオワコンにするはずのJuliaがほぼ行きがけてます

187:デフォルトの名無しさん
24/01/29 18:52:02.75 btYGb7of0.net
Julia全く人気出ないよなー
悪くない言語だけどわざわざ乗り換えるほどではないというね

188:デフォルトの名無しさん
24/01/29 18:58:08.69 oRNxL8Vy0.net
誰かがライブラリ作ってくれるのを待つのではなく、
時間がかかると判ってる部分を自力でCで書いて高速化するハードルが低いといいのに
あるべき進化の方向じゃない気がするけど、結局そういうのが楽で速い

189:デフォルトの名無しさん (ワッチョイ 7579-/zjy)
24/01/29 19:43:27.61 oBf6u64L0.net
pythonは低いよ

190:デフォルトの名無しさん (ワッチョイ bd38-Mq/i)
24/01/29 19:49:45.50 fIBxeYXl0.net
いまどきの言語でCブリッジ書きにくいって稀
速度だけがネックならCodon, PyPy, Cythonとか使えばええし

191:デフォルトの名無しさん (ワッチョイ 6610-RfzI)
24/01/29 20:18:50.45 pi/nPLJ70.net
Mojoとかどうなったんだ

192:デフォルトの名無しさん
24/01/29 20:33:46.69 bhL+9uC20.net
GIL撤廃とmojoの完成でjulia等は完全あの世逝き

193:デフォルトの名無しさん
24/01/29 21:13:04.59 hEulhj+a0.net
ぶっちゃけmojoはjuliaとやってることは同じ
juliaのシンタックスをpythonして作り直そうとしてるのがmojo

194:デフォルトの名無しさん (ワッチョイ a6eb-9npH)
24/01/29 22:01:30.36 mQhOsrx10.net
CodonとかPyPyとかnumbaは終わるよ
mojoが完成したら

195:デフォルトの名無しさん (ワッチョイ 5df0-JElb)
24/01/29 22:21:56.82 btYGb7of0.net
まあそう簡単に完成しないんだけどね

196:デフォルトの名無しさん (ワッチョイ a510-7cac)
24/01/29 22:30:11.59 eAHTiPqF0.net
>>194
DecimalとかMpmathも高速化する?

197:デフォルトの名無しさん (ワッチョイ 6689-0xTp)
24/01/29 22:52:05.10 UlLdvebN0.net
なんか最近頭の中にインタープリタでもできたのか知らないが
字句解析と構文解析と意味解析が自然にできるようになった。

198:デフォルトの名無しさん
24/01/30 00:41:49.20 wNUL/Z7u0.net
>>168
バージョン管理して共存する方法あるでしょ。

199:デフォルトの名無しさん
24/01/30 03:56:42.44 PGl7GW0y0.net
>>198
その方法がわかんねって意味で書いたんだよ
メインのpythonの環境がpython3.11だったからこいつにvirtualenvwrapper入れたんだけど、ネットで調べた方法のようにmkvirtualenvで、python2指定してもエラーでて仮想環境作れない
python3なら作れるんだけど

200:デフォルトの名無しさん (ワッチョイ bd38-Mq/i)
24/01/30 04:09:17.47 H114t2aY0.net
ネットで調べたとあるけどマニュアルか公式サイトは先に読んだの?
ライブラリの集合を切り替えるのであってPython本体を切り替えるものではないよ

201:デフォルトの名無しさん (ワッチョイ 6ab2-LB4U)
24/01/30 04:44:03.79 PGl7GW0y0.net
>>200
URLリンク(www.python.jp)
これ見てやったけどうまくいかない

202:デフォルトの名無しさん
24/01/30 07:13:51.04 +4xIQxEO0.net
>>197
プログラム言語の字句解析と構文解析と意味解析ができないと、プログラムを組めないでしょ。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

13日前に更新/176 KB
担当:undef