[英]input() function handling data types differently across different Operating Systems?
如果有人看過這個或者這是常識,我很感興趣。 另外,如果任何其他功能/方法都是這種情況?
如果我有使用 input() 的代碼,則用戶輸入的值應該是 str 數據類型。 在 Windows 中,情況似乎非常如此。
如果我在 Mac/Linux 中運行相同的代碼,操作系統似乎足夠“智能”,可以將數據類型轉換為 int。
代碼示例:
print("Enter multiple numbers, enter 0 to stop")
counter = 0
number_supplied = 1
sum = 0
while number_supplied !=0:
number_supplied = input("")
counter +=1
sum = sum + number_supplied
print(sum/(counter-1))
如果我在 Windows 中運行此代碼,它(正確地)會拋出一個 TypeError。 如果我在 Mac 或 Linux 上運行它,則不會。
任何想法,輸入(糟糕的雙關語......對不起)將不勝感激!
您不小心在 Python 2(其中input()
解析值)和 Python 3(其中input()
始終返回字符串)上運行相同的代碼。
確保您與運行python3
在Mac / Linux系統,並記住您可以驗證的版本python
與python --version
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.