zoukankan      html  css  js  c++  java
  • python: line=f.readlines() 后如何消除line中的’\n’

    #!/ust/bin/env python3

    f = open("name.txt")
    date = f.readlines()
    print(date)
    f.close()

    #结果:
    #['eray\n', 'eray\n', 'bike\n']
    #打印出来的带 \n ,怎么去掉\n呢?

    #解决方法:
    #1、
    f = open("name.txt")
    date = f.read().splitlines()
    print(date)
    f.close()
    #结果:
    #['eray', 'eray', 'bike']

    #2、
    f = open("name.txt")
    date = f.readlines()
    #date = date.strip('\n')
    date = ''.join(date).strip('\n')
    print(date)
    f.close()
    #结果:

    eray
    eray
    bike

    第2中,注释掉的这行

    #date = date.strip('\n')     #如果去掉注释,会报如下错误:

     

     原因:

    提示信息中提到list中没有strip的这种属性。而我们知道,strip是字符串的属性,说明f.readlines返回的是一个列表。所以会导致出错。

    既然f.readlines()返回的是列表,而strip是字符串的属性,不难想到只要我们将f.readlines()返回的列表转换成字符串就能 用strip这个属性了。那么怎么将列表转为字符串呢?这里用的是字符串的join属性。

    line = ''.join(line)    #这样就将列表转换成字符串了。

    第1种,直接使用字符串方法:   splitlines   

     在如:

    strip函数用法:

    函数原型

    声明:s为字符串,rm为要删除的字符序列

    s.strip(rm)        删除s字符串中开头、结尾处,位于 rm删除序列的字符

    s.lstrip(rm)       删除s字符串中开头处,位于 rm删除序列的字符

    s.rstrip(rm)      删除s字符串中结尾处,位于 rm删除序列的字符

    注意:

    1. 当rm为空时,默认删除空白符(包括'\n', '\r',  '\t',  ' ')

  • 相关阅读:
    [Linux]调整swap
    [Linux]mysql错误总结-ERROR 1067 (42000): Invalid default value for TIMESTAMP
    Canvas动画:地球绕着太阳转
    50个好用的前端框架,建议收藏!
    flex布局属性说明
    纯CSS绘制的图形一览
    深入理解CSS盒模型(转)
    JS的防抖与节流学习笔记
    应用八:Vue之在nginx下的部署实践
    css元素居中的几种方式
  • 原文地址:https://www.cnblogs.com/zhangray/p/7118972.html
Copyright © 2011-2022 走看看