当前位置:   article > 正文

Python3的print用法_python3 print

python3 print

目录

一:print语法

二:print结尾参数end用法

三:print分隔符参数sep用法

四:print固定宽度字符输出


一:print语法

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

参数解释:         

"objects":要打印的对象,将打印输出至 "file参数" 指定的文本流,大部分使用就只用到了这个参数;

 "sep":以"sep"分隔开;

"end":在打印输出的后面以"end"参数结尾;

"file":将打印输出到文件,file必须是一个具有 write(string) 方法的对象;如果参数不存在或为 None,则将使用 sys.stdout。 由于要打印的参数会被转换为文本字符串,因此 print() 不能用于二进制模式的文件对象。 对于这些对象,应改用 file.write(...)。输出是否缓存通常取决于 file;

"flush":如果 flush 关键字参数为 True,输出流会被强制刷新。

        "sep" 、 "end "、 "file" 和"flush" 必须以关键字参数的形式给出。 flush 关键字参数是在 phthon3.3 版后增加的。

  1. >>> print("my name is ftz ",sep=' ',end='end结尾\n')
  2. my name is ftz end结尾
  3. >>>
  4. >>> logFile = open("logfile.txt",'w')
  5. >>> print("my name is ftz ",sep=' ',end='end结尾\n',file=logFile)

执行了三次默认是追加 

  1. [root]$ cat logfile.txt
  2. my name is ftz end结尾
  3. my name is ftz end结尾
  4. my name is ftz end结尾

二:print结尾参数end用法

print打印默认是换行的,那是因为end参数默认就是'\n',如果想在每个打印的末尾加一个定制的符号,可以使用end参数,例如:print()函数的“end”参数指定为“|”,即print()函数每次输出完成之后,结尾都输出"|"

  1. >>> print("默认换行")
  2. 默认换行
  3. >>> print("不换行打印",end="")
  4. 不换行打印>>>
  5. >>> print("以竖线结尾打印",end="|\n")
  6. 以竖线结尾打印|
  7. >>>

三:print分隔符参数sep用法

sep参数一般情况下用的不多,但是在特殊场景还是能派上用场,比如网址都是以‘.’进行分割,或者路径以'/',或者ip地址等等以特定字符进行分割的都能使用

  1. >>> print('192','168','1','1',sep='.')
  2. 192.168.1.1
  3. >>>
  4. >>> print('www','baidu','com',sep='.')
  5. www.baidu.com
  6. >>>
  7. >>> print("F:",'file','work',sep='/')
  8. F:/file/work
  9. >>>

四:print固定宽度字符输出

        当我们要输出一系列结果,但是中间字符不固定的情况下,如果是正常输出会出现错乱的情况,看上去也不美观,print允许我们以固定字符宽度和左右对齐的方式进行输出

比如如下输出

  1. 学生总数=22 学生名字重复数=29
  2. 学生总数=54 学生名字重复数=58
  3. 学生总数=455 学生名字重复数=287
  4. 学生总数=455 学生名字重复数=287
  5. 学生总数=2884 学生名字重复数=1579
  6. 学生总数=427 学生名字重复数=207
  7. 学生总数=1011 学生名字重复数=67
  8. 学生总数=427 学生名字重复数=208
  9. 学生总数=427 学生名字重复数=103
  10. 学生总数=2276 学生名字重复数=417
  11. 学生总数=0 学生名字重复数=0
  12. 学生总数=52 学生名字重复数=0
  13. 学生总数=52 学生名字重复数=0
  14. 学生总数=1522 学生名字重复数=1303
  15. 学生总数=0 学生名字重复数=0
  16. 学生总数=1558 学生名字重复数=1143
  17. 学生总数=454 学生名字重复数=286
  18. 学生总数=4 学生名字重复数=0
  19. 学生总数=11 学生名字重复数=12

我们先介绍一下字符宽度,字符宽度是指输出中每个字符所占的宽度。在默认情况下,每个字符的宽度是相等的。但在某些情况下,我们希望输出中的字符具有不同的宽度,以获得更好的视觉效果。例如,我们可能希望在输出表格时,各列的宽度是相等的,以便对齐数据。

 示例的对齐代码如下:

print(f"学生总数={student:<15} 学生名字重复数={count:<20}")

我们使用了"<“符号来指定左对齐。如果要右对齐,可以使用”>"符号。

我们也可以用以上方法输出表格形式的

  1. data = [
  2. ["Alice", 25, "Female"],
  3. ["Bob", 30, "Male"],
  4. ["Charlie", 35, "Male"]
  5. ]
  6. # 计算每列的最大宽度
  7. max_widths = [max(len(str(row[i])) for row in data) for i in range(len(data[0]))]
  8. # 输出表头
  9. header = ["Name", "Age", "Gender"]
  10. header_format = " | ".join(f"{{:<{width}s}}" for width in max_widths)
  11. print(header_format.format(*header))
  12. print("-" * sum(max_widths))
  13. # 输出数据
  14. for row in data:
  15. row_format = " | ".join(f"{{:<{width}}}" for width in max_widths)
  16. print(row_format.format(*row))

输出结果:

f打印是Python 3.6引入的,在之前的版本中,固定宽度字符输出也是支持的,通过使用字符串的格式化方法来实现输出指定字符宽度。字符串的格式化方法是通过在字符串中使用占位符来实现的。常用的占位符有"%s"和"%d",分别用于字符串和整数的格式化。

  1. data = [
  2. ["Alice", 25],
  3. ["Bob", 30],
  4. ["Charlie", 35]
  5. ]
  6. # 输出数据
  7. for row in data:
  8. print("Name: %-10s Age: %d" % (row[0], row[1]))

format进制格式化字符

格式符表示
{:s}字符串
{:d}十进制整数
{:f}浮点型
{:c}字符型
{:u}无符号十进制整数
{:o}八进制
{:x}十六进制
{:e}科学计数法

 以下是format常用格式化字符

格式符表示
{:.2f}保留两位小数
{:+.2f}保留两位小数并携带正负号
{:0>2d}左侧补零,整体占两个字符
{:0<2d}右侧补零,整体占两个字符
{:*<4d}右侧补星号,整体占4个字符
{:5d}右对齐,整体占5个字符
{:<5d}左对齐,整体占5个字符
{:^5d}居中对齐,整体占5个字符
{:.2e}科学计数法并保留两位小数
{:,}以逗号分割的数字

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/766658
推荐阅读
相关标签
  

闽ICP备14008679号