如何在Python中使用Chinese适当地获取当前工作目录中的名称列表?在
例如,在我的demo文件夹中,我有四个文件:“folder_chFiles”“folder_a”“folder_b”“folder_c”
在R中,我可以使用以下命令来实现这一点:
Sys.setlocale(category = "LC_ALL", locale = "zh_cn.utf-8")
setwd("~/desktop/example")
filenames=list.files()
filenames
^{pr2}$
但是我在Python和Anaconda中未能实现这一点,尽管如果不将其分配给文件名,那么输出看起来很好(见下文);文件名中的中文不正确。在
# -*- coding: utf-8 -*-
import os
os.chdir('/Users/../Desktop/example')
! ls
filenames = ! ls
filenames
folder_a folder_b folder_c folder_中文
['folder_a', 'folder_b', 'folder_c', 'folder_\xe4\xb8\xad\xe6\x96\x87']
但如果我继续打字
print(filenames)
print(filenames[3])
如果我提取这个特定元素并直接打印出来,就可以观察到中文。 在
['folder_a', 'folder_b', 'folder_c', 'folder_\xe4\xb8\xad\xe6\x96\x87']
folder_中文
我想强调的最后一点是,如果我直接输入中文,那么只有以明确的方式使用打印才能正确地看到中文。因此,有没有打印都会对它产生很大的影响。在
print('中文')
'中文'
中文
Out[65]: '\xe4\xb8\xad\xe6\x96\x87'
我的操作系统是Mac El Capitan(10.11.5),Anaconda的版本是:
2.7.13 |Anaconda custom (x86_64)| (default, Dec 20 2016, 23:05:08)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]
我记得我帮助过一个关于Python2的汉字的问题。Python3没有这个问题。我相信您需要在您的~.bash_配置文件中添加以下内容:
然后:
^{pr2}$相关问题 更多 >
编程相关推荐