Python的换行符问题(strip)
如果我写Python的换行符问题(strip),python,newline,Python,Newline,如果我写 f = open("file.csv","r") if f.mode == "r": cols = [] snames = [] svals = [] rows = f.readlines() for x in rows: x.strip("\n") cols = x.sp
f = open("file.csv","r")
if f.mode == "r":
cols = []
snames = []
svals = []
rows = f.readlines()
for x in rows:
x.strip("\n")
cols = x.split(",")
snames.append(cols[0])
svals.append(cols[1])
然后svals仍然有\n我不想要的字符,例如“20.43256639\n”
但是如果我改为这样做,那么svals将显示正确的值,而不显示\n
for x in rows:
cols = x.split(",")
snames.append(cols[0])
svals.append(cols[1].strip("\n"))
svals具有正确的值,例如“20.43256639”
x.strip("\n")
不就地修改x
(因为字符串无论如何都是不可变的)。
试一试
相反,或者更简洁地说:
with open("file.csv","r") as f:
snames = []
svals = []
for x in f:
sname, sval = x.strip().split(",", 1)
snames.append(sname)
svals.append(sval)
行
x.strip(“\n”)
无效。您可能想执行x=x.strip(“\n”)
。顺便说一句,空白已经是默认值,所以只需执行x=x.strip()
@Tomerikoo“\n”
不是默认值。默认值为全部空白。这是否回答了您的问题?您没有错,但是如果您在读取缩进重要的数据(例如Python),那么x.strip()
vsx.strip(“\n”)
vsx.rstrip()
肯定会有不同。
with open("file.csv","r") as f:
snames = []
svals = []
for x in f:
sname, sval = x.strip().split(",", 1)
snames.append(sname)
svals.append(sval)