用python写了个简单的小程序,在CMD下运行,print输出的是乱码,怎么解决?
黄舟
黄舟 2017-04-18 09:04:14
[Python讨论组]

如下代码在windows CMD里运行:

#coding:utf-8
while True:
        print "请输入一个年份"
        a = input()
        print a
        if a == 0:
                break
        if a%4 == 0 and a%100 != 0:
                print '您输入的%d是闰年。' %a
        elif a%400 == 0:
                print '您输入的%d是闰年。' %a
        else:
                print '您输入的%d不是闰年。' %a

运行会出现文字乱码

在网上查找资料说输入chcp 936,并没有什么作用。

请问,这个问题怎么解决?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(2)
伊谢尔伦

Python2的编码问题, 前面加个u吧

#coding=utf-8
while True:
        print u"请输入一个年份"
        a = input()
        print a
        if a == 0:
                break
        if a%4 == 0 and a%100 != 0:
                print u'您输入的%d是闰年。' %a
        elif a%400 == 0:
                print u'您输入的%d是闰年。' %a
        else:
                print u'您输入的%d不是闰年。' %a

或者直接在开头添上一行

from __future__ import unicode_literals

高洛峰

楼上的已经说了方法了。我补充一句,不要给代码目录的文件夹写个中文名。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号