我有这样的python3代码(用F
字符串格式化):
folder = r"C:\Users\test"
for _,g in df.groupby(df['ID'].notna().cumsum()):
g.iloc[:,1:].dropna(how='all').to_csv(f"{folder}\\{g.iloc[0,0]}.txt",index=False)
我试图在Python2.7中格式化它:
Python2.7中的mycode:
folder = r"C:\Users\test"
for _,g in df.groupby(df['ID'].notna().cumsum()):
g.iloc[:,1:].dropna(how='all').to_csv("{}".format(folder+\\(g.iloc[0,0])+str(".txt")),index=False)
我得到了以下错误:
我做错了什么? 谢谢你的关注和帮助。
您必须将变量从{}
移动到format()
,并将rest保持在string中
"{}\\{}.txt".format(folder, g.iloc[0,0])
而不是
f"{folder}\\{g.iloc[0,0]}.txt"
您可以在https://pyformat.info/上了解更多信息
这里的双斜杠:用引号表示:
folder+'\\'+(g.iloc[0,0])+str(".txt")),index=False
虽然我更喜欢使用os.sep
而不是\\