python输入--键盘接收不同类型数据

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、input 接收单个数据?
  • 二、使用步骤
    • 1.一行内数据少
    • 2.一行接收多个整型数据
    • 3.键盘接收一个列表
  • 总结


前言

python--我们常常要处理 input() 接收过来的数据,下面的文章让你可以更深一步的处理不同情况的input() 输入数据


一、input() 接收单个数据

直接单个数据的接收--最终呈现为str 字符串类型,刚刚开始学习python的朋友可能经常

y = input()

print(y+5)        X

就直接将 x 作为数值型带入运算了

对于这样的--直接可以在接收时就转换  y = int(input())

二、一行 接收 多个数据

1.一行内 个数少(几个)

        比如只有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
 

'''

2.一行内接收多个整型数据

q = map(int,input().split())

print(q)
#将迭代器强制转换为列表
q = list(q)
print(q)


'''
2 3 5 8 9


[2, 3, 5, 8, 9]

'''

#再提供一种列表推导式
q = [int(i) for i in input().split()]

多次出现了map,可能此时有些朋友会有些疑惑

map(fnc,li)   fnc是函数,li是容器   
返回值为迭代器,是一个地址,可以对其返回值强制转换为想要的数据类型,这里是list

3.键盘接收一个列表

我们不能直接操作,但是明显可以将其变成 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]


'''

总结

若今后有新的例子将再添加

你可能感兴趣的:(python)