python寫要求使用者輸入數字如果不是數字就一

2021-05-23 02:50:13 字數 1819 閱讀 2392

1樓:匿名使用者

主要bai出在eval上。

python3.0

第一個du

方案zhi:

while true:

ten=input("x:")

try:

x=eval(ten)

if type(x)==int:breakexcept:pass

然後輸入asf,沒dao有提示。輸入344就退出了回x:asf

x:344

第二個方案

while true:

ten=none

try:

ten=int(input("x:"))

except:pass

if type(ten)==int:break這個在python3.0上除錯通答過

第三個方案:python2.x的方案

while true:

ten=raw_input("enter a number:")if ten.isdigit():

breakten=int(ten) #或者是ten=eval(ten)都除錯過。可以用

2樓:斑馬線下老漁夫

具體bai解決辦法如下:

第一個方案du:

1.複製**,如下,zhi

while true:

ten=input("x:")

try:

x=eval(ten)

if type(x)==int:

break

except:

pass

2.然後輸入asf,沒有提dao示。輸入344就退出了回x:asf

x:344

第二個答方案

1.複製**

while true:

ten=none

try:

ten=int(input("x:"))

except:

pass

if type(ten)==int:

break

這個在python3.0上除錯通過

第三個方案:python2.x的方案

while true:

ten=raw_input("enter a number:")if ten.isdigit():

break

ten=int(ten)  #或者是ten=eval(ten)

3樓:匿名使用者

首先你使用的input的函copy數,但是input函式必須接受的型別為數字你輸入非數字的字母會報錯。

其次如果你輸入了數字你這個程式也不會正常工作,ten的型別可能是float也可能是int 但是eval接受的引數型別必須是字串,所以這句if也會出錯。

改為 if type(ten) is type(1):break

4樓:匿名使用者

def getint():

while 1:

num = input("enter an integer, 0 to end: ")

if num.isdigits():

return num

5樓:允賢

while true:

try:

a=int(input(('請輸

入bai

du一個數字:')))

print('你輸zhi入的數字是

dao',a)

break

except valueerror:

print('輸入有誤,專請重新輸入')

python3版本屬

除錯通過

用python寫氣泡排序,讓使用者輸入一組整型數字,在排序前對輸入的數字進行判斷,不是整型提示錯誤

參考 如下 include int main for i 0 i 10 i 輸出答。printf d,a i printf n return 0 程式語言python是用來幹什麼的?20 python語言是高階的程式語言,其語言上手容易 功能強大 語法簡單,可以做的事情有很多,應用領域非常廣泛。比如...

python如何將幾個數字或者字元輸入到列表或者字串中在一行輸出

1,整數字串轉換為對應的整數 int 12 2,小數字串轉換為對內應小數 float 12.34 3,數字轉換為字串 str 123.45 4,ascii碼轉換為相應字元 chr 97 5,字元轉 容換為響應ascii碼 ord a python 如何將一系列數字十個一行輸出 定義一個變數,用於記錄...

python寫檔案記錄list裡數字的大小位置從大到小不能用內建函式和sorted

def sortisright lis return lis sorted lis if name main print sortisright 1,2,3 print sortisright 3,2,3 print sortisright a b c print sortisright d b c...