我正在学习Python,并且正在查看csv文件。
基本上我的情况是这样的:
我在一个csv文件中有X、Y、Z坐标。
我想要遍历并在所有Z值中添加用户定义的偏移值,并创建一个包含已编辑z值的新文件。
以下是我目前的代码,我认为是正确的:
现在来到了困难的部分。我该如何浏览一堆CSV文件(在同一个位置),并为每个CSV文件生成一个新文件。
我希望得到这样的东西:"filename.csv"变成"filename_offset.csv",使用原始文件名作为新文件名的开头,将".offset"附加到末尾。
我认为我需要使用"os."函数,但我不确定应该怎么做,所以带有代码的任何解释都将受到赞赏! :)
如果我表达不清楚,请告诉我。 :)
非常感谢! :)
基本上我的情况是这样的:
我在一个csv文件中有X、Y、Z坐标。
X Y Z
1 1 1
2 2 2
3 3 3
我想要遍历并在所有Z值中添加用户定义的偏移值,并创建一个包含已编辑z值的新文件。
以下是我目前的代码,我认为是正确的:
# list of lists we store all data in
allCoords = []
# get offset from user
offset = int(input("Enter an offset value: "))
# read all values into memory
with open('in.csv', 'r') as inFile: # input csv file
reader = csv.reader(inFile, delimiter=',')
for row in reader:
# do not add the first row to the list
if row[0] != "X":
# create a new coord list
coord = []
# get a row and put it into new list
coord.append(int(row[0]))
coord.append(int(row[1]))
coord.append(int(row[2]) + offset)
# add list to list of lists
allCoords.append(coord)
# write all values into new csv file
with open(in".out.csv", "w", newline="") as f:
writer = csv.writer(f)
firstRow = ['X', 'Y', 'Z']
allCoords.insert(0, firstRow)
writer.writerows(allCoords)
现在来到了困难的部分。我该如何浏览一堆CSV文件(在同一个位置),并为每个CSV文件生成一个新文件。
我希望得到这样的东西:"filename.csv"变成"filename_offset.csv",使用原始文件名作为新文件名的开头,将".offset"附加到末尾。
我认为我需要使用"os."函数,但我不确定应该怎么做,所以带有代码的任何解释都将受到赞赏! :)
如果我表达不清楚,请告诉我。 :)
非常感谢! :)
module glob
会在这种情况下有所帮助。 - The6thSense