python中input()函数详解

1.input()函数赋值后数据在python内部的类型。

if __name__=="__main__":
    a=input()
    print(type(a))
    b=input()
    print(type(b))
    c=a+b
    print(c)
    print(type(c))

输入及输出:

从结果可以看出,我们通过input输入的数据在python中被默认为string型即字符串类型。执行a+b得到的并不是两个数据的和,而是字符串的连接。
2.input()函数读取数据的转换
为了让input()函数读取的数据转换为我们想要的类型,我们可以使用类型强制转换,将数据转换为我们想要的int、float、list等类型。
实验代码:

if __name__=="__main__":
    a=int(input())
    print(type(a))
    b=float(input())
    print(type(b))
    c=a+b
    print(c)
    print(type(c))

实验结果:


3.input()函数的交互性
可以在()内放入需要显示的提示性语言,具体如下代码所示:

if __name__=="__main__":
    a=int(input())
    print(type(a))
    b=float(input())
    print(type(b))
    c=a+b
    print(c)
    print(type(c))
    name=input("请输入您的名字")
    print(name)
    number=input("请输入"+str(name)+"同学的学号")

结果如下:

从结果可以看出,如果想在提示语中增加变量,需要使用str(变量名),连接方式为“+”。前面已经提到,input()函数读取的变量在python中默认为string类型,因此这里不需要添加str()强制转换也可以正常输出。
4.input()函数一次读取多个变量
4.1利用split()函数进行输入的分割,一般默认为空格分割符,也可以自己设置。

if __name__=="__main__":
   list1=input("请输入一个列表:\n").split(" ")
   print(type(list1))
   list2= input("请输入一个列表:\n").split(",")
   print(type(list2))
   print(type(list1[1]))

实验结果:

从实验结果我们可以看出,split()函数可以对输入字符串进行分割,且必须设定分割符,空格不可以省略,上面报错是因为没有指定分割符,分隔符是空格也不可以省略。同时,split()函数分割后返回值是列表类型,列表中每个元素是string类型。
4.2input()函数一次性输入多个变量值
代码:

if __name__=="__main__":
  a,b,c=input("请输入多个变量值:\n").split()
  print(a)
  print(b)
  print(c)
  print(type(c))

结果:



结果分析:当我们输入的数据大于变量个数时,会报错。split()如果没有指定分割符,默认为空格,但是()内不能输入“”。分割后的变量仍然是string类型。

4.3将多个变量同时进行类型强制转换
map()函数用来实现多个输入的强制类型转换,map()函数接收两个参数,一个是强制转换的类型函数,一个是序列。map()函数将将强制转换类型的函数依次作用到序列的每个元素,并将结果作为list进行返回。
代码:

if __name__=="__main__":
  a,b,c=map(int,input("请输入多个变量值:\n").split())
  d,e,f=[1,2,3]
  print(a)
  print(type(a))
  print(d)
  print(e)

实验结果:

实验结果:
(1)列表可以直接赋值给多个变量。
(2)split()函数的返回值是列表。
(3)map()函数的返回值是对象。

来源:代号零零一

物联沃分享整理
物联沃-IOTWORD物联网 » python中input()函数详解

发表评论