我正在尝试运行Python脚本,但是,一旦我尝试运行此脚本,就会看到“ PermissionError:[Errno 13]”消息,但我不确定为什么会这样。
我试图在这里寻找答案,但是没有一个结果,我什么都没有找到,这对我没有帮助。以下是我尝试运行的代码-
import os
import pandas
def summarise(indir, outfile):
os.chdir(indir)
filelist = ".txt"
dflist = []
colnames = ["Units", "Dealer Price", "Revenue", "End Consumer Country"],
for filename in filelist:
print(filename)
df = pandas.read_csv('SYB_M_20171001_20171031.txt', header=None,
encoding='utf-8', sep='\t', skiprows=3)
dflist.append(df)
df['Revenue'] = df[11] * df[13]
df = df.groupby([19, 21]).sum()
df = df[['Revenue', 11]]
df.to_csv(outfile, index=None)
dflist.append(df)
concatDF.to_csv(outfile, index=None)
concatDF.columns = colnames
summarise(r"O:\James Upson\Soundtrack Your Brand",
r"O:\James Upson\Soundtrack Your Brand Formatted")
这是我要创建的函数的SQL查询-
SELECT SUM(Units*Dealer_Price)
SUM(Units)
Consumer_Country,
Currency Code
FROM Sales File
GROUP BY Consumer_Country, Currency_Code
此脚本的结果应该是一个五列的csv文件,该文件将允许我查看每个地区(国家/地区)的单位,与每个地区相关联的经销商价格,收益列,其中显示了将单位乘以经销商价格,以及该地区的消费者国家和货币代码。
11 Units Column
13 Dealer Price Column
19 End Consumer Country Column
21 Currency Code Columns
这是我看到的错误消息
我非常确定我的代码可以进行调整/做得更好/已修复,因此对此的任何帮助,我将不胜感激:)
提前谢谢
答案 0 :(得分:0)
您收到的错误是因为您或共享驱动器上的其他人(可能是其他人)打开了文件。 Python无法锁定该文件。更改文件名,然后查看是否能够在同一位置写入其他文件。
写入共享驱动器可能很棘手,因为如果打开文件的人未正确释放文件锁,则文件锁可以打开很长时间。