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

  • 相关阅读:
    Android中ProgressDialog的应用
    Content的startActivity方法需添加FLAG_ACTIVITY_NEW_TASK flag
    android onKeydown
    8 个最优秀的 Android Studio 插件
    Android 异步加载图片,使用LruCache和SD卡或手机缓存,效果非常的流畅
    Android提供的LruCache类简介
    Android设计中的.9.png与Android Studio中的设置
    js实现双击后网页自己主动跑-------Day55
    Oracle经常使用函数
    《R实战》读书笔记三
  • 原文地址:https://www.cnblogs.com/zhangray/p/7118972.html
Copyright © 2011-2022 走看看