温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python os.listdir()乱码怎么办

发布时间:2021-02-01 09:26:14 来源:亿速云 阅读:347 作者:小新 栏目:开发技术

这篇文章将为大家详细讲解有关python os.listdir()乱码怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

计算机一般来说是需要定期的清理,系统的内存不能无限延伸,同时有一些不需要的文件也可以得以清除掉。有些人会使用os.remove来进行文件的清楚,从而导致一些错误的出现,可以说这是对于os.remove的用法还没有熟练掌握。

1.语法

os.listdir(path)

2.参数

path – 目标目录的路径,即路径的字符串表示。

3.返回值

指定路径下,文件和文件夹名字的列表。

4.实例

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os, sys
# 打开文件
path = "/var/www/html/"
dirs = os.listdir( path )
# 输出所有文件和文件夹
for file in dirs:
  print(file)
如果目录下有中文目录,打印时遇到乱码解决方法:
cPath = os.getcwd()
# 如果目录名字为中文 需要转码处理
uPath = unicode(cPath,'utf-8')
for fileName in os.listdir(uPath) :
print(fileName)

python listdir() 中文路径 中文文件夹 乱码 解决方法

listdir(path)返回的结果的编码似乎和我们提供的 path 参数的编码有关:

import os
path = 'd:/test'
try:
  path = unicode(path, 'utf-8') # 经过编码处理
except:
  pass # python3 已经移除 unicode,而且默认是 utf8 编码,所以不用转
os.listdir(path)

这样,就算 path 下有中文的文件和文件夹,我们获得的结果是 utf-8 的编码

注意:在 python2 中需要经过编码处理,但是在python3中不需要,而且python 3 已经没有 unicode() 方法

关于“python os.listdir()乱码怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI