[過去ログ] Pythonのお勉強 Part74 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
658(2): デフォルトの名無しさん (ワッチョイ 0601-Wuzd) [sage] 2025/02/15(土) 23:12:46.33 ID:DkQLiBFd0(2/2) AAS
ASTで見るとこうなる
import ast
expr = ast.parse("a, b = 1, 2")
print(ast.dump(expr, indent=4))
Module(
body=[
Assign(
targets=[
Tuple(
elts=[
Name(id='a', ctx=Store()),
Name(id='b', ctx=Store())],
ctx=Store())],
value=Tuple(
elts=[
Constant(value=1),
Constant(value=2)],
ctx=Load()))])
660(1): デフォルトの名無しさん (ワッチョイ cb10-+v22) [sage] 2025/02/16(日) 00:53:20.10 ID:wh5aR4tC0(1) AAS
>>657-658
ASTでタプルとされているからタプルなのだ、それが言語上の定義なのだと言われればそうですかと言うしかないのだけれど、メモリレイアウトがどうなっているかは気になるな。a, bはメモリ上隣接した位置に配置されるのか、それとも、離れた位置に配置されるけれども代入文の左辺である限りはタプルと呼んでいいということなのか。
668: デフォルトの名無しさん (ワッチョイ e318-+v22) [sage] 2025/02/16(日) 16:31:54.22 ID:dLfK62nh0(3/4) AAS
自分は、一括代入の左辺については(通常の意味での)リストやタプルとは区別した方がわかりやすいのではないかという立場だけど、これらもリストやタプルであると考える立場に立つ場合、その中で、丸括弧で囲むか否かによってタプルになったりならなかったりするという考え方はないんじゃない? ASTでは丸括弧がなくてもタプル扱いみたいだし(>>658)
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.042s