提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
python--我们常常要处理 input() 接收过来的数据,下面的文章让你可以更深一步的处理不同情况的input() 输入数据
直接单个数据的接收--最终呈现为str 字符串类型,刚刚开始学习python的朋友可能经常
y = input()
print(y+5) X
就直接将 x 作为数值型带入运算了
对于这样的--直接可以在接收时就转换 y = int(input())
比如只有2个数据的时候: (这里要强调是一行内接收)
1. str类型 x,y = input().split()
x,y = input().split()
print(x,y)
print(type(x),type(y))
'''
2 3
2 3
'''
2. int类型 x,y = map(int,input().split())
x,y = map(int,input().split())
print(x,y)
print(type(x),type(y))
'''
2 3
2 3
'''
q = map(int,input().split())
print(q)
#将迭代器强制转换为列表
q = list(q)
print(q)
'''
2 3 5 8 9
多次出现了map,可能此时有些朋友会有些疑惑
map(fnc,li) fnc是函数,li是容器 返回值为迭代器,是一个地址,可以对其返回值强制转换为想要的数据类型,这里是list
我们不能直接操作,但是明显可以将其变成 2 中的例子,去掉"[" , "]" 和里面的 ","
#[34,4,234,6,2,1,33,457]
s = input()
s = s.strip("]")
s = s.strip("[")
q = map(int,s.split(","))
q = list(q)
print(q)
'''
#同时也提供列表推导式的解法
s = input()
s = s.strip('[')
s = s.strip(']')
s = s.split(',')
q = [int(s[i]) for i in range(len(s))]
print(q)
'''
'''
ValueError: invalid literal for int() with base 10: '457] '
如果有朋友在尝试时报错信息为这个,那就是注意一下:
输入框复制进去的真的只是一个列表吗?可能在输入的末尾多了一个" "空格呢!
倍受其害,在此提醒
'''
#好吧兄弟们,键盘接收列表可以直接用 eval
#[1, 2, 3, 4, 5, 6]
n = eval(input())
print(type(n))
print(n)
'''
[1, 2, 3, 4, 5, 6]
'''
若今后有新的例子将再添加