您在這裡

File names and paths

24 二月, 2015 - 14:52

Every running program has a “current directory,” which is the default directory for most operations. For example, when you open a file for reading, Python looks for it in the current directory.

The os module provides functions for working with files and directories (os stands for “operating system”). os.getcwd returns the name of the current directory:

>>> import os>>> cwd = os.getcwd()>>> print cwd/Users/csev

cwd stands for current working directory. The result in this example is /Users/csev, which is the home directory of a user named csev.

A string like cwd that identifies a file is called a path. A relative path starts from the current directory; an absolute path starts from the topmost directory in the file system.

The paths we have seen so far are simple file names, so they are relative to the current directory. To find the absolute path to a file, you can use os.path.abspath:

>>> os.path.abspath('memo.txt')'/Users/csev/memo.txt'

os.path.exists checks whether a file or directory exists:

>>> os.path.exists('memo.txt')True

If it exists, os.path.isdir checks whether it’s a directory:

>>> os.path.isdir('memo.txt')False>>> os.path.isdir('music')True

Similarly, os.path.isfile checks whether it’s a file.

os.listdir returns a list of the files (and other directories) in the given directory:

>>> os.listdir(cwd)['music', 'photos', 'memo.txt']