在使用Windows中的Terminal运行.py文件时出现了SyntaxError: Non-UTF-8 code starting with '\xff' in file ex3.py on line 1, but no encoding declared;的错误:
Python版本:python 3.8.10
解决方法:重新新建空的ex4.py文件,将代码粘贴进去,重新在Terminal输入python ex4.py,
文件运行成功.
排错过程:刚开始写代码的时在第一行加了# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
print ("I will now count my chickens:")
print ("Hens",25+30/6)
print ("Roosters",100-25*3%4)
print ("Now I will count the eggs:")
print ("3+2+1-5+4%2-1/4+6")
print ("Is it true that 3+2<5-7?")
print ("3+2<5-7")
print ("What is 3+2 ?",3+2)
print ("What is 5-7 ?",5-7)
print ("Oh,that's why it's False.")
print ("How about some more.")
print ("Is it greater ?",5 > -2)
print ("Is it greater or equal ?",5 >= -2)
print ("Is it less or equal ?",5 <= -2)
在Terminal终端运行,显示报错:
根据提示网址发现编码名字左右带上了单书名号
于是重新替换,发现还是原来的错误.
根据这篇文章http://t.csdn.cn/W1a3o还是出现同样报错,然后发现了这篇文章https://www.cnblogs.com/xier/p/12202422.html,根据提示解决了问题.
我的猜测:
应该是Windows系统自动将原来的.py文件生成为utf-16le编码文件,根据是这篇文章http://t.csdn.cn/iDcxN
最终的原因到底是什么,我现在也不知道,水平还不够,希望评论区有大佬可以给出答案