python处理字符串数据容易犯错的几个地方



f.writelines("队名"+":"+i+"\n")

f.writelines("队名:"+i+"\n")

这两个语句看起来没有什么区别,对吧?但实际上,它耽误了我半个多小时,因为在使用第二句的时候,冒号是以中文键盘的方式输入,而后面的写文件语句中,因为使用变量不需要切换中英文输入法,所以都使用的是英文键盘的冒号,从而导致在后面读文件进行数据处理的时候,以冒号为分隔符的时候出错,想到了是冒号的全半角的问题,然而却忽略了一个是全角,一个是半角,所以无论采用全角还是半角都出错,直到最后在txt文件里发现问题,才明白过来。


教训:凡是需要使用标点符号的地方,一定要注意全半角统一的问题!


line=line.replace("\n","")

if line.find("\n"):print 'still has \\n!'

想去掉换行符,然后测试看换行符还在不在,结果显示仍然在!又在这里纠结了十多分钟!

而事实上,line.find("\n")当“\n”不存在的时候,返回的是-1,而不是0!

所以,应该是 if line.find("\n")+1:print 'still has

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值