gpt4 book ai didi

Python:有条件地比较 CSV 行值

转载 作者:行者123 更新时间:2023-11-30 23:36:41 24 4
gpt4 key购买 nike

我有以下 CSV 文件。

Item Number,Item Description,List Price,QTY Available
3079-000-006-000,Covert GTX Liner Size 6,99.99,8
3079-000-007-000,Covert GTX Liner Size 7,99.99,36
3079-000-008-000,Covert GTX Liner Size 8,99.99,181

我需要将可用数量限制为 10。因此,如果 row[3] 大于 10,我希望值 10 显示在该角色中。到目前为止我已经:

import csv
import os

inputFileName = "temp.csv"
outputFileName = os.path.splitext(inputFileName)[0] + "_modified.csv"

with open(inputFileName, "rb") as inFile, open(outputFileName, "wb") as outfile:
r = csv.reader(inFile)
w = csv.writer(outfile)

r.next()
w.writerow(['Item Number', 'Item Description', 'List Price', 'QTY Available'])

for row in r:
if row[3] >= 10:
row[3] = 10
w.writerow(row)

这会将“可用数量”列中的所有值更改为 10,但我只想更改超过 10 的值。如何将值限制为 10?

最佳答案

您正在比较字符串和整数;在比较之前先将 row(10) 转换为整数:

for row in r:
if int(row[3]) >= 10:
row[3] = 10
w.writerow(row)

row[3] 设置为 output 的整数并不重要,因为 csv.writer() 将变成它再次为您恢复为字符串。

关于Python:有条件地比较 CSV 行值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16309268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com