关于python3中print编码问题

python中print('汉字'),print函数打印的内容发送到控制台上,默认是使用utf-8编码。python3中默认print输出的是Unicode,我不理解,既然Print打印的内容都是Unicode了,难道不需要进行编码传输传递到控制台吗,Unicode直接传输过去(岂不是不晓得如何解析)?

你是计科专业的?学过操作系统不知道这部分是由操作系统和终端的设置决定的,终端根据设置自动解码和显示Unicode字符,怎么会是人想象的输出方式

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7432492
  • 这篇博客你也可以参考下:Python中Print()函数的用法___实例详解(全,例多)
  • 除此之外, 这篇博客: python (print使用,与格式化输出)中的 print使用 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • print介绍,与格式化输出
    使用方法:print(self, *args, sep=’ ‘, end=’\n’, file=None)
    目的:输出一系列的值,默认调用了sys.stdout.write()方法将输出打印到控制台
    file:默认输出到打印控制台,也可以输出到文件(文件已被打开)
    sep:字符串插入在多个值之间,默认为一个space
    end=:在字符串末尾最后一个值后添加一个符号,默认为换行符

    print("egons")
    print("alex","erick","ergou",sep=" abc ")
    len1=["alex","erick","ergou"]
    for item in len1:
        print(item,sep="abc",end=" ")
    """
    结果输出:
    egons
    alex abc erick abc ergou
    alex erick ergou 
    """
    f=open ("练习.txt","a")
    for item in len1:
        print(item,file=f )
    f.close()