在Python3中如何输出中文

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Python3中如何输出中文相关的知识,希望对你有一定的参考价值。

参考技术A

    例子:a="您好"

    print(a)

    就直接运行还会报错的原因是本人本人新建的文件编码默认是ANSI,需要修改一下文件的编码为utf-8,就可以了。

    修改文件编码可以这样做:用系统自带的记事本打开,然后按另存为,在保存的时候,会可选择的编码。

参考技术B 就那么输出呗,print('中文')

如何在 python 中获取终端输出? [复制]

【中文标题】如何在 python 中获取终端输出? [复制]【英文标题】:How can I get terminal output in python? [duplicate] 【发布时间】:2011-05-23 10:38:51 【问题描述】:

我可以使用os.system() 执行终端命令,但我想捕获此命令的输出。我该怎么做?

【问题讨论】:

【参考方案1】:
>>> import subprocess
>>> cmd = [ 'echo', 'arg1', 'arg2' ]
>>> output = subprocess.Popen( cmd, stdout=subprocess.PIPE ).communicate()[0]
>>> print output
arg1 arg2

使用 subprocess.PIPE 时存在错误。对于巨大的输出使用这个:

import subprocess
import tempfile

with tempfile.TemporaryFile() as tempf:
    proc = subprocess.Popen(['echo', 'a', 'b'], stdout=tempf)
    proc.wait()
    tempf.seek(0)
    print tempf.read()

【讨论】:

你是我的救星!!!这几天我一直在找这样的东西!!!谢谢!【参考方案2】:

Python 3.5 及以上版本推荐使用subprocess.run():

from subprocess import run
output = run("pwd", capture_output=True).stdout

【讨论】:

管道未定义 @Cherona 是在subprocess 模块中定义的,所以需要导入。 我还使用最新的 API 更新了答案。 @HelenCraigman 我明白了。在 Unix 上,您仍然可以通过打开 /dev/tty 进行读取和写入来从“控制终端”读取。不过,我不确定这种模式是否是个好主意。 FileNotFoundError: [WinError 2] 系统找不到指定的文件【参考方案3】:

您可以按照他们的建议在subprocess 中使用Popen。

os,不推荐,如下:

import os
a  = os.popen('pwd').readlines()

【讨论】:

这不起作用。 Popen 对象没有 readlines() 方法。 感谢指出,它只适用于os.popen os.popen 已弃用,取而代之的是 subprocess.Popen【参考方案4】:

最简单的方法是使用库命令

import commands
print commands.getstatusoutput('echo "test" | wc')

【讨论】:

从哪里获得命令模块?它似乎不在 Python3 的 pip 上。 @Shule commands 是一个较旧的模块。它被 subprocess 模块取代。 docs.python.org/2/library/…

以上是关于在Python3中如何输出中文的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Python3 中本地化日期时间 [重复]

如何使用python3将输入数据存储到文本文件中并打印数据输出?

如何在忽略不可编码字符的同时输出Python3(unicode)字符串

请教python3如何打印中文

如何配置 Atom 以运行 Python3 脚本?

在python3中多次输出字符串,如何让上下字符串对齐。