Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x Python权限2.7,并在Windows 10上升级到3.7_Python 3.x_Python 2.7 - Fatal编程技术网

Python 3.x Python权限2.7,并在Windows 10上升级到3.7

Python 3.x Python权限2.7,并在Windows 10上升级到3.7,python-3.x,python-2.7,Python 3.x,Python 2.7,我已经和某事斗争了将近3天了。我有一个简单的Python程序,首先是XLSXwriter,现在是OpenpyXLS,所以我认为它与包没有关系,因为它们的行为相同 它在2.7上运行良好,但如果我切换到3.7,它将失败,并出现权限错误。如果我在3.7解释器中输入它,它运行良好。一直在使用安装在C:\Python27上的Python 2.7。决定我应该迁移到3,所以我使用Python3安装程序安装在C:\Python37。我将其设置为python2在cmd提示符下启动2.7,python启动3.7。当

我已经和某事斗争了将近3天了。我有一个简单的Python程序,首先是XLSXwriter,现在是OpenpyXLS,所以我认为它与包没有关系,因为它们的行为相同

它在2.7上运行良好,但如果我切换到3.7,它将失败,并出现权限错误。如果我在3.7解释器中输入它,它运行良好。一直在使用安装在C:\Python27上的Python 2.7。决定我应该迁移到3,所以我使用Python3安装程序安装在C:\Python37。我将其设置为python2在cmd提示符下启动2.7,python启动3.7。当我尝试在2.7中运行此功能时,它很好,但3.7失败:

#!/usr/bin/python

import openpyxl
import os


print(os.getcwd())

wb = openpyxl.Workbook()

for module in range(1,20):
    ws = wb.create_sheet("M" + str(module))
    ws.cell(row=1, column=1, value='Current')
    for y in range(1,21):
        ws.cell(row=1, column=y+1, value='M'+ str(module) +'_CV'+ str(y))

wb.save('testfile.xlsx')
错误是:

C:\Users\PF Flyers\Python\CAN>python2 work\u dummy.py
C:\Users\PF Flyers\Python\CAN
C:\Users\PF Flyers\Python\CAN>Python work\u dummy.py
C:\Users\PF Flyers\Python\CAN
回溯(最近一次呼叫最后一次):
文件“work_dummy.py”,第17行,在
save('testfile.xlsx')
文件“C:\Python37\lib\site packages\openpyxl\workbook\workbook.py”,第391行,保存
保存工作簿(自身,文件名)
保存工作簿第282行的文件“C:\Python37\lib\site packages\openpyxl\writer\excel.py”
archive=ZipFile(文件名为'w',压缩,允许zip64=True)
文件“C:\Python37\lib\zipfile.py”,第1204行,在\uuu init中__
self.fp=io.open(文件、文件模式)
PermissionError:[Errno 13]权限被拒绝:“testfile.xlsx”
我已经检查了两个python目录的权限,它们似乎是相同的。对工作目录的权限没有问题。我使用了绝对文件路径、osjoin等。我用管理员权限等运行了cmd提示符。我只是无法让它在3.7下工作,我被难倒了

编辑:

我仍在做这件事,我已经做了一些基本的工作。我有一些简单的代码

Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:05:16) [MSC v.1915 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import openpyxl
>>> wb = openpyxl.Workbook('New.xlsx')
>>> wb.save('Test.xlsx')
>>>
它很好用。当我在打开文件的情况下从命令行运行它时,当它保存Test.xlsx文件时权限失败,并出现权限错误

#!/usr/bin/python

import openpyxl

file = open('New.txt', 'r')
print(file.read())

wb = openpyxl.Workbook('New.xlsx')
wb.save('Test.xlsx')

open语句可以工作并打印.txt的内容,但如果我将open语句更改为New.xlsx,则会导致失败。出于某种原因,它似乎与xlsx文件有关,但我不知道为什么以及为什么它在解释器中可以正常工作。

excel文件不是偶然在excel中打开的?Excel会锁定此文件以供编写。据我所知不是这样。我甚至看了任务经理一眼,什么也没看到。