红联Linux门户
Linux帮助

Python中文注释问题

发布时间:2014-09-13 10:22:13来源:linux网站作者:kumu_linux

在RHEL6下使用Vim写python脚本发现不能使用中文注释,后来发现是编码问题。


[linux @server python]$ cat ex4.py  
#!/usr/bin/python

 
#中文注释  
#cars_num  
cars = 100 
#space_car_num  
space_in_a_car = 40 
drivers = 30 
passengers = 90 
cars_not_driven = cars - drivers 
cars_driven = drivers 
carpool_capacity = cars_driven * space_in_a_car 
average_passengers_per_car = passengers / cars_driven 
 
print "There are", cars, "cars available." 
print "There are only", drivers, "drivers available." 
print "There will be", cars_not_driven, "empty cars today." 
print "We can transport", carpool_capacity, "people today." 
print "We have", passengers, "to carpool today." 
print "We need to put about", average_passengers_per_car, "in each car." 
[linux @server python]$ ./ex4.py 
File "./ex4.py", line 3 
SyntaxError: Non-ASCII character '\xe4' in file ./ex4.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details


加上# -*- coding:utf-8 -*-之后就能成功使用中文注释了

[linux @server python]$ cat ex4.py  
#!/usr/bin/python  
# -*- coding:utf-8 -*-
 
 
#中文注释  
#cars_num  
cars = 100 
#space_car_num  
space_in_a_car = 40 
drivers = 30 
passengers = 90 
cars_not_driven = cars - drivers 
cars_driven = drivers 
carpool_capacity = cars_driven * space_in_a_car 
average_passengers_per_car = passengers / cars_driven 
 
print "There are", cars, "cars available." 
print "There are only", drivers, "drivers available." 
print "There will be", cars_not_driven, "empty cars today." 
print "We can transport", carpool_capacity, "people today." 
print "We have", passengers, "to carpool today." 
print "We need to put about", average_passengers_per_car, "in each car." 
[linux @server python]$ ./ex4.py  
There are 100 cars available. 
There are only 30 drivers available. 
There will be 70 empty cars today. 
We can transport 1200 people today. 
We have 90 to carpool today. 
We need to put about 3 in each car. 
[linux @server python]$