python3之print()函数
print语法格式
print()函数具有丰富的功能,详细语法格式如下:
print(value, …, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False)
默认情况下,将值打印到流或sys.stdout。
可选关键字参数:
file:类文件对象(stream); 默认为当前的sys.stdout。
sep:在值之间插入的字符串,默认为空格。
end:在最后一个值后附加的字符串,默认为换行符。
flush:是否强制刷新流。
2、sep可选关键字参数
sep参数可以在值之间插入字符串,默认值为空格。
例:
print(‘1’,‘2’,‘3’,‘4’,sep = “插入”)
输出结果:
1插入2插入3插入4
3、file可选关键字参数
file参数默认值为sys.stdout,代表系统标准输出,即屏幕。我们可以通过改变该参数使print()函数输出到特定的文件中。
例:
f = open(r"F:\text.txt",“w”) # 打开文件,以便写入
print(‘test’,file = f) # 输出到文件
f.close() # 关闭文件
运行后,可以看到test输出到text.txt文件中。
4、end可选关键字参数
end参数默认为"\n"(换行符),如果想在print()函数输出之后输出别的字符串,可以重设end参数。
例:
print(‘1’,‘2’,end = “最后”)
输出结果:
1 2最后>>>
运行后,我们可以看到,print()函数输出之后不会换行,且在最后一个值后面附加了“最后”。
5、flush可选关键字参数
flush参数用于控制输出缓存,一般为了可以获得较好的性能,保持为False即可。
6、print()打印中比%格式符更方便的一个打印方式print(f"")
有没有小伙伴到现在还在用以下的%d%f%s …等方式打印
age = int(input("Please input your age:"))
name = input("Please input your name:")
print("Ok,your name is %s, and your age is %d." % (name, age))
当然,也不是说这种方式不能用,但是我们有一种更加直观并且方便的用法–print(F”“)。
以下是改进后的代码
age = int(input("Please input your age:"))
name = input("Please input your name:")
print(f"Ok,your name is {age}, and your age is {name}." )
这样写的话是不是比较方便,但一定要记住引号前的 f 一定不能忘记。
print 会自动在行末加上回车, 如果不需回车,只需在 print 语句的结尾添加一个逗号 , 并设置分隔符参数 end,就可以改变它的行为。
要想不换行你应该写成 print(i, end = '' )
1. 输出字符串和数字
>>>print("runoob") # 输出字符串
runoob
>>> print(100) # 输出数字
100
>>> str = 'runoob'
>>> print(str) # 输出变量
runoob
>>> L = [1,2,'a'] # 列表
>>> print(L)
[1, 2, 'a']
>>> t = (1,2,'a') # 元组
>>> print(t)
(1, 2, 'a')
>>> d = {'a':1, 'b':2} # 字典
>>> print(d)
{'a': 1, 'b': 2}
2. 格式化输出整数
支持参数格式化,与 C 语言的 printf 类似
>>>str = "the length of (%s) is %d" %('runoob',len('runoob'))
>>> print(str)
the length of (runoob) is 6