python中str和input_[發問] Python3 如何在input輸入str和int?

我嘗試過只使用input(), 但輸入選項1,2,3的時候, 它不認為輸入的是數字, 而是當作字符串。

看到這個描述我的第一個感覺是你應該是初學Python,學習Python一段時間的人應該都能理解,input()不管你在裡面輸入的是 中文 英文 日文 阿拉伯數字 甚至火星文,輸進去的東西都會變成"字串",你的問題應該問作"如果輸入字串裡面包含了非數字字元時,用int()字串會報錯,要如何處理...之類的",底下舉個例,參考星空大的建議用re.search判斷字串內容是否為純數字("0"~"9"),若是則int(input_val),若否則為"Not Number"。

import re

print((lambda x:int(x) if re.search("^[0-9]+$",x)!=None else "Not Number!")(input("Option: 1)Display 2)Add 3)Exit\n ")))

個人不太建議一開始學習就用上面的這種寫法,單行做很多事很酷沒錯,但是也很容易誤導新手,解決同樣的問題用結構化程式的寫法如下提供您參考:

import re

choice=input("Option: 1)Display 2)Add 3)Exit\n ")

if re.search("^[0-9]+$",choice)!=None:

choice=int(choice)

else:

choice="Not Number!"

print(choice)

結構化程式寫法的優點就是看一眼就知道它在做啥。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Pythonint是一个数据类型,用于表示整数值,而input函数则是一个函数,用于从用户处获取输入。int用于将一个字符串转换为整数,而input用于从用户处获取字符串输入。它们的作用和用法不同。 ### 回答2: Pythonintinput都是非常常用的关键字。它们都是用来处理数据的,但是它们之间有很大的区别。 int被用来表示整数类型的数据。当Python的数据是整数类型时,可以使用int对其进行操作和计算。Pythonint还可以用来将其他类型的数据转换为整数类型。例如,可以使用int将字符串转换为整数类型。 input是一个用来获取用户输入的函数。它允许用户在程序运行时输入数据。通过使用input函数,程序可以与用户进行交互,接收用户的输入数据,以便后续的计算和操作。 与int不同,input读取的是字符串类型的数据。输入的数据会作为字符串类型返回给程序。因此,如果需要对输入的数据进行其他操作,需要使用字符串操作函数或将其转化为其他类型,例如使用int将其转换为整数类型。 总之,intinputPython都是非常有用的功能。只要理解它们的区别,就可以更有效地使用它们来处理数据和与用户交互。 ### 回答3: intinputPython两个常用的函数。它们用于将输入的数据转换为整数类型,但两者有着不同的功能和用法。 首先,intPython的内置函数,用于将其他类型的数据(如字符串)转换为整数类型。例如,int("123")的结果将是整数123。而input是用于从键盘获取用户输入的函数,它将用户输入的文本转换为字符串类型。例如,如果使用input()函数获取用户输入的数字,它将以字符串的形式存储在变量。 此外,intinput还有着不同的错误处理机制。当int函数无法将其他类型的数据转换为整数时,它将引发ValueError异常。而当使用input函数时,如果用户输入了无法转换为整数的字符,它将引发ValueError异常。 在使用intinput时,还需要注意它们的用法不同。int通常用于将其他类型的数据转换为整数类型,而input主要用于从用户获取输入并将其转换为字符串类型。因此,我们通常会将inputint组合使用,以便获取用户输入的整数并将其转换为整数类型。例如: num = int(input("请输入一个整数:")) 以上代码将会首先使用input函数从用户获取输入的整数作为字符串,然后使用int函数将其转换为整数类型并存储在变量num。 总之,intinputPython常用的函数,它们分别用于将其他类型的数据转换为整数类型和从键盘获取用户输入。虽然它们看起来相似,但在使用和功能上有所不同,需要根据具体的需求选择不同的函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值