• Python如何把数据库导出的ID拼接成一行用逗号拼接的字符串
  • 发布于 2个月前
  • 157 热度
    0 评论
在公司搬砖,有时候会需要从生产环境 MySQL 导出一批 ID 到文件,然后再基于这些 ID 写 Update SQL。下面这段 Python 代码用来处理 MySQL 导出文件,大家可以直接 Copy 拿去用。

为什么不直接写一个 Update + 子查询 SQL?

因为生产环境的 UpdateSQL 如果不能良好的利用索引可能导致锁表,所以建议把需要修改的数据先 SELECT 出来,另外再写一个 UPDATE SQL。


代码实现
这段 Python 代码用于按行读取名为 input.txt 的文件,并在每行末尾添加一个字符串 ,,然后将所有行合并到一行后打印出来。
with open('input.txt', 'r') as f:
    lines = f.readlines()
    result = ','.join(line.strip() for line in lines)
    print(result)
代码解析:
首先,使用 with 语句和 open 函数以只读模式 (‘r’) 打开名为 input.txt 的文件。with 语句可以确保在操作完成后文件被正确关闭。
然后,使用 readlines 方法读取文件中的所有行,并将它们存储在变量 lines 中。
接下来,利用列表推导式循环使用 strip 方法去除每行末尾的换行符。

接着使用 join 方法将每行末尾添加一个字符串 ,,并将所有行合并到一行。

最后,使用 print 函数打印合并后的结果。

Demo
input.txt:
group_id
448829
1398390
1364528
1186008
1482970
1185295
1574272
1060314
1502633
1516421
1545337
执行结果:
group_id,448829,1398390,1364528,1186008,1482970,1185295,1574272,1060314,1502633,1516421,1545337,

用户评论