如果我將城市列表作爲變量傳遞,那麼任務按預期完成。Python - 乾淨地傳遞參數
def count_top_rt(tweet_set):
for tweet in tweet_set:
print(tweet)
tweet_set = ["Sydney", "London", "Paris"]
print(tweet_set)
如果我錯類型的函數定義參數名稱,則任務完成還,因爲tweet_set變量是全球性的。
def count_top_rt(mis_typed_arguament):
for tweet in tweet_set:
print(tweet)
tweet_set = ["Sydney", "London", "Paris"]
print(tweet_set)
感覺好像沒有正確傳遞參數是錯誤的。我有兩個問題:
- 在第一個版本中,參數是否正確傳遞?
- 我可以確保正確傳遞參數的方式是什麼?
對於全局變量,不要使用與局部變量相同的名稱。那麼這個問題就不會發生。 – kindall
如果您使用PyCharm或類似的IDE,它會告訴您何時自動執行此操作。 – Alex
@kindall第二個函數的問題不在於他爲全局和本地使用了相同的名稱,而是因爲'for'循環沒有使用它應該使用的局部變量。 – Barmar