您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页python 创建和读取 文件夹 和 .txt文件以及os.path.join()函数进行拼接路径拼接

python 创建和读取 文件夹 和 .txt文件以及os.path.join()函数进行拼接路径拼接

来源:化拓教育网

python创建文件夹 和 .txt文件

利用os模块来 创建文件夹

主要涉及到三个函数:

#如果文件夹存在,就输出存在,然后跳过,如果不存在就直接创建文件夹
import os 
def makedir(path):
    # path是传入的路径
    if os.path.exists(path):
        print(path + '文件夹已有')
        pass
    else:
        os.mkdir(path)
        print(path + '文件夹创建成功')

说明: os.mkdir(path) 和 os.makedirs(path)的区别:

title = '这是一个测试的文件夹'
path =  'E:\python\data' + '\\' + title
os.mkdir(path)

也可以使用相对路径./来创建文件夹

os.mkdir('./test')
# 在此个python文件的父目录下进行创建文件夹
# 如下图在 文件测试.py 里面写这行代码,则可以创建一个与该文件同在一个父目录的文件夹 .test

利用open 来创建txt文件

# 法一
filename = 'D:\python\\test1\练习.txt'
# 或者 filename = r"D:\python\test1\练习.txt"  路径前加“r” 因为“\”会将特殊字符转义比如“\n”使回车加行的意思“\t”是制表符的意思
file = open(filename, "w", encoding='utf-8') 
file.write('练习文本')
file.close()

# 法二
with open(filename,"w",encoding="utf-8") as f:
    f.write(content)

读取类型:

r只读,w写入,a追加

二进制:

rb只读,wb写入,ab追加

os.path.join()函数

os.path.join()函数用于路径拼接文件路径,可以传入多个路径

import os
print(os.path.join('path','abc','yyy'))
# 输出
path\abc\yyy
 
path='C:/yyy/yyy_data/'
print(os.path.join(path,'/abc'))
# 输出 C:/abc
print(os.path.join(path,'abc'))
# 输出 C:/yyy/yyy_data/abc
  1. 存在以 *‘’/’’* 开始的参数,从最后一个以”/”开头的参数开始拼接,之前的参数全部丢弃。
>>> print('1',os.path.join('aaa','/bbb','ccc.txt'))
1 /bbb\ccc.txt
 
>>> print('1',os.path.join('/aaa','/bbb','ccc.txt'))
1 /bbb\ccc.txt
 
>>> print('1',os.path.join('/aaa','/bbb','/ccc.txt'))
1 /ccc.txt
 
>>> print('1',os.path.join('/aaa','bbb','ccc.txt'))
1 /aaa\bbb\ccc.txt
 
>>> print('1',os.path.join('/aaa','bbb','/ccc.txt'))
1 /ccc.txt
  1. *同时存在以‘’./’与‘’/’’开始的参数,以‘’/’为主**,从最后一个以”/”开头的参数开始拼接,之前的参数全部丢弃。
print('2',os.path.join('/aaa','./bbb','ccc.txt'))
# 输出 /aaa\./bbb\ccc.txt
 
print('2',os.path.join('aaa','./bbb','/ccc.txt'))
# 输出 /ccc.txt

读取文件夹

import os
dirs = os.listdir(r'./data')  # 相对路径
print(dirs)

程序所在路径

读取txt文件

with open(filename,'r',encoding='utf-8') as fo
	# 默认读取全部,输入数字可设定读取字符串长度
	fo.read()
	# 读取一行
	fo.readline()
	# 读取所有,返回列表
	fo.readlines()

参考文献:

http://t.csdn.cn/y0mtY

http://t.csdn.cn/7Hx2U

http://t.csdn.cn/TiUb6

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务