解决pycharm下os.system执行命令返回有中文乱码的问题

yipeiwu_com6年前Python基础

如下所示:

source = ['C:\\Users\\admin\\Desktop\\pythonLearning']
target_dir = 'C:\\Users\\admin\\Desktop'
 
print(time.strftime('%Y%m%d%H%M%S'))
 
target = target_dir + os.sep + time.strftime('%Y%m%d%H%M%S') + '.zip'
if not os.path.exists(target_dir):
 os.mkdir(target_dir)
 
zip_command = 'HaoZipC a {0} {1}'.format(target, ' '.join(source))
 
type = sys.getfilesystemencoding()
print('类型为:', type)
 
 
print('Zip command is:')
print(zip_command)
print('Running:')
result = os.system(zip_command)
if result == 0:
 print('Successful backup to', target)
else:
 print('Backup FAILED')

控制台返回:

20170811100310

类型为: utf-8

Zip command is:

HaoZipC a C:\Users\admin\Desktop\20170811100310.zip C:\Users\admin\Desktop\pythonLearning

Running:

����ɨ���ļ�...

����ѹ���ĵ� C:\Users\admin\Desktop\20170811100310.zip

��ѹ���ļ���C:\Users\admin\Desktop\pythonLearning\byte-of-python-chinese-edition.pdf

��ѹ���ļ��� C:\Users\admin\Desktop\pythonLearning\byte-of-python.pdf

��ѹ���ļ��� C:\Users\admin\Desktop\pythonLearning\python�˹�����.png

解决方法:

将Global Encoding设置为gbk,即可正常显示,如下:

20170811100615
类型为: utf-8
Zip command is:
HaoZipC a C:\Users\admin\Desktop\20170811100615.zipC:\Users\admin\Desktop\pythonLearning
Running:
正在扫描文件...

创建压缩文档 C:\Users\admin\Desktop\20170811100615.zip

正压缩文件:C:\Users\admin\Desktop\pythonLearning\byte-of-python-chinese-edition.pdf

原因据说是因为IDE编码不能设置为utf-8,需要设置为gbk,因为这个控制台的代码需要和windows保持一致。

以上这篇解决pycharm下os.system执行命令返回有中文乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

深入了解Django View(视图系统)

深入了解Django View(视图系统)

Django View 官方文档 一个视图函数(类),简称视图,是一个简单的 Python 函数(类),它接受Web请求并且返回Web响应。响应可以是一张网页的HTML内容,一个重定向...

python面向对象_详谈类的继承与方法的重载

python面向对象_详谈类的继承与方法的重载

1. 类的继承与方法的重载 上面就是先定义了一个类A,然后由定义了一个类B,B继承了类A,这样B就有了A的非私有属性和方法。 class Washer: company='...

Python生成pdf文件的方法

本文实例演示了Python生成pdf文件的方法,是比较实用的功能,主要包含2个文件。具体实现方法如下: pdf.py文件如下: #!/usr/bin/python from repo...

python实现复制文件到指定目录

这几天在做一个数据集,由于不是很熟悉Linux下的命令,所以特地用了强大的python来做。我之前有一个数据集但是我只要里面名称带有composite和normals的图片,所以找了网上...

Python多线程处理实例详解【单进程/多进程】

Python多线程处理实例详解【单进程/多进程】

本文实例讲述了Python多线程处理操作。分享给大家供大家参考,具体如下: python — 多线程处理 1、一个进程执行完后,继续下一个进程 root@72132server:~#...