如何使用代码中已定义的oldest_id和iso_date变量命名保存DataFrame?
解决方法
你当前的写法把变量名直接写在了字符串里,程序只会将其识别为普通文本,无法引用实际的变量值。可以通过以下几种方式实现动态生成文件名:
推荐:使用f-string(Python 3.6及以上版本支持)
这是最简洁易读的写法,在字符串前加f,用{}包裹变量名即可:df_all.to_csv(f'{oldest_id}_{iso_date}.csv')这里用下划线分隔变量,避免文件名出现异常符号,你也可以根据需求替换成其他分隔符。
字符串拼接
如果变量不是字符串类型,需要先通过str()转换类型,再用+拼接:df_all.to_csv(str(oldest_id) + '_' + iso_date + '.csv')使用str.format()方法
适合需要兼容旧版本Python的场景,将变量作为参数传入format():df_all.to_csv('{}_{}.csv'.format(oldest_id, iso_date))
注意:f-string和format()方法会自动将数字类型的oldest_id转为字符串,无需手动处理;而字符串拼接则必须先转换类型,否则会触发类型错误。
内容的提问来源于stack exchange,提问作者Jeremiah Aremu
相关产品推荐
相关产品推荐

