解决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设计】。

相关文章

Python操作redis实例小结【String、Hash、List、Set等】

本文实例总结了Python操作redis方法。分享给大家供大家参考,具体如下: python连接方式可参考:/post/161353.htm 这里介绍详细使用 1、String 操作 r...

python版百度语音识别功能

python版百度语音识别功能

本文实例为大家分享了python版百度语音识别功能的具体代码,供大家参考,具体内容如下 环境:使用的IDE是Pycharm 1.新建工程 2.配置百度语音识别环境 “File”——“Se...

用Python实现将一张图片分成9宫格的示例

用Python实现将一张图片分成9宫格的示例

经常看到朋友圈或者空间里有朋友发布照片时,将朋友圈的照片切分为九宫格,参考了一些大神的博客资料,现整理如下; 将图片分拆成九宫格的思路: 读取图片->填充图片为正方形(fill_i...

python 类详解及简单实例

python 类详解 类 1.类是一种数据结构,可用于创建实例。(一般情况下,类封装了数据和可用于该数据的方法) 2.Python类是可调用的对象,即类对象 3.类通常在模块的顶层进...

Python中pandas模块DataFrame创建方法示例

本文实例讲述了Python中pandas模块DataFrame创建方法。分享给大家供大家参考,具体如下: DataFrame创建 1. 通过列表创建DataFrame 2. 通过字典创...