分享

SyntaxError: invalid or missing encoding declaration

grinsky 发表于 2016-12-15 12:02:01 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 4 23450
本帖最后由 grinsky 于 2016-12-15 13:58 编辑

报错如下:
runfile('C:/Users/desktop1/Documents/py3_agentcode/getlog.py', wdir='C:/Users/desktop1/Documents/py3_agentcode')
Reloaded modules: sys_status, getconf, base_config
  File "<string>", line unknown
SyntaxError: invalid or missing encoding declaration for 'C:\\Users\\desktop1\\Documents\\flume\\logs\\flume.log'


用的是python3.5
问题比较奇怪,当我将变量 logname设置为 logname = 'C:\\Users\\desktop1\\Documents\\flume\\logs\\flume.logs'
的时候就不报错了 能正常执行,再改回来还是会报错,(2个文件都存在。)
……,求大神来解救下。

已有(4)人评论

跳转到指定楼层
yaojiank 发表于 2016-12-15 13:52:54
原先logname是什么值
回复

使用道具 举报

grinsky 发表于 2016-12-15 13:56:47
本帖最后由 grinsky 于 2016-12-15 13:58 编辑
yaojiank 发表于 2016-12-15 13:52
原先logname是什么值

logname = 'C:\\Users\\desktop1\\Documents\\flume\\logs\\flume.log'
回复

使用道具 举报

yaojiank 发表于 2016-12-15 14:04:31
本帖最后由 yaojiank 于 2016-12-15 14:12 编辑
grinsky 发表于 2016-12-15 13:56
logname = 'C:\%users\\desktop1\\Documents\\flume\\logs\\flume.log'

logname = 'C:\\Users\\desktop1\\Documents\\flume\\logs\\flume.logs'
logname = 'C:\\Users\\desktop1\\Documents\\flume\\logs\\flume.log'
一个是logs,一个是log,两个文件都存在?还是什么情况

回复

使用道具 举报

grinsky 发表于 2016-12-15 14:18:57
yaojiank 发表于 2016-12-15 14:04
logname = 'C:\%users\\desktop1\\Documents\\flume\\logs\\flume.logs'
logname = 'C:\%users\\deskt ...

找到错误了,是在执行这句出错了。linecache.getlines(logname)
flume.logs是空文件,flume.log里面是有内容的,应该是flume.log的编码问题
晕死,在python2中这个都是OK的,没想到py3这么多问题……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条