要清除文本字段,您可以使用delete()
。要在Entry窗口小部件中從頭到尾刪除內容,您需要在「0」到「end」之間定義索引。對於Text小部件,您需要定義行和字符索引。 delete()
使用字符串來指示行和列。所以「1.12」將是第一行和第十二個字符。正如@BryanOakley delete()
指出的那樣,數字值爲1.0,但您應該使用字符串來防止正確讀取其他數字的值/索引。
# for Entry widget clear.
textboxName.delete("0", "end")
# for Text widget clear.
textboxName.delete("1.0", "end")
爲了檢查如果變量類型爲浮動:
您可以使用isinstance()
檢查,如果變量是一個浮動與否。
x = 5
y = 5.0
if isinstance(x, float) == True:
print(x,"Is float")
else:
print(x,"Is not a float")
if isinstance(y, float) == True:
print(y,"Is float")
else:
print(y,"Is not a float")
結果:
5 Is not a float
5.0 Is float
在另一方面,你可以使用try/except
。人們會說使用鴨子打字(請求寬恕vs許可)。如果你期望總是看到一個浮動,那就試試吧。如果你碰巧沒有得到預期的浮動,那就拋出異常。
x = 5
y = "String of text"
try:
print(float(x))
except:
print(x,"Cannot be a float")
try:
print(float(z))
except:
print(y,"Cannot be a float")
結果:
5.0
String of text Cannot be a float
文本小指標都是字符串,而不是浮動。雖然使用'1.0'是無害的,但可能導致混淆。索引'「1.10」'表示第一行字符十,但浮點值「1.10」將被解釋爲第一行字符1.您應該養成總是使用索引字符串的習慣。 –
@BryanOakley謝謝你指出。現在糾正。 –