我有一个简单的Excel文件:A1 = 200 A2 = 300 A3 = = SUM(A1:A2)
此文件在excel中工作并显示SUM的正确值,但在使用openpyxl模块进行python时,我无法在data_only = True模式下获取值
shell中的Python代码:
wb = openpyxl.load_workbook('writeFormula.xlsx', data_only = True)
sheet = wb.active
sheet['A3']
<Cell Sheet.A3> # python response
print(sheet['A3'].value)
None # python response
Run Code Online (Sandbox Code Playgroud)
而:
wb2 = openpyxl.load_workbook('writeFormula.xlsx')
sheet2 = wb2.active
sheet2['A3'].value
'=SUM(A1:A2)' # python response
Run Code Online (Sandbox Code Playgroud)
有什么建议我在做什么?
我正在尝试理解Unicode和所有相关的东西.我制作了一个utf-8.txt文件,显然是用utf-8编码的.它有"Hello world!" 内.继承人我做的事情:
f = open('utf8.txt', mode = 'r', encoding = 'utf8')
f.read()
Run Code Online (Sandbox Code Playgroud)
我得到的是:'\ ufeffHello world!' 前缀来自哪里?
另一个尝试:
f = open('utf8.txt', 'rb')
byte = f.read()
Run Code Online (Sandbox Code Playgroud)
打印字节给出:b'\ xef\xbb\xbfHello world!' 我假设前缀以十六进制形式出现.
byte.decode('utf8')
Run Code Online (Sandbox Code Playgroud)
上面的代码再次给了我:'\ ufeffHello world!'
我究竟做错了什么?如何从utf-8文件中检索文本到python?
感谢您的反馈!
我有一个每天都在运行的程序。我想为它的每次运行创建一个日志。这是负责日志记录的代码片段:
logging.basicConfig(filename = 'log.txt', level = logging.DEBUG, format = '%(asctime)s - %(levelname)s - %(message)s')
logging.debug('Start of program') # example logging
Run Code Online (Sandbox Code Playgroud)
只要我通过 .py 文件或 .bat 文件(鼠标在文件资源管理器中单击)启动它,一切都运行良好。不幸的是,当我把它放在日程表上时,程序运行良好,但没有创建日志文件。
我尝试了多个调度程序设置,但问题似乎出在脚本代码中。
感谢反馈!