为了账号安全,请及时绑定邮箱和手机立即绑定

打印一个列表并从每个新行中删除 '\n',给出错误

打印一个列表并从每个新行中删除 '\n',给出错误

慕少森 2022-06-02 18:17:01
从文件中打印列表并且不允许我使用.rstrip('/n'):path =('debits.txt','r') f = open('debits.txt') read = f.readlines().rstrip('/n')期望我打印一个漂亮的干净列表,而不'\n'会将每个条目放入列表中。
查看完整描述

3 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

首先,readlines返回一个列表,因此您需要应用rstrip到它的元素,而不是应用到它,并且,您'/n'在代码中进行条带化(应该是'\n'),最后,您没有使用path变量 in open(不使用它不会导致一个错误,但你可能应该使用它,因为你定义了它):


path =('a.txt', 'r')


with open(*path) as f:  #  use `with` to automatically close the file after reading

    read = [l.rstrip('\n') for l in f.readlines()]

另请注意,您可以只使用l.rstrip()(不需要'\n') 来删除空格。


查看完整回答
反对 回复 2022-06-02
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

f.readlines() 返回一个列表,因此请遍历该列表:


f = open('debits.txt', 'r')

read = f.readlines()

for line in read:

    line = line.rstrip("\n")

    print(line)

f.close()


查看完整回答
反对 回复 2022-06-02
?
神不在的星期二

TA贡献1963条经验 获得超6个赞

rstrip()从字符串中删除\n而不是列表。这就是你得到错误的原因。在读取文件时使用它:

with open('debits.txt') as f:
    alist = [line.rstrip() for line in f.readlines()]


查看完整回答
反对 回复 2022-06-02
  • 3 回答
  • 0 关注
  • 133 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号