|
发表于 2018-10-19 18:31:27
|
显示全部楼层
input 是输入的意思,使用input()函数时,用户输入一个数据,函数会把输入的数据以字符串的形式储存起来。
- >>> sam_num = input("Enter a number or character: ")
- Enter a number or character: 1
- >>> sam_num
- '1'
- >>> sam_num2 = input("Enter a number or character: ")
- Enter a number or character: a
- >>> sam_num2
- 'a'
- >>>
复制代码
而 int 则是整数类型 的意思,是一种数据类型,像是 1、34、5842、-1 这些不带小数点的整数都属于 int 类型。
- >>> a = 1
- >>> b = 34
- >>> c = 5842
- >>> d = -1
- >>> type(a)
- <class 'int'>
- >>> type(b)
- <class 'int'>
- >>> type(c)
- <class 'int'>
- >>> type(d)
- <class 'int'>
- >>>
复制代码
同时,int()函数可以会尝试将传入函数的数据转换为整数类型的数据。
- >>> a = '50'
- >>> int(a) # 只有字符串内容为数字才可以被成功转换,否则报错
- 50
- >>> b = 'I love fishc'
- >>> int(b)
- Traceback (most recent call last):
- File "<pyshell#31>", line 1, in <module>
- int(b)
- ValueError: invalid literal for int() with base 10: 'I love fishc'
- >>>
复制代码
知道了这些之后,我们就能知道你的代码实现的什么功能了。
- >>> a = input # 这里你将input的功能传输给了变量 a,也即:a变成了a()函数,它的功能和input()一样
- >>> b = int(a("Enter a number or character: ")) # 执行代码,输入一个数字或者字母,并且以字符串的形式保存,int()会尝试将输入的数据转换为整数类型
- Enter a number or character: 1 # 输入1,可以被转换
- >>> b
- 1
- >>> b = int(a("Enter a number or character: "))
- Enter a number or character: a # 输入字母a,无法被转换
- Traceback (most recent call last):
- File "<pyshell#27>", line 1, in <module>
- b = int(a("Enter a number or character: "))
- ValueError: invalid literal for int() with base 10: 'a'
- >>>
复制代码 |
|