python 看是否存在文件夹 Python 判断文件目录是否存在

Python026

python 看是否存在文件夹 Python 判断文件目录是否存在,第1张

1、Python 操作文件时,我们一般要先判断指定的文件或目录是否存在,不然容易产生异常。

2、例如我们可以使用 os 模块的 os.path.exists() 方法来检测文件是否存在:

import os.path

os.path.isfile(fname)

3、如果你要确定他是文件还是目录,从 Python 3.4 开始可以使用 pathlib 模块提供的面向对象的方法 (Python 2.7 为 pathlib2 模块):

from pathlib import Path

my_file = Path(/path/to/file)

if my_file.is_file():

# 指定的文件存在

检测是否为一个目录:

if my_file.is_dir():

# 指定的目录存在

4、如果要检测路径是一个文件或目录可以使用 exists() 方法:

if my_file.exists():

# 指定的文件或目录存在

在 try 语句块中你可以使用 resolve() 方法来判断:

try:

my_abs_path = my_file.resolve()

except FileNotFoundError:

# 不存在

else:

# 存在

#1.打开文件 open 函数

open(file,[option])

#file 是要打开的文件

#option是可选择的参数,常见有 mode  encoding

#2.文件的打开模式

r 只读模式,文件不存在时会报错。

w 写入模式,文件存在会清空之前的内容,文件不存在则会新建文件。

x 写入模式,文件存在会报错,文件不存在则会新建文件。

a 追加写入模式,不清空之前的文件,直接将写入的内容添加到后面。

b 以二进制模式读写文件,wb,rb,ab。

+ 可读写模式,r+,w+,x+,a+,这几种模式还遵循了r,w,x,a的基本原则。

#3.文件的读取

f.read(size)  #读取文件的内容,将文件的内容以字符串形式返回。

'''size是可选的数值,指定字符串长度,如果没有指定size或者指定为负数,就会读取并返回整个文件。当文件大小为当前机器内存两倍时就会产生问题,反之就尽可能大的size读取和返回数据,如果到了文件末尾,会返回空字符串。

'''

f.readline() #从文件中读取单独一行。

'''字符串结尾会自动加上一个换行符\n,只有当文件最后没有以换行符结尾时,这一操作才会被忽略,这样返回值就不会有混淆。如果返回空字符串,表示到达率文件末尾,如果是空行,就会描述为\n,一个只有换行符的字符串。

'''

f.readlines() #一次读取所有,返回一个列表,列表的元素为文件行的内容。

'''可以通过列表索引的方式将文件的每一行的内容输出。

可以通过for循环迭代输出每一行的信息。

'''

#4.文件的写入

f.write()  #将要写入的内容以字符串的形式通过write方法写入文件中。

f.writelines()  #括号里必须是由字符串元素组成的序列。

#5.保存和关闭

f.flush()

#在读写模式下,当写完的数据想要读取出来时,要先缓存区的内容保存到文件当中。

f.close() 

#关闭文件。对一个已经关闭的文件进行操作会报错。

#6.光标位置

f.tell()  #返回光标在文件中的位置。

f.seek(offset,from)

#在文件中移动文件指针,从from(0代表起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节。

#7.查看文件信息

closed  #查看文件是否已经关闭,返回布尔值。

mode  #返回文件打开模式。

name  #返回文件名。

#8.with 形式打开文件,里面的语句执行完后会自动关闭文件

with open('文件名') as f:

    f.read()

解决文件存在python却显示不存在的方法:

1、右键单击.py文件,选择“Edit 项目名”单击打开

2、修改working directory为运行脚本的路径,然后再次运行脚本,这个错误就消失了

更多Python知识,请关注:Python自学网!!