Python的Print输出函数和Input输入函数


输出函数print()和输入函数input()

这篇文章主要讲解python输出函数print()、输入函数input()的语法以及各参数的使用示例

1.输出函数print()

作用: 用于打印输出
语法:print (*objects, sep=’ ', end=‘n’, file=sys.stdout, flush=False)

1.1参数说明:

1.objects:表示输出一个或者多个对象。输出多个对象需要用sep分隔。
2.sep:输出多个对象时使用sep分隔,默认值是一个空格。
3.end:输出结束以end结尾,默认值是换行符\n,可以换成其他字符串。
4.file:要写入的文件对象,默认为终端输出。
5.flush:输出是否被缓存通常决定于file,但如果flush关键字参数为True,流会被强制刷新。

1.2第一个参数objects–对象

输出多个对象时,用逗号隔开
我们通过举例来观察,使用print()函数输出三个一样的语句print(‘hello’,‘world’,123)

print('hello','world',123)
print('hello','world',123)
print('hello','world',123)

可知结果为:
在这里插入图片描述
根据输出结果可知,我们输出了三个对象。

1.3第二个参数esp–间隔多个输出对象

sep不定义的时候默认是空格

print('hello','world',123,sep='+')
print('hello','world',123,sep='-')
print('hello','world',123)

此处输出的结果为:
在这里插入图片描述
根据结果可知,定义sep值后,第一行的多个输出对象由+分隔,第二行由-分隔,第三行没有设定,由默认的空格分隔。

1.4第三个参数end–以什么结尾

不定义end值时,默认是换行结尾
我们再修改一下代码观察一下。

print('hello','world',123,sep='+',end='???')
print('hello','world',123,sep='-')
print('hello','world',123,end="banana")
print("111")

这个时候我们的输出结果为:
在这里插入图片描述
我们第一个print中将end设置成了???,所以由???结尾,第二个print没有设置,所以默认换行结尾,第三个print的end设置成了banana,所以是banana结尾。我在第三个print后面补充了一个print(“111”),就是为了体现它不是换行结尾的特性。

补充:使用print对多个字符串输出时,如果没有使用逗号隔开,会直接拼接。

2.输入函数input()

作用:输入信息、内容
语法:input([prompt])
特点:输入的内容均是字符串类型

2.1参数说明:

1.prompt: 提示信息

当你调用这个input()函数时,Python解释器会等待用户输入。当用户使用键盘输入值后,将输入的值保存在变量中。
我们举个例子来观察一下

a=input()
b=input()
print(a,type(a))
print(b,type(b))

根据代码,我们得到的输出结果:
在这里插入图片描述
输入的两个变量都被转换成str,也就是字符串类型。

默认情况下,input()函数返回一个字符串。如果你想从用户那里读取一个数字,你可以分别使用 int()、float() 和 complex()函数将字符串类型转换为int、float或complex类型。
例如输入以下代码:

a=float(input())
b=int(input())
print(a,type(a))
print(b,type(b))

根据代码得到的输出结果为:
在这里插入图片描述

2.2参数prompt–提示用户信息

prompt是一个字符串,在input()函数开始读取用户输入的值之前输出。提示信息有助于让用户知道应用程序期望什么样的输入,可省略。
让我们使用它的参数试一下:

a=int(input('输入一个分数:'))
if a>=60:
    print("成绩合格")

else:
    print('成绩不合格')

我们进行一下测试:
在这里插入图片描述
在实际运用中,我们可以根据输入的提示输入合适、恰当的内容,是对用户输入的一种提示。

拓展用法:

2.3split()

正常来说,一个input()函数只能接收一个数据,如果想要通过一个input函数接收多个数据,可以使用分割放进不同的变量存储。
split() 通过指定分隔符对字符串进行切片。
使用了split方法后,默认的是以空格切割,可以根据自己喜好设置分割符号。
具体例子如下:

a,b=input().split()
print(a,type(a))
print(b,type(a))

在这个代码中,我们的split方法中是没有定义分割符号的,默认是空格,我们看输入和输出结果在这里插入图片描述在没有定义split括号里面的内容的时候,默认是空格间隔,使用其他程序会报错,可自行尝试。
我们定义split(“,”)试一下

a,b=input().split(",")
print(a,type(a))
print(b,type(a))

根据代码,可以看到的输出结果是:
在这里插入图片描述

正常来说,我们需要输入几个变量,在使用split分割后,就需要几个变量接收,如果接收的变量数和输入的变量数不符合,会产生报错。如果只使用一个变量去接收被分割符分割的多个数据,得到的是一个列表,我们可以实践测试一下:

a=input().split(",")
print(a,type(a))

我们模拟输入两个数据,看输出结果和输出类型。
在这里插入图片描述
所以,在输入多组数据的时候,是不可以在input函数前使用int、float等数据类型直接强制转换的,因为得到的对象是一个列表。
但是可以通过映射函数map()强制转换自己的类型,这个转换指的是input输入多个数据的中任意一个数据的数据类型。
map(需要转换的数据类型,)

x=map(float,input("请输入:").split(","))
print(x)
print(type(x))
for y in x:
    print(y)
    print(type(y))

在这里插入图片描述
由此可以看出,使用map函数强制转换后得到的是这个map这个键控集合存储值的地址,我们通过遍历得到里面存储的变量值,并输出它的数据类型。根据输出结果可以看出,输入的变量确实由str转到float。

2.4strip()

strip()方法移除输入数据头尾指定的字符(默认为空格)。strip方法是左右两边同时向中间排除设定的字符,如果开始没有遇到设定的字符就会停止排查。左边没有遇到不会遇到右边的排查。例子如下:

a=input('输入一组乱码数据:').strip('##')
b=input("输入一组乱码数据:").strip('##')
print(a)
print(b)

运行的输出结果为:
在这里插入图片描述
除了strp(),还有只从左边向中间检测并删除指定字符的函数lstrip(),l取自left和只从右边向中间检测的的rstrip(),r取自right。

我们看一个例子能够迅速理解:

a=input('输入一组乱码数据:').lstrip('##')
b=input("输入一组乱码数据:").rstrip('##')
print(a)
print(b)

我们可以看到输出结果为:
在这里插入图片描述
由此可以验证我们之前的结论。

感谢你的阅读,关注我,精彩继续!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值