从CMD打开Python脚本时无法将数据保存到文件

2024-07-08 17:06:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个简短的脚本,它接受用户输入并将其保存到电子表格中。从CMD打开时,它似乎运行正常,没有任何错误。但是,用户输入的数据实际上根本没有保存。 代码如下:

import openpyxl
wb = openpyxl.load_workbook('C:\\Users\\sp\\Documents\\testFolder\\testTF.xlsx')
sheet = wb.active
while True:  
    print('Enter pairs seprated with colon')
    pairList = input().split(':')
    maxRowNum = sheet.max_row
    sheet.cell(row=maxRowNum + 1, column=1).value = pairList[0]
    sheet.cell(row=maxRowNum + 1, column=2).value = pairList[1]
    wb.save('testTF.xlsx')        
    print('Pair saved\n\n') 

如果从文件资源管理器打开而不是从CMD打开,脚本会按预期保存数据。但在CMD中,它不是。 我试图解决这个问题的事情:

  1. 以管理员身份而不是普通用户身份在CMD中运行脚本
  2. 取消选中父文件夹的“只读”属性
  3. 创建一个新文件夹并将脚本移动到其中
  4. 取消选中新父文件夹的“只读”属性
  5. 根据https://appuals.com/how-to-fix-folder-keeps-reverting-to-read-only-on-windows-10/以管理员身份运行以下CMD命令:“attrib-r+sc:\Users\sp\Documents\testFolder”或“attrib-r-sc:\Users\sp\Documents\testFolder” 上面的方法都不起作用。在CMD中运行时,脚本仍然不会将数据保存到电子表格中。我不确定是什么问题以及如何解决这个问题。有人能帮忙吗?我真的很感激

Tags: 数据用户脚本文件夹cmd身份userssp
1条回答
网友
1楼 · 发布于 2024-07-08 17:06:48

您正在从一条路径阅读,并保存在另一条路径中。 尝试:

import openpyxl
wb = openpyxl.load_workbook('C:\\Users\\sp\\Documents\\testFolder\\testTF.xlsx')
sheet = wb.active
while True:  
    print('Enter pairs seprated with colon')
    pairList = input().split(':')
    if len(pairList) < 2:
        break
    maxRowNum = sheet.max_row
    sheet.cell(row=maxRowNum + 1, column=1).value = pairList[0]
    sheet.cell(row=maxRowNum + 1, column=2).value = pairList[1]
    wb.save('C:\\Users\\sp\\Documents\\testFolder\\testTF.xlsx')        
    print('Pair saved\n\n') 

我只是测试一下,效果很好。也许你打开了excel,并阻止了它

相关问题 更多 >

    热门问题