解决python3中os.popen()出错的问题
作者:小妮浅浅 发布时间:2022-07-20 23:38:48
标签:python3,os.popen()
使用程序难免会有出错的时候,如何从大篇代码中找出错误,不仅考验能力,还要考验小伙们的耐心。辛辛苦苦敲出的代码运行不出结果,非常着急是可以理解的。那么我们在python3中使用os.popen()出错该怎么办?本篇文章小编同样以错误的操作方法为大家进行讲解,一起找寻不对的地方吧。
在当前 desktop 目录下,有如下内容:
desktop $ls
client.py server.py 中文测试
arcpy.txt codetest.py test.py
如上所示:有一个中文命名的文件 ----> 中文测试
# -*- coding:utf-8 -*-
# python3.5.1
import os,sys
print (sys.getdefaultencoding()) #系统默认编码
dir_list = os.listdir()
for li in dir_list:
print (li)
输出如下:
utf-8
arcpy.txt
client.py
codetest.py
server.py
test.py
中文测试
可以看出默认编码为 utf-8,os.listdir()命令可以正常输出中文字符。
在使用 os.popen()时:
# -*- coding:utf-8 -*-
# python3.5.1
import os,sys
print (sys.getdefaultencoding()) #系统默认编码
dir_list = os.popen('ls','r').read()
for li in dir_list:
print (li)
报错如下:
utf-8
Traceback (most recent call last):
File "Desktop/codetest.py", line 8, in <module>
dir_list = os.popen('ls','r').read()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 76: ordinal not in range(128)
解决:
命令行执行没有问题,这个是编辑器的事。建议用subprocess
来源:https://www.py.cn/jishu/jichu/20989.html


猜你喜欢
- HTTP请求是无状态的,我们通常会使用cookie或session对其进行状态保持,cookie存储在客户端,容易被用户误删,安全性不高,s
- Python产生一个数值范围内的不重复的随机数,可以使用random模块中的random.sample函数,其用法如下:import ran
- 一、类型数组是值类型,将一个数组赋值给另一个数组时,传递的是一份拷贝。切片是引用类型,切片包装的数组称为该切片的底层数组。我们来看一段代码/
- 本文实例为大家分享了vue-Split实现面板分割的具体代码,供大家参考,具体内容如下<template> <
- 目录问题描述解决方案问题分析问题描述在 MySQL 中使用 delete 语句删除数据之后,监控视图中可用的磁盘空间没有增加,磁盘使用率没有
- 以下是引用片段: ImportsSystem.Data ImportsSystem.Data.SqlClient PublicClassFo
- mysql对列求和mysql中,可以使用SELECT语句配合SUM()函数来对列求和,能够返回指定列值的总和,求和语法为&ldquo
- logger:日志器对象,可通过logging.getLogger()方法获取handler:处理器对象,将日志信息输出到指定位置,可通过l
- mssql的每个varchar、text字段都被自动插入一段js代码,即使删除这段代码,如果没有从源头上解决,几分钟后,js代码就又会自动插
- 在技术问答中看到一个这样的问题,感觉相对比较常见,就单开一篇文章写下来。从纯文本格式文件 “file_in”中读取数据,格式如下:需要输出成
- 站长们是不是还在为空间不支持域名绑定到子目录而发愁呢?买了个便宜也不错的空间,用的还满意,准备再开几个网站,却发现空间程序太落后,无法支持域
- 前言 简述bs4:使用pip install beautifulsoup4将bs4包安装到当前的python解释器环境,使用fro
- LEFT JOIN 语法用法与实例MySQL LEFT JOIN 语法SQL(MySQL) LEFT JOIN 会取得左表(table1)全
- 昨天碰到的,如果键是中文,如何进行匹配呢,先看文本内容: 这是字典里两个元素的内容,编码是utf-8,中文内容运行代码如下# -*- cod
- 作为一名数据库管理员,在进行代码迁移之前,我总是尽力给提交于开发环境的代码一个完整的面貌。但是,不得不承认,我不能保证不发生任何可能破坏开发
- 1. 安装pip install PyExecJS # 需要注意, 包的名称:
- 一、面相对象继承机制 这个实例使用UML很好的解释了继承机制。 &nb
- 实战场景在项目实战中,会碰到一种特定的运维场景,对CDN访问进行限制,一般手段是开启 referer 防盗链,开启 IP黑白名单,开启UA黑
- 本文实例讲述了Python中的装饰器用法。分享给大家供大家参考。具体分析如下:这里还是先由stackoverflow上面的一个问题引起吧,如
- 我们越来越多的使用pandas进行数据处理,有时需要向一个已经存在的csv文件写入数据,传统的方法之前我也有些过,向txt,excel文件写