最后解决方案。。在文件中添加固定的修改编码方式。在C:\Python27\Lib\site-packages路径下新建文件sitecustomize.py
并将如下代码放进去,重启idle 即可。
# encoding=gbk
import sys
reload(sys)
sys.setdefaultencoding(‘gbk‘)
注意不能将gbk换成utf8或者gb18030.无效
import json import urllib2 """import urllib2 web = urllib2.urlopen(‘http://www.baidu.com‘) content = web.read() fi = open("d:\\c.html",‘w‘) fi.write(content) fi.close() """ def get(cityname): try: city={‘南京‘:101190101,‘北京‘:101010100} return city[cityname] except: return 0 while 1: cityname = raw_input("请输入要查询的城市天气?\n") citycode = get(cityname) if citycode: url = (‘http://www.weather.com.cn/data/cityinfo/%s.html‘%citycode) content = urllib2.urlopen(url).read() data = json.loads(content) result = data[‘weatherinfo‘] str_temp = ‘%s:\n %s\n 最高温度: %s\n 最低温度: %s\n‘%( ##就是这里不成出现汉字!!!! result[‘city‘], result[‘weather‘], result[‘temp1‘], result[‘temp2‘] ) # str_temp = unicode(str_temp, "gb18030") ## fi = open("d:\\cc.txt",‘w‘) ## fi.write(str_temp) ## fi.close() print str_temp else: print "城市错误!"
时间: 2024-12-27 10:35:46