我有下面的代码,其中文件名是FR1.1.csv,FR2.0.csv等。我正在使用这些名称在标题行中打印,但我想将这些名称修改为FR1.1,Fr2.0等。因此,我正在使用Strip函数删除.csv。当我在命令提示符下尝试它时,它的工作正常。但是,当我将其添加到主脚本时,它没有给出输出。
for fname in filenames:
print "fname : ", fname
fname.strip('.csv');
print "after strip fname: ", fname
headerline.append(fname+' Compile');
headerline.append(fname+' Run');
我得到的输出
fname :FR1.1.csv
after strip fname: FR1.1.csv
所需的输出->
fname :FR1.1.csv
after strip fname: FR1.1
我想for循环后我的代码中有一些缩进问题。plesae告诉我实现此目标的正确方法是什么。
字符串是不可变的,因此字符串方法不能更改原始字符串,它们返回一个新的字符串,您需要再次分配它:
fname = fname.strip('.csv') # no semicolons in Python!
但是此调用并没有达到您的预期。它会删除所有的开头和结尾的字符c
,s
,v
并.
从你的字符串:
>>> "cross.csv".strip(".csv")
'ro'
所以你可能想做
import re
fname = re.sub(r"\.csv$", "", fname)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句