>>354
いくつか勉強不足な箇所はあるけど、「スコープがぐちゃぐちゃ」という
指摘に関しては、まったくもってそのとおりだね
>>> x = 1 # グローバル変数 x を初期値 1 で宣言
>>> def f(dx): x = x + dx # 変数 x を破壊的に更新する手続き f を定義
... ^D
>>> f(2) # 手続き f を引数 2 で呼び出してみると・・・
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in f
UnboundLocalError: local variable 'x' referenced before assignment
まさに公式文書に書かれている通りの結果になった:
https://docs.python.jp/3/glossary.html#term-nested-scope
ネストされたスコープはデフォルトでは変数の参照だけができ、
変数の代入はできないので注意してください。
では、続けてみよう
>>> array = [1,2,3] # グローバル変数 array を初期値 [1,2,3] で宣言
>>> def f(x): array.append(x) # 変数 array を破壊的に更新する手続き f を定義
... ^D
>>> array # 念のため、変数 array の内容を確認
[1, 2, 3]
>>> f(4) # 手続き f を引数 4 で呼び出してみると・・・
>>> array
[1, 2, 3, 4] # あれれ、グローバル変数なのに書き込みできてしまったぞぉ?!(棒
Ruby 初心者スレッド Part 61 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
375デフォルトの名無しさん
2017/09/23(土) 21:42:42.17ID:lJM5VEju■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【サッカー】韓国、突破率94%からついに0%に 「史上最高の蜂蜜組」が暗転★3 [ヴァイヴァー★]
- 【サッカー】W杯32強決定! 日本はブラジルに勝利すれば『コートジボワールvsノルウェー』の勝者と対戦… 決勝トーナメント組み合わせ [冬月記者★]
- 高市首相… 経歴詐称疑惑で米下院関係者が決定的証言「インターンだった」SNSで猛拡散 ★2 [少考さん★]
- 【北中米W杯】韓国のGS敗退が決定…W杯初勝利のDRコンゴが3位枠で初の決勝Tへ ★7 [阿弥陀ヶ峰★]
- 【日本代表】FW塩貝健人のブラジル発言にポルトガル語でのコメントが殺到「コメントを閉じないでね?月曜日にまた話そう!」 [王子★]
- 【国際】中国、「時代遅れ」の大学課程1万2000以上を削減 多くをAI関連に置き換え ★3 [煮卵★]
- MIXI社長「DeNAへのたかだか15億円で批判?国民は足を引っ張るなよ、特定企業へのエコ贔屓で成長させろ!選択と集中!」 [117552482]
- 【悲報】韓国紙「歴史上最悪のW杯」 [398059782]
- フランスパン工房🏡
- ホルムズ海峡封鎖という未曽有の事態に議員定数削減と国旗損壊罪を国会で通す意味とは。高市今じゃないよな? [472617201]
- 【悲報】NHK「見たい人だけが支払うのは絶対にだめ。見る、見ないではなく全国民が払うべき」 [339035499]
- 👊🏡😅ダブパンフェスティバル🏡👊 ★2