从命令行运行convert_json_to_csv.py脚本报NameError错误求助
问题解决:NameError: name 'convert_json_to_csv' is not defined
你的脚本代码本身没有问题,报错的核心原因是运行脚本的方式错误:
- 如果你是在Python交互环境中,错误输入了
convert_json_to_csv()来调用函数,但你的脚本里定义的函数名是json_to_csv,自然会触发未定义错误。正确操作是先导入脚本:import convert_json_to_csv,再调用convert_json_to_csv.json_to_csv();或者直接在交互环境里执行脚本内容:exec(open('convert_json_to_csv.py').read())。 - 如果你是在命令行运行脚本,应该执行
python convert_json_to_csv.py(Windows系统)或python3 convert_json_to_csv.py(Linux/macOS系统),而非进入Python交互环境后尝试调用不存在的函数名。
另外,你可以给脚本添加主程序入口,让结构更规范,避免后续混淆:
import pandas as pd def json_to_csv(json_file_path, csv_file_path): # Read JSON file into a dataframe df = pd.read_json(json_file_path, lines=True) # Save dataframe to a CSV file, delimited by a pipe df.to_csv(csv_file_path, index=False, sep='|') if __name__ == "__main__": json_file_path = 'trulab.json' # Path to your JSON file csv_file_path = 'trulab.csv' # Path where CSV file will be saved json_to_csv(json_file_path, csv_file_path)
修改后,无论是直接运行脚本,还是将脚本作为模块导入,都不会出现意外问题。
内容的提问来源于stack exchange,提问作者DLC
相关产品推荐
相关产品推荐

