鱼C论坛

 找回密码
 立即注册
查看: 379|回复: 4

[已解决]换行符的问题?

[复制链接]
发表于 2020-4-21 09:13:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

import random
f=open("E:\\t.txt","w")
f.write("1011401119\n1011401118\n1011401120\n1011401122")
f.close()
f=open("E:\\t.txt","r")
i=f.readlines()

for i in f.readlines():
    i=line.strip('\n',"\r")
print(random.sample(i,4))
为啥打印出来的结果是:['1011401122', '1011401119\n', '1011401118\n', '1011401120\n']
换行符去不掉,是我哪里写错了啊
最佳答案
2020-4-21 09:16:41
用replace  替换
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-21 09:16:01 | 显示全部楼层
你如果遍历列表然后打印就不会有问题了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-21 09:16:41 | 显示全部楼层    本楼为最佳答案   
用replace  替换
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-21 09:27:15 | 显示全部楼层
本帖最后由 sunrise085 于 2020-4-21 10:04 编辑

你的程序for循环没有起到任何作用,
for之前有个i,在最后一行用的还是之前的那个i
for循环内的i是局部变量,不会对外面的i产生任何影响。

还有,for循环中你把每一行的'\n'删掉后,并没有保存啊,你赋值给i,再次循环i就没有了啊

再者strip函数用的好像不对吧?
import random
f=open("E:\\t.txt","w")
f.write("1011401119\n1011401118\n1011401120\n1011401122")
f.close()
f=open("E:\\t.txt","r")
k=f.readlines()
print(k)
for i in range(len(k)):
    k[i]=k[i].strip('\n')
print(random.sample(k,4))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-21 10:03:43 | 显示全部楼层
sunrise085 发表于 2020-4-21 09:27
你的程序for循环没有起到任何作用,
for之前有个i,在最后一行用的还是之前的那个i
for循环内的i是局部变 ...

谢谢啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 16:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表