• 两种让python输出更加美观的方式,三分钟看完就会


    嗨害大家好鸭!我是小熊猫❤

    最近要给大家持续带来干货输出啦!

    赶紧收藏起来,以后查漏补缺要用到的喔~

    源码、资料电子书点击这里

    请添加图片描述

    1.输出格式美化

    Python两种输出值的方式: 表达式语句print() 函数。
    (第三种方式是使用文件对象的 write() 方法; 标准输出文件可以用 sys.stdout 引用。)

    如果你希望输出的形式更加多样,可以使用 str.format() 函数来格式化输出值。

    如果你希望将输出的值转成字符串,可以使用 repr()str() 函数来实现。

    • str() 函数返回一个用户易读的表达形式。
    • repr() 产生一个解释器易读的表达形式,reprrjust和ljust方法。
    print("repr().rjust")
    for x in range(1,11):
        print(repr(x).rjust(2),repr(x*x).rjust(3),repr(x*x*x).rjust(4))
        
    print("repr().ljust")
    for x in range(1,11):
        print(repr(x).ljust(2),repr(x*x).ljust(3),repr(x*x*x).ljust(4))
        
    print("repr().center")
    for x in range(1,11):
        print(repr(x).center(2),repr(x*x).center(3),repr(x*x*x).center(4))
        
    print("'{}'.format()")
    for x in range(1,11):
        print('{0:2d} {1:3d} {2:4d}'.format(x,x*x,x*x*x))
        
    >>
    repr().rjust
     1   1    1
     2   4    8
     3   9   27
     4  16   64
     5  25  125
     6  36  216
     7  49  343
     8  64  512
     9  81  729
    10 100 1000
    repr().ljust
    1  1   1   
    2  4   8   
    3  9   27  
    4  16  64  
    5  25  125 
    6  36  216 
    7  49  343 
    8  64  512 
    9  81  729 
    10 100 1000
    repr().center
    1   1   1  
    2   4   8  
    3   9   27 
    4   16  64 
    5   25 125 
    6   36 216 
    7   49 343 
    8   64 512 
    9   81 729 
    10 100 1000
    '{}'.format()
     1   1    1
     2   4    8
     3   9   27
     4  16   64
     5  25  125
     6  36  216
     7  49  343
     8  64  512
     9  81  729
    10 100 1000
    
    进程已结束,退出代码0
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63

    注意:在第一个例子中, 每列间的空格由 print() 添加。

    这个例子展示了字符串对象的rjust()方法, 它可以将字符串靠右, 并在左边填充空格。

    还有类似的方法, 如 ljust() center()。 这些方法并不会写任何东西, 它们仅仅返回新的字符串。

    另一个方法 zfill(), 它会在数字的左边填充 0

    请添加图片描述

    2.读和写文件

    open() 将会返回一个 file 对象,基本语法格式如下:

    open(filename, mode)
    
    • 1

    实例:

    >>> f = open('/tmp/workfile', 'w')
    
    • 1
    • 第一个参数为要打开的文件名。
    • 第二个参数描述文件如何使用的字符。 mode 可以是 ‘r’ 如果文件只读, ‘w’ 只用于写 (如果存在同名文件则将被删除), 和
      ‘a’ 用于追加文件内容; 所写的任何数据都会被自动增加到末尾. ‘r+’ 同时用于读写。 mode 参数是可选的; ‘r’ 将是默认值。

    f.read()

    为了读取一个文件的内容,

    调用 f.read(size), 这将读取一定数目的数据,

    然后作为字符串或字节对象返回。

    size 是一个可选的数字类型的参数。

    当 size 被忽略了或者为负,

    那么该文件的所有内容都将被读取并且返回。

    >>> f.read()
    'This is the entire file.\n'
    >>> f.read()
    ''
    
    • 1
    • 2
    • 3
    • 4

    f.readline()

    f.readline() 会从文件中读取单独的一行。

    换行符为 ‘\n’。

    f.readline() 如果返回一个空字符串,

    说明已经已经读取到最后一行。

    f=open('D:/Lenovo/Desktop/pzl.txt','r+')
    print(f.readline())
    print(f.readline())
    print(f.readline())
    print(f.readline())
    >>>
    hello world1
    
    hello world2
    
    hello world3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    进程已结束,退出代码0

    请添加图片描述

    f.readlines()

    f.readlines() 将返回该文件中包含的所有行。

    如果设置可选参数 sizehint,

    则读取指定长度的字节,

    并且将这些字节按行分割。

    f=open('D:/Lenovo/Desktop/pzl.txt','r+')
    print(f.readlines())
    print(f.readlines())
    >>>
    ['hello world1\n', 'hello world2\n', 'hello world3\n']
    []
    
    进程已结束,退出代码0
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    另一种方式是迭代一个文件对象然后读取每行:

    >>> for line in f:
    ...     print(line, end='')
    ...		 #Python学习交流:660193417##
    This is the first line of the file.
    Second line of the file
    
    • 1
    • 2
    • 3
    • 4
    • 5

    这个方法很简单, 但是并没有提供一个很好的控制。 因为两者的处理机制不同, 最好不要混用。

    f.write()

    f.write(string) 将 string 写入到文件中,

    然后返回写入的字符数。

    f=open('D:/Lenovo/Desktop/pzl.txt','w')
    f.write('hello world')
    
    • 1
    • 2

    f.tell()

    f.tell() 返回文件对象当前所处的位置, 它是从文件开头开始算起的字节数。


    f.seek()

    如果要改变文件当前的位置, 可以使用 f.seek(offset, from_what) 函数。

    from_what 的值, 如果是 0 表示开头, 如果是 1 表示当前位置, 2 表示文件的结尾,例如:

    • seek(x,0) : 从起始位置即文件首行首字符开始移动 x 个字符
    • seek(x,1) : 表示从当前位置往后移动x个字符
    • seek(-x,2):表示从文件的结尾往前移动x个字符
    • from_what 值为默认为0,即文件开头。

    下面给出一个完整的例子:

    >>> f = open('/tmp/workfile', 'rb+')
    >>> f.write(b'0123456789abcdef')
    16
    >>> f.seek(5)     # 移动到文件的第六个字节
    5
    >>> f.read(1)
    b'5'
    >>> f.seek(-3, 2) # 移动到文件的倒数第三字节
    13
    >>> f.read(1)
    b'd'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    f.close()

    在文本文件中 (那些打开文件的模式下没有 b 的),

    只会相对于文件起始位置进行定位。

    当你处理完一个文件后,

    调用 f.close() 来关闭文件并释放系统的资源,

    如果尝试再调用该文件,则会抛出异常。

    请添加图片描述

    今天的知识点有没有掌握呢?

    这篇文章就到这里啦~

    还有更多干货还请多多关注我鸭~

    我是小熊猫,咱下篇文章再见啦(✿◡‿◡)

    请添加图片描述

  • 相关阅读:
    操作系统伙伴算法仿真c++
    2023年三大网络安全威胁不容忽视
    埋点上报系统
    【SAP ME 26】SAP ME创建开发组件(DC)mobile
    什么时NoSQL
    计算机毕业设计(附源码)python志愿者招募系统
    mysql报错:mysql8插入sql关键字“rank”问题
    spring boot 成功配置热部署(全网最全)
    内存对齐
    MySQL基础---SQL语句2(WHERE、AND、OR、ORDER BY、COUNT)
  • 原文地址:https://blog.csdn.net/m0_67575344/article/details/127749469