合并Python脚本从URL获取JSON直接生成逗号分隔客户ID列表
优化实现方案
核心逻辑是直接从接口返回的JSON数据中提取id字段,完全跳过中间CSV的生成、读取流程,没有冗余操作,也不会产生多余的中间文件:
import json # 此处保留你原有建立HTTP连接的逻辑即可 res = conn.getresponse() data = res.read() data_f = data.decode('utf-8') # 已修正原代码的笔误:删除了末尾冗余的`s']`字符 data_j = json.loads(data_f)['results'] # 直接提取所有id并拼接为逗号分隔的字符串 id_str = ','.join([str(item['id']) for item in data_j]) # 写入最终结果文件 with open("../lookups/customer_no_list", 'w', encoding='utf-8') as f: f.write(id_str)
优化说明
- 减少了不必要的磁盘IO操作:省去了中间CSV文件的写入、读取步骤,运行效率更高
- 代码更简洁可靠:使用Python内置的
str.join()方法拼接字符串,不会产生开头多余的逗号,也不需要额外调用正则做替换 - 稳定性更强:直接按字段名
id取值,不会因为原数据字段顺序变化出现取值错误的问题(原实现是按CSV列索引row[1]取值,字段顺序调整就会出错) - 兼容不同类型的id值:加了
str()转换,不管你的id是数字类型还是字符串类型都能正常拼接
内容的提问来源于stack exchange,提问作者Michael
相关产品推荐
相关产品推荐

