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',  ' ')

  • 相关阅读:
    文件操作回顾
    数据类型回顾
    面向对象三大特性之封装与多态
    面向对象之继承
    轮播图
    jQuery事件操作
    jQuery动画效果
    jQuery篇
    文档对象模型
    javascript
  • 原文地址:https://www.cnblogs.com/zhangray/p/7118972.html
Copyright © 2011-2022 走看看