Python:os.listdir(“.”)中的“.”是什么意思?

ujv3wf0j  于 2023-10-14  发布在  Python
关注(0)|答案(7)|浏览(150)

如标题所示,我不知道os.listdir(".")中的“.”是什么意思。
是指当前目录中的所有文件和文件夹吗?

a6b3iqyw

a6b3iqyw1#

这是完全正确的,"."是指the current working directory
值得注意的是,每个进程都有自己的当前工作目录。

vlurs2pr

vlurs2pr2#

根据python3.12文档,os.listdir中的path参数被设置为默认值".",因此os.listdir(".")os.listdir()将产生相同的输出,即当前工作目录中所有文件和目录的名称列表。
参数path接受类路径对象,它是文件系统路径的表示。要获取有关什么是路径类对象的信息,请访问此链接。
os.listdir也支持其他组合,如".."(父目录)"./[folder_name]""../.."等。

pnwntuvh

pnwntuvh3#

是的.请看这个医生。https://docs.python.org/2/library/os.html
s.listdir(path)返回一个列表,其中包含path指定的目录中的条目名称。该列表的顺序是任意的。它不包括特殊条目“.”和“..”,即使它们存在于目录中。
供货情况:Unix、Windows。
版本2.3中更改:在Windows NT/2k/XP和Unix上,如果path是Unicode对象,则结果将是Unicode对象的列表。无法解码的文件名仍将作为字符串对象返回。

j0pj023g

j0pj023g4#

**os.listdir(“.”)**用于列出当前目录的内容。

其他选项:
1.我们可以执行os.lisdir()来代替os.listdir(“.”)。
1.如果Desktop是当前目录下的子目录,并且您可以将Desktop中的内容列为os.listdir(“Desktop”)

kqqjbcuj

kqqjbcuj5#

"."中的os.listdir(".")在此代码中,"."定义为当前工作目录。当你运行这段代码时,它会显示当前目录中的所有文件和目录。

vmpqdwk3

vmpqdwk36#

没错。如果我没弄错的话,这应该会显示python脚本执行的目录中的文件夹和文件。

voase2hg

voase2hg7#

os.listdir(".")中的“.”表示当前工作目录。os.listdir()函数返回给定目录中所有文件和目录的名称列表,当前工作目录始终由“.”字符表示。
换句话说,os.listdir(".")os.listdir()是完全相同的东西。它们都返回当前工作目录中所有文件和目录的名称列表,而不管脚本的位置。
另一方面,os.listdir("..")函数返回父目录中所有文件和目录的名称列表。父目录是包含当前工作目录的目录。
下面是一个示例:

python
import os

cwd = os.getcwd()
print(cwd)

contents = os.listdir()
print(contents)

contents_2 = os.listdir(".")
print(contents_2)

parent_contents = os.listdir("..")
print(parent_contents)

输出量:

/home/fifthaxiom
['.gitignore', 'README.md', 'test.py']
['.gitignore', 'README.md', 'test.py']
['fifthaxiom']

正如你所看到的,第二条和第三条print语句的输出是当前工作目录中所有文件和目录的名称列表,第四条print语句的输出是父目录中所有文件和目录的名称列表。
请注意,os.listdir()函数在返回的列表中不包括特殊条目...。这些条目分别表示当前目录和父目录。
您还可以使用os.path.dirname(__file__)函数获取脚本所在的目录。如果您想编写一个可以访问与脚本相关的文件和目录的脚本,而不管脚本在哪个目录中执行,这可能很有用。
例如,以下脚本将打印脚本所在目录中所有文件的列表:

python
import os

cwd = os.path.dirname(__file__)
contents = os.listdir(cwd)
print(contents)

干杯!干杯!

相关问题