python篇 拆分input输入内容

引言

用处:将一个input内容拆分给多个变量,可以减少代码行数,让更加程序看起来更加简单,让你看起来更加专业,让抄你作业好兄弟一脸懵

需要介绍split()函数

提到拆分就不能不提split(),input输入多个内容默认会被定义为一个序列,所以也处于split()的拆分范畴内。

1.利用split语法

Str.split(str,num)

"Str"表示需要拆分的字符串;
split()中有两个参数,“str”表示分隔符,num则表示需要拆分的次数。
如果不传入实际参数,则默认str的值为空格、制表符,num的默认值为-1,即能够拆分的所有次数
下面进行实际演示:

str="my name is undefineing"
i1,i2,i3,i4=str.split()
print(i1)
print(i2)
print(i3)
print(i4)

python篇 拆分input输入内容_第1张图片

2.eval()函数

拆分是拆分了,但拆分的变量一定能用吗?
input输入的是什么?字符型数据,如果我想要其他类型呢?
这里就可以用eval

#eval
i1,i2,i3=i=eval(input("请输入三个数:"))
print(i1," ",i2," ",i3)
print(i1+i2+i3)

在这里插入图片描述

似乎默认只能用“,”分隔,我对其不是很熟,只了解了它能做到自动转换很多类型的功能,但参数还是比较少。

3.map()函数

当初学C语言时,打代码打的很快乐一天两天一两万行代码,直到没几天看到了循环,自己200个printf比不过别人一个while,觉得自己像个傻子,同理某一天把input输入内容用split拆分,在逐个去强制类型转换时看到了map,虽然没有当初200行手打(当初还不会复制粘贴)代码对比别人两行代码那么夸张,但不管怎么看,都觉得自己再次受到了侮辱,本着看到即归我原则,我也得会才行。

#map
i1,i2,i3=map(int,input("请输入三个数:").split(","))
print(i1," ",i2," ",i3)

python篇 拆分input输入内容_第2张图片

分析

map(function,str)

这里的map有两个参数,其中function为一个函数,str则为一个可迭代对象,将str中的元素送入function函数中进行加工,来达到自己想要的效果。

input().split()拆分后默认是一个字符列表,而int是强制类型转换的函数,换成float之类的也行,将这个字符列表送入int函数中加工,最后得到的就是的数值列表,再通过切片赋值给i1,i2,i3等几个变量就达到了拆分input输入内容的同时并转换类型的目的。

你可能感兴趣的:(python,开发语言,后端)