↑スレ立てる毎に減るので、減ってたら3つに補充すること。
・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
エラー文(勝手に省略orスクショうp等の横着禁止)と
おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。
★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
探検
Pythonのお勉強 Part70
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8b01-Qpn1)
2023/03/04(土) 00:18:00.31ID:dUl31UkL0200デフォルトの名無しさん
2023/04/20(木) 00:14:41.43ID:dFvm1wua >>199
それは自作だからあえて変えてるだけで実際内部では実質
Path("ディレクトリやファイルのパス").glob(pattern).filter(処理for_each)
したり、再帰したり、しなかったりだよ
わざわざ存在しないクラス名、メソッド名使ってるのになぜそんな解釈したのかちょっと謎すぎる
globを使っていないわけではなくglobのイテレータ維持したまま最後の処理までするのは面倒なので断念しただけ
処理の部分が例えば”直接ファイル操作(removeなど)”みたいな投げっぱな単純な処理ならglob完結でいいけど
処理結果を返したり保持したい場合や、処理途中でファイル更新、単にパス名を文字列だけの用途として利用したい場合など個人的にあったので
あえてイテレータの恩恵少ないしforループ隠蔽するために、自分の場合はクラス化ほぼほぼ一択と判断しただけ
どの道、forループ処理は一度でも行う、はあなたがやってもだれがやっても行き着く事実であって設計云々ではないですね
あなたの想像し得る基本的な用途なら別にforループforループforループで良いしクラス化とか必要ないと思いますよ
見づらいだろうなぁとは思うものの、そこに関しては全然悪いとは思っていません
お好きなように
それは自作だからあえて変えてるだけで実際内部では実質
Path("ディレクトリやファイルのパス").glob(pattern).filter(処理for_each)
したり、再帰したり、しなかったりだよ
わざわざ存在しないクラス名、メソッド名使ってるのになぜそんな解釈したのかちょっと謎すぎる
globを使っていないわけではなくglobのイテレータ維持したまま最後の処理までするのは面倒なので断念しただけ
処理の部分が例えば”直接ファイル操作(removeなど)”みたいな投げっぱな単純な処理ならglob完結でいいけど
処理結果を返したり保持したい場合や、処理途中でファイル更新、単にパス名を文字列だけの用途として利用したい場合など個人的にあったので
あえてイテレータの恩恵少ないしforループ隠蔽するために、自分の場合はクラス化ほぼほぼ一択と判断しただけ
どの道、forループ処理は一度でも行う、はあなたがやってもだれがやっても行き着く事実であって設計云々ではないですね
あなたの想像し得る基本的な用途なら別にforループforループforループで良いしクラス化とか必要ないと思いますよ
見づらいだろうなぁとは思うものの、そこに関しては全然悪いとは思っていません
お好きなように
201デフォルトの名無しさん (ワッチョイ a75f-ABex)
2023/04/20(木) 00:24:53.99ID:QMVhjkAJ0 os.walkオジサンになっていい?
202デフォルトの名無しさん
2023/04/20(木) 00:25:34.76ID:dFvm1wua 実際forループで書いて管理しきれなくなってからのos.pathやらpathlibの拡張なんで
何がなんでもosのみpathlibのみで書く縛りがあるなら別に書けばいいと思うけど。
自分はあとあとのこと考えると管理面倒だからforループforループで管理は無理だな
「あのディレクトリの○○なファイルだけ発見したい」みたいな超シンプルな使い方のみの想定ならそれでいいと思うけど
何がなんでもosのみpathlibのみで書く縛りがあるなら別に書けばいいと思うけど。
自分はあとあとのこと考えると管理面倒だからforループforループで管理は無理だな
「あのディレクトリの○○なファイルだけ発見したい」みたいな超シンプルな使い方のみの想定ならそれでいいと思うけど
203デフォルトの名無しさん (ワッチョイ 5f01-9fcd)
2023/04/20(木) 01:25:19.09ID:R0tK1jDo0 >>200
うーん”設計”が伝わらないとは・・・
じゃPathEX(data_dir_path).find_dir(pattern).delete_files_with_chars(characters)で頑張ってくれ
俺は諦めた
うーん”設計”が伝わらないとは・・・
じゃPathEX(data_dir_path).find_dir(pattern).delete_files_with_chars(characters)で頑張ってくれ
俺は諦めた
204デフォルトの名無しさん (ワッチョイ 7f10-iKPJ)
2023/04/20(木) 08:09:16.58ID:uCwEPaTc0 ワッチョイ消してるやつの相手すんなよ...
205デフォルトの名無しさん (ワッチョイ a754-sFbk)
2023/04/20(木) 09:18:43.87ID:Gkc0C+yM0 IPは消してたけどワッチョイ消したことはないな
なんだろう
うまい喩えが見つからないけど、死ぬほど恥ずかしい
なんだろう
うまい喩えが見つからないけど、死ぬほど恥ずかしい
206デフォルトの名無しさん
2023/04/20(木) 09:26:39.56ID:dFvm1wua
Pythonはシンプルな言語だがオモチャでない。
208デフォルトの名無しさん (ワッチョイ a75f-ABex)
2023/04/21(金) 01:14:13.92ID:KCdL0+Bq0 いろいろ目をつむらないとシンプルに扱えないから
玩具の品質には到達していないのはわかる
玩具の品質には到達していないのはわかる
209デフォルトの名無しさん (ワッチョイ a754-sFbk)
2023/04/21(金) 01:27:36.69ID:fM6D7Jjb0 おもちゃとは考えが逆だろう
最小のコードで複雑なことができたら楽しい
pythonは暗黙でいろんなことが決まるのを避けるので、何かするならきっちり指定する
きっちり指定してきっちり動いても何も面白くはない
最小のコードで複雑なことができたら楽しい
pythonは暗黙でいろんなことが決まるのを避けるので、何かするならきっちり指定する
きっちり指定してきっちり動いても何も面白くはない
Python以外で何かいい言語はありますか?
211デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/23(日) 00:04:54.40ID:DlHbN44X0 GoやってGoの仕事に就くとしばらく食える
212デフォルトの名無しさん (ワッチョイ 66fb-k8Rs)
2023/04/23(日) 00:11:46.19ID:Y0v5ztu40 pep8とzenくらいやっとけばMonkになれる
213デフォルトの名無しさん (ワッチョイ 66fb-k8Rs)
2023/04/23(日) 00:12:41.43ID:Y0v5ztu40 所謂monkに文句無し的な
214デフォルトの名無しさん (ワッチョイ 66fb-k8Rs)
2023/04/23(日) 00:13:34.99ID:Y0v5ztu40 ふふってなった ちんこ痒い
215デフォルトの名無しさん (ワッチョイ a95f-Be6V)
2023/04/23(日) 01:40:11.94ID:RcbzEQSV0 香ばしいレスが多いな
Go言語はCから学ばなくても修得できますか?
217デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/23(日) 02:32:01.30ID:X2+aRqhz0 Rustとまちがってない?
まーどの高級言語も先にCやってた方がだんぜん理解深まるけどね
まーどの高級言語も先にCやってた方がだんぜん理解深まるけどね
218デフォルトの名無しさん (ワッチョイ a633-F6q8)
2023/04/23(日) 14:44:10.81ID:U/RsZCHU0 >>217
今は順番が逆
今は順番が逆
219デフォルトの名無しさん (アウアウウー Sa21-PXVT)
2023/04/23(日) 15:34:25.39ID:fUzoPDLKa 文系でウェブ系なら、Ruby on Rails 1強。
米国年収でも、Rails, AWS Solution Architect が13万ドル
Ruby, Elixir : 9.3 万ドル
Go : 8.9
Rust : 8.7
多くの言語 : 6.5〜7
PHP : 5
Dart : 4.4
日本では、バックエンドの求人倍率が数倍で、
フロントが0.5倍と、10倍の開きがある。
フロントは供給過剰で、低価格競争になっている
つまり欲しい人材は、Rails, Linux, Docker, AWS が出来る香具師
YouTube で有名な雑食系エンジニア・KENTA は、
キャリアパスを、Rails → Go のみと言ってる
理系ならPython で、大学院数学科とか、AWS 機械学習の資格など
米国年収でも、Rails, AWS Solution Architect が13万ドル
Ruby, Elixir : 9.3 万ドル
Go : 8.9
Rust : 8.7
多くの言語 : 6.5〜7
PHP : 5
Dart : 4.4
日本では、バックエンドの求人倍率が数倍で、
フロントが0.5倍と、10倍の開きがある。
フロントは供給過剰で、低価格競争になっている
つまり欲しい人材は、Rails, Linux, Docker, AWS が出来る香具師
YouTube で有名な雑食系エンジニア・KENTA は、
キャリアパスを、Rails → Go のみと言ってる
理系ならPython で、大学院数学科とか、AWS 機械学習の資格など
PythonとGoを両方やることにします。Goも教材がたくさんありますね。現在、人気の
言語ですね。
221デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/24(月) 00:07:55.90ID:HkcOJ3w60 結局ベースにCがあるんだよな
Cでも書けることを、より簡単に、より堅牢に、より保守性高く、書き直しているに過ぎない
そもそもCで書けんわというアーキテクチャーが登場するまで、Cは残り続ける
Cでも書けることを、より簡単に、より堅牢に、より保守性高く、書き直しているに過ぎない
そもそもCで書けんわというアーキテクチャーが登場するまで、Cは残り続ける
C言語。デニス・リッチーですか。長寿の言語ですね。WindowsOSもC言語で書かれて
いるんですね。
223デフォルトの名無しさん (ワッチョイ 66fb-nb5X)
2023/04/25(火) 13:51:41.19ID:FPTpqTcN0 goやpythonよりもPHPやったほうが良い
224デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/25(火) 22:11:51.74ID:+HdKZSwh0 Webアプリ以外でもPHPで書くの?酔狂やね
225デフォルトの名無しさん (アウアウウー Sa21-k8Rs)
2023/04/26(水) 12:04:22.99ID:cIPQx0Y6a MLでPHPとPython使うだろうjk
226デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/26(水) 18:39:27.90ID:JavlcTjg0 perlで作ったツールを移植してるけど
if key3 not in d[key1][key2]:
d[key1][key2][key3] = {}
みたいなのがたくさん追加で要る
しかもループの中で毎回評価してて気持ち悪い
autovivificationを使わずに多次元辞書をすっきり書けないものか
if key3 not in d[key1][key2]:
d[key1][key2][key3] = {}
みたいなのがたくさん追加で要る
しかもループの中で毎回評価してて気持ち悪い
autovivificationを使わずに多次元辞書をすっきり書けないものか
227デフォルトの名無しさん (ワッチョイ 6646-0EuI)
2023/04/26(水) 21:19:22.89ID:vPfd2wHV0 暗黙の初期化のような、うちうちのノリが多くて、Perlは嫌われたんだろ。
228デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/26(水) 21:33:02.57ID:JavlcTjg0 keyが存在するかどうかのチェックはどうせ毎回やってるんだから同じことか
229デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/26(水) 22:20:00.88ID:VuAuol7y0 defaultdict
230デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/26(水) 22:29:32.74ID:JavlcTjg0 from collections import defaultdict
d = defaultdict(dict)
d['a']['b']['c'] = 1 # KeyError: 'b'
2次元までなら
d = defaultdict(dict)
d['a']['b']['c'] = 1 # KeyError: 'b'
2次元までなら
231デフォルトの名無しさん (ワッチョイ 6da7-sx73)
2023/04/26(水) 22:43:05.12ID:k7DLXEM30 辞書をそんなネストしないといけない時点で根本的に設計がおかしいのでは?
232デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/26(水) 22:47:14.72ID:VuAuol7y0 def deepdict(): return defaultdict(deepdict)
d = deepdict()
d['a']['b']['c'] = 1
もっとうまく書けるかもしれんけど
d = deepdict()
d['a']['b']['c'] = 1
もっとうまく書けるかもしれんけど
233デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/26(水) 22:52:56.90ID:JavlcTjg0 dictだけ続くならいいけど、listが混ざったりするんだよな
234デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/26(水) 22:56:15.01ID:VuAuol7y0 後出しは書く必要ない
任意の関数渡せるんだからスキにしたらええ
任意の関数渡せるんだからスキにしたらええ
235デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/26(水) 23:03:54.93ID:JavlcTjg0 a[1] がlistなのかdictなのか判らんという時点で、pythonでは自動は無理なんだよな
l = []
l[1] = 1 # IndexError
perlはこれが出来るというのも、かなりの飛躍がある
l = []
l[1] = 1 # IndexError
perlはこれが出来るというのも、かなりの飛躍がある
236デフォルトの名無しさん (ワッチョイ a633-ASru)
2023/04/26(水) 23:05:17.48ID:sUnbpfBB0 jsonで受け取ったデータをデコードしてそのまま使ってるとかじゃないの
237デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/27(木) 16:04:02.47ID:BTOHfqgT0 if m := re.search(パターン1):
処理1
elif m := re.search(パターン2):
処理2
else
処理3
みたいに書いていたものを、:= を使わないように変更
m := re.search(パターン1)
if m:
処理1
else:
m := re.search(パターン2)
if m:
処理2
else
処理3
気持ち悪い
elifは展開するともともとこういうものだから仕方ないのか
処理1
elif m := re.search(パターン2):
処理2
else
処理3
みたいに書いていたものを、:= を使わないように変更
m := re.search(パターン1)
if m:
処理1
else:
m := re.search(パターン2)
if m:
処理2
else
処理3
気持ち悪い
elifは展開するともともとこういうものだから仕方ないのか
238デフォルトの名無しさん (スッップ Sd0a-LN7w)
2023/04/27(木) 16:11:37.78ID:Noc5t00Md assignment expressionが必要になった理由がそれだから仕方ないね(pep572)
239デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/27(木) 16:43:35.35ID:SfEpe4Pu0 m = None
def search(pat):
____global m
____m = re.search(pat, str)
こういうのを直前に書くとか
def search(pat):
____global m
____m = re.search(pat, str)
こういうのを直前に書くとか
240デフォルトの名無しさん (ワッチョイ 4954-RykB)
2023/04/27(木) 16:50:03.39ID:BTOHfqgT0 re.searchは別関数にしたいとは常々感じてる
m.groups() を返してくれると有り難い
マッチしなかったら[]を返すようにすれば、ifにそのまま入れられる筈
なんで正規表現回りこんなに不便なんだろう
m.groups() を返してくれると有り難い
マッチしなかったら[]を返すようにすれば、ifにそのまま入れられる筈
なんで正規表現回りこんなに不便なんだろう
241デフォルトの名無しさん (ワッチョイ a633-ASru)
2023/04/27(木) 18:30:59.89ID:5qwnrWFd0 競プロで複数行の標準入力を受け取るとき、stdinを使った方がだいぶ早いみたいな記憶があったんだけど、今はだれも使ってない
これは自分が何か記憶違いをしてる?
これは自分が何か記憶違いをしてる?
Pythonはオブジェクト指向とデータ隠蔽の所が面白い。
243デフォルトの名無しさん (ワッチョイ 66fb-nb5X)
2023/04/28(金) 00:38:35.47ID:fNFGtOF30 ハードウェアやdbの設計やらセキュリティやら色々大変だよ
まじで全部はやれそうに無い
まじで全部はやれそうに無い
244デフォルトの名無しさん (ワッチョイ a95f-kYp6)
2023/04/28(金) 01:17:05.61ID:0Z+HC9sf0245241 (ワッチョイ a633-F6q8)
2023/04/28(金) 07:46:56.36ID:X3vhIzka0 2系の時の話だったかもしれん
246241 (アウアウウー Sa21-F6q8)
2023/04/28(金) 09:49:13.94ID:gpbxWykPa >>244
どういうこと?
どういうこと?
247デフォルトの名無しさん (アウウィフ FF21-YWDm)
2023/04/28(金) 10:58:04.57ID:pksuSfeeF248デフォルトの名無しさん (ワッチョイ 5701-p0t6)
2023/05/03(水) 19:16:59.83ID:LjnRJYKu0 個人でプログラムしている程度の素人からの質問です
dataclassでクラスの作り方を覚えたら従来のクラスの作り方を覚える必要ってありますか?
dataclassでできないことがイマイチ分からなくて・・・
dataclassでクラスの作り方を覚えたら従来のクラスの作り方を覚える必要ってありますか?
dataclassでできないことがイマイチ分からなくて・・・
249デフォルトの名無しさん (ワッチョイ 3754-fitb)
2023/05/03(水) 20:31:00.66ID:dRzFRHH60 setdefaultが便利なことに気付いた
250デフォルトの名無しさん (ワッチョイ 375f-qg3Z)
2023/05/03(水) 20:42:31.43ID:jsxN4Jfn0 >>248
ひとのコード読まないならいいんじゃない?
@dataclass使わずに自前で実装している事のが多いから
内包表記にもいえるけど同等のベタなコードも知ってたほうが
他人のコードの理解が進むし自分のコードの幅も広がるとは思う
ひとのコード読まないならいいんじゃない?
@dataclass使わずに自前で実装している事のが多いから
内包表記にもいえるけど同等のベタなコードも知ってたほうが
他人のコードの理解が進むし自分のコードの幅も広がるとは思う
251デフォルトの名無しさん (ワッチョイ 5701-p0t6)
2023/05/04(木) 03:58:07.49ID:1n3OCeKB0252デフォルトの名無しさん (ワッチョイ 3754-fitb)
2023/05/04(木) 10:26:11.29ID:Oq6zT20d0 書く量はあんまり変わらないからなあ
reprとか書くならその分減る
reprとか書くならその分減る
253デフォルトの名無しさん (ブーイモ MMff-1K07)
2023/05/08(月) 15:08:20.54ID:PDbtS8P/M すまん。パイソン歴3年とリクルートエージェントで言ってしまった(笑)
本当はvscodeと言いたいが、実はGoogleコラボしか経験がないです。(笑)
今からvscodeでパイソン歴3年は何を言えばいいですか?
本当はvscodeと言いたいが、実はGoogleコラボしか経験がないです。(笑)
今からvscodeでパイソン歴3年は何を言えばいいですか?
254デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/08(月) 15:26:52.63ID:OygwxwuO0 結果をリストに入れて副作用で返したい
def func(list):
# 処理
list.clear()
list.extend(result)
こんな感じでできるけどどう見ても汚い
副作用がそもそも汚いけど、もう少し何とかならないか
def func(list):
# 処理
list.clear()
list.extend(result)
こんな感じでできるけどどう見ても汚い
副作用がそもそも汚いけど、もう少し何とかならないか
255デフォルトの名無しさん (ワッチョイ efa7-IT0J)
2023/05/08(月) 15:54:19.13ID:N55ghYlR0256デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/08(月) 15:57:26.54ID:OygwxwuO0 戻り値には成功かどうかを返したい
257デフォルトの名無しさん (ワッチョイ 1610-vOwS)
2023/05/08(月) 16:12:14.22ID:NZN2JSTa0 何がしたいかよく分からないけど成否とリストのタプルを返せばええやん
258デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/08(月) 16:13:54.12ID:OygwxwuO0 := を使わずにif func()に使いたい
259デフォルトの名無しさん (ワッチョイ efa7-IT0J)
2023/05/08(月) 16:23:33.58ID:N55ghYlR0 成功なら普通に値を、失敗ならFalseを返すとかじゃ駄目なの?
260デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/08(月) 16:26:44.75ID:OygwxwuO0 それは := を使う前提の話では
261デフォルトの名無しさん (ブーイモ MMdb-vs1K)
2023/05/08(月) 17:15:30.96ID:Kz8WKKNDM 成否と成功時の結果を返したい場合は例外を使うのが一般的なんじゃないかと思う
でなければHttpResponseのように結果ステータスとデータをまとめたクラスのインスタンスで返す
タプルはその簡易版
結果ステータスを持たずにクラス化する方法もなくはない
if foo.func(): do_something(foo.data)
でなければHttpResponseのように結果ステータスとデータをまとめたクラスのインスタンスで返す
タプルはその簡易版
結果ステータスを持たずにクラス化する方法もなくはない
if foo.func(): do_something(foo.data)
262デフォルトの名無しさん (ワッチョイ 335f-UXjQ)
2023/05/08(月) 17:17:05.80ID:htP7Y4l40 if func(list)で副作用で返すとかまぁ現代では誰もやらないから素直に
result = func()
if resultの正常条件:
にしときなよ。
result = func()
if resultの正常条件:
にしときなよ。
263デフォルトの名無しさん
2023/05/08(月) 17:35:23.12 l = []
result = None
def func():
____try:
________l.clear()
________l.extend(result)
________return l
____except:
________return False
#
result = None
print("成功" if func() else "失敗", l)
#
result = ["r1","r2"]
print("成功" if func() else "失敗", l)
#失敗 []
#成功 ['r1', 'r2']
result = None
def func():
____try:
________l.clear()
________l.extend(result)
________return l
____except:
________return False
#
result = None
print("成功" if func() else "失敗", l)
#
result = ["r1","r2"]
print("成功" if func() else "失敗", l)
#失敗 []
#成功 ['r1', 'r2']
264デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/08(月) 17:48:09.47ID:OygwxwuO0 elifで繋いでいくとどんどん深くなるんだよな
多分、:= を使うのがベスト
でも環境的に使えない
副作用で返すのが次善の策で、実際うまく行っている
ただどう見てもバグの元
多分、:= を使うのがベスト
でも環境的に使えない
副作用で返すのが次善の策で、実際うまく行っている
ただどう見てもバグの元
265デフォルトの名無しさん (ワッチョイ cb10-W4Ad)
2023/05/08(月) 19:55:50.84ID:Z+v93H2P0 深くなるなら早期return
関数仕様変えたくないならreplace_xxx(list)とか関数名で説明するしかないんじゃない?
関数仕様変えたくないならreplace_xxx(list)とか関数名で説明するしかないんじゃない?
266デフォルトの名無しさん (ワッチョイ 335f-Mmp8)
2023/05/08(月) 20:19:26.02ID:z5F93KHO0 その場で直前に関数定義(def)して条件につかえばブラックボックスにはならない
267デフォルトの名無しさん (ワッチョイ 92da-tcUg)
2023/05/09(火) 01:02:42.07ID:95FlmxIY0 https://gigazine.net/news/20230508-mojo-programming-language/
> 従来のPythonよりも高速化が可能な新たなプログラミング言語「Mojo」が開発される
> Mojoはこれまでのプログラミング言語であるPythonの使用感と
> C言語並みの性能を合わせ持つ言語だとされています。
> 従来のPythonよりも高速化が可能な新たなプログラミング言語「Mojo」が開発される
> Mojoはこれまでのプログラミング言語であるPythonの使用感と
> C言語並みの性能を合わせ持つ言語だとされています。
268デフォルトの名無しさん
2023/05/09(火) 13:13:30.67 同じコードで動くならもうPython13とかで統合してほしい
269デフォルトの名無しさん (ワッチョイ 16fb-cJ5Y)
2023/05/09(火) 13:25:05.82ID:iN9Igm8n0 アンドロイダー乙
270デフォルトの名無しさん (ワッチョイ 9210-tcUg)
2023/05/09(火) 17:43:47.32ID:yVvdWTsg0 同じコードで動くのなら、それは現行のpython作ってる人達におまえら無能と言ってるのと同じだからずーっと喧嘩し続けるだろう
271デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/11(木) 16:00:43.55ID:gUZpd4Xj0 テキストが1行ずつ入ったリストを順に処理していて、
ある条件の時は次の行も読んで処理したい
次のループでは処理済の行は飛ばす
普通にforでループにして、処理の中でイテレータをさらに取ってくるとかできる?
ある条件の時は次の行も読んで処理したい
次のループでは処理済の行は飛ばす
普通にforでループにして、処理の中でイテレータをさらに取ってくるとかできる?
272デフォルトの名無しさん (ブーイモ MM63-vs1K)
2023/05/11(木) 16:22:44.99ID:bMPdFZE5M273デフォルトの名無しさん (ブーイモ MM63-vs1K)
2023/05/11(木) 16:25:43.89ID:bMPdFZE5M 次の次の次の行もまとめて処理する必要があったりするならイテレーションを跨いで状態を持ち回る必要があるので単純な2行ごととはまた違うやり方になる
274デフォルトの名無しさん (ワッチョイ 335f-Mmp8)
2023/05/11(木) 16:42:51.40ID:rmkBIaEM0 >>271
処理済の行は飛ばすなら単純
it = iter(lst)
for x in it: print(x, next(it))
ただ最終行でnext(it)したら例外になる
飛ばさないならmore_itertoolsかitertoolsを活用かな
処理済の行は飛ばすなら単純
it = iter(lst)
for x in it: print(x, next(it))
ただ最終行でnext(it)したら例外になる
飛ばさないならmore_itertoolsかitertoolsを活用かな
275デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/11(木) 17:37:54.85ID:gUZpd4Xj0 forの対象をリストでなくてiterにすればいいのか
forもnext()するし中でも同じものをnext()する
続きがあるよとデータに書いてあるのに実際には無いならそれはエラーでいい
forもnext()するし中でも同じものをnext()する
続きがあるよとデータに書いてあるのに実際には無いならそれはエラーでいい
276デフォルトの名無しさん (アウアウウー Sac3-hGOv)
2023/05/12(金) 00:21:34.94ID:hQCPlnw9a Ruby なら、
input_text = <<'EOT'
あい
aa
あい
あい
bb
あい
あい
EOT
prev_line = [ ] # 前の行
# 改行を削除して、1行ずつ処理する
input_text.each_line( chomp: true ) do |line|
if line == "あい"
prev_line.push( "あい" ) # 代入だけして処理はしない
else
puts prev_line.join + line # 表示
prev_line = [ ] # 内容を削除
end
end
# もし、中身が残っていれば表示する
puts prev_line.join if prev_line.length > 0
出力
あいaa
あいあいbb
あいあい
input_text = <<'EOT'
あい
aa
あい
あい
bb
あい
あい
EOT
prev_line = [ ] # 前の行
# 改行を削除して、1行ずつ処理する
input_text.each_line( chomp: true ) do |line|
if line == "あい"
prev_line.push( "あい" ) # 代入だけして処理はしない
else
puts prev_line.join + line # 表示
prev_line = [ ] # 内容を削除
end
end
# もし、中身が残っていれば表示する
puts prev_line.join if prev_line.length > 0
出力
あいaa
あいあいbb
あいあい
277デフォルトの名無しさん (ワッチョイ 9354-KeI6)
2023/05/12(金) 07:13:16.33ID:pPbvGVzs0 今の行だけで続きがあるか判別できれば楽だけど、
次を読んで始めて前ので終わりだったと判明する処理は厄介だな
実際にはそっちの方が多い
pythonのコードもそれ
次のを読んで確定ならまだいいけど、最後まで読んだら終わりとみなす処理も必ずつきまとう
次を読んで始めて前ので終わりだったと判明する処理は厄介だな
実際にはそっちの方が多い
pythonのコードもそれ
次のを読んで確定ならまだいいけど、最後まで読んだら終わりとみなす処理も必ずつきまとう
278デフォルトの名無しさん
2023/05/21(日) 19:54:50.70 なぁ・・ __pycache__とかいう雑草みたいに抜いても抜いても生え散らかす謎ディレクトリなんの役に立つのこれ・・
279デフォルトの名無しさん (ワッチョイ 0b2c-i/qU)
2023/05/21(日) 23:07:26.87ID:kjLdpiYM0 キャッシュじゃねーの?
280デフォルトの名無しさん (ササクッテロレ Sp03-4vPs)
2023/05/22(月) 17:36:01.89ID:kOYkg4dap Twitterの自動投稿をスレッド形式でツイートしたいのですけどできるのでしょうか?
281デフォルトの名無しさん (ワッチョイ 5ebb-cUXk)
2023/05/22(月) 18:22:25.30ID:EzOozQYh0 techiedelight.com/compiler/?~dictclass
こんな感じで実際にはデータが入ってる辞書型クラスがあるんですが
def get(self, _id:str):
if _id in self._results:
この時点では_idはstr型なのに
def __getitem__(self, key):
これにステップした瞬間keyがつねにintの0になります
デバッガで見ても何が何だかわからんのですが
どういう仕組みなんでしょうか?
こんな感じで実際にはデータが入ってる辞書型クラスがあるんですが
def get(self, _id:str):
if _id in self._results:
この時点では_idはstr型なのに
def __getitem__(self, key):
これにステップした瞬間keyがつねにintの0になります
デバッガで見ても何が何だかわからんのですが
どういう仕組みなんでしょうか?
282デフォルトの名無しさん (ワッチョイ de10-cUXk)
2023/05/22(月) 18:35:07.65ID:TcXdI8Pp0 key は整数型とドキュメントに書かれているが?
283デフォルトの名無しさん (ワッチョイ 4a7f-ZDLm)
2023/05/22(月) 18:50:31.32ID:jGNTm+uC0 >>282
それはシーケンス型の場合って書いてませんか?
dict型のエミュレーションが目的なんですが
ちなみにin比較しないでmyclass[key]の場合は動作は期待通りです
inで比較したいのにエラーなるのでなぜかわからない事態です
キーは実際にあるので__missing__の実装とは関係ないかと思うのですが
それはシーケンス型の場合って書いてませんか?
dict型のエミュレーションが目的なんですが
ちなみにin比較しないでmyclass[key]の場合は動作は期待通りです
inで比較したいのにエラーなるのでなぜかわからない事態です
キーは実際にあるので__missing__の実装とは関係ないかと思うのですが
284デフォルトの名無しさん (ワッチョイ 4a7f-ZDLm)
2023/05/22(月) 19:06:11.68ID:jGNTm+uC0 自己解決しました
>__contains__() を定義しないオブジェクトに対しては、メンバシップテストはまず、 __iter__() を使った反復を試みます
でした
>__contains__() を定義しないオブジェクトに対しては、メンバシップテストはまず、 __iter__() を使った反復を試みます
でした
285デフォルトの名無しさん (ワッチョイ 4f54-FIIW)
2023/05/22(月) 19:15:00.64ID:2xhSnxHv0 a, b, c = list[:3]
とすると、中身があればいいけど無いとエラーになる
無い時はNoneが入るようにしようと思うと、
a, b, c = list[:3] + [None, None, None]
みたいにしないといけない
なんかもやもやするので、もっといい書き方ある?
とすると、中身があればいいけど無いとエラーになる
無い時はNoneが入るようにしようと思うと、
a, b, c = list[:3] + [None, None, None]
みたいにしないといけない
なんかもやもやするので、もっといい書き方ある?
286デフォルトの名無しさん (ササクッテロ Sp03-sLbb)
2023/05/22(月) 19:52:51.64ID:Y3GhwDFGp List_A
List_B
List_C
があって、CSVに出力すると1行目にA,2行目にBっていうふうになります。
これを縦に並べて1列目にA,2列目にB,3列目にCと出力したいです。
パンダスで行列に変換してから転置、転置したものの1行目をリストA',2行目をリストB'みたいにして出力して対応はできたのですがもう少しスマートなやり方ないでしょうか?
List_B
List_C
があって、CSVに出力すると1行目にA,2行目にBっていうふうになります。
これを縦に並べて1列目にA,2列目にB,3列目にCと出力したいです。
パンダスで行列に変換してから転置、転置したものの1行目をリストA',2行目をリストB'みたいにして出力して対応はできたのですがもう少しスマートなやり方ないでしょうか?
287デフォルトの名無しさん (ワッチョイ 6f5f-kgJw)
2023/05/22(月) 20:17:51.14ID:sAlsu4+P0288デフォルトの名無しさん (ワッチョイ 8a01-0sDA)
2023/05/22(月) 22:53:16.45ID:XGVinkOj0289デフォルトの名無しさん (ワッチョイ 6f5f-kgJw)
2023/05/22(月) 22:55:57.03ID:sAlsu4+P0 おおがかりでもよければ
from more_itertools import *
a, b, c = take(3, pad_none(lst))
from more_itertools import *
a, b, c = take(3, pad_none(lst))
290デフォルトの名無しさん (ワッチョイ 4f54-FIIW)
2023/05/22(月) 23:03:18.26ID:2xhSnxHv0 やってること一緒だもんな
足りてない時はNoneで埋めます、を暗黙にする訳にはいかなくて、
何らかの方法でそれが判るように書かないといけないなら、元のままが一番素直かもしれん
足りてない時はNoneで埋めます、を暗黙にする訳にはいかなくて、
何らかの方法でそれが判るように書かないといけないなら、元のままが一番素直かもしれん
291デフォルトの名無しさん (ワッチョイ defb-Pn9L)
2023/05/23(火) 03:09:27.85ID:gLCisDzi0 お前らのせいでクララが立ったんだが
292デフォルトの名無しさん (アウアウウー Sa2f-SwK+)
2023/05/23(火) 10:49:55.37ID:X1m2WkvHa a, b, c, _ = (list + [None] * 3)[:3]
293デフォルトの名無しさん (ワッチョイ 4f54-FIIW)
2023/05/23(火) 10:57:50.75ID:Kb7aSTvI0 _はなんで要るの?
294デフォルトの名無しさん (ワッチョイ 6b2d-VUhG)
2023/05/23(火) 16:45:29.43ID:koKlYaEi0 printで文字列と数値を合わせて表示する場合
formatメソッド使うとstr関数で数値を文字列に変換する必要が無い?
formatメソッド使うとstr関数で数値を文字列に変換する必要が無い?
295デフォルトの名無しさん (ワッチョイ de7b-nmQz)
2023/05/23(火) 16:53:43.43ID:d8FV5sbM0 何故試さないんだ?
296デフォルトの名無しさん (ワッチョイ 4f54-FIIW)
2023/05/23(火) 18:06:50.19ID:Kb7aSTvI0 formatって自由度高すぎて逆に正解が判らん
297デフォルトの名無しさん (ワッチョイ de7b-nmQz)
2023/05/23(火) 18:21:05.98ID:d8FV5sbM0 n=1
print(f"とりあえず{n}回試してみたらいいんだよ")
print(f"とりあえず{n}回試してみたらいいんだよ")
298デフォルトの名無しさん (ワッチョイ 0363-SkZo)
2023/05/23(火) 18:26:28.31ID:2KukQYy00 古い人間なんで
print('とりあえず{}回試してみたらいいんだよ'.format(n))
print('とりあえず{}回試してみたらいいんだよ'.format(n))
299デフォルトの名無しさん (ワッチョイ 0310-owa4)
2023/05/23(火) 18:56:03.36ID:JMXPuiCR0 Formatは使わずに
a=1
print("a:")
print(a)
とかやっちゃうな。
a=1
print("a:")
print(a)
とかやっちゃうな。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性には共通点が [Hitzeschleier★]
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★4 [BFU★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★5 [Hitzeschleier★]
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- 中国軍機がレーダー照射 小泉防衛大臣の説明に「矛盾している」中国外務省報道官が批判 [♪♪♪★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 【高市速報】中国、最後通牒 [308389511]
- 【悲報】高市早苗「物価高はそのうち収まると思います」
- しね✋ーーーーー☀
- 花澤香菜似のえった美女のディルドオナニー動画見つけたわ
- 【乞食速報】プロクオリティ ビーフカレー 96食 4262円 [268244553]
- 【速報】テレビ朝日本社から20代〜30代の男性が飛び降り自殺して死亡 東京・六本木 [597533159]
