import   from....import 引入模块 引入类

①import

如果文件在lib下而且是python模块 :import 模块名。

②from....import

from 包名.包名.....from 模块名/函数名  一层一层引用,不能使用模块名.函数名

1.若要调用模块内部的函数:模块名.函数名().

2.若引用包下面的模块:import 包名.模块名,

file 对象测试数据的读写与操作

OS模块介绍

Python里面的OS模块有许多方法,通过代码实现创建、删除和更改目录操作如下:

一、针对路径

①获取当前的目录路径及文件的路径

os.getcwd():getcwd()方法显示当前的工作路径,只具体到路径,不具体到文件。

os.path.realpath(path);返回path的真实路径如果参数是:__file__就说明是本文件所在的绝对路径。

例子

import os

path=os.getcwd() #获取当前模块的目录

print(path)

path2=os.path.realpath(__file__) #获取当前文件的绝对路径

print(path2)

结果

D:\python\FramWork\20190928_basic

D:\python\FramWork\20190928_basic\lesson_Four file.py

区别:前者定位到文件目录,或者定位到文件

②只针对文件夹(目录),删除,创建新目录

os.mkdir(路径名字):在某个目录下创建一个新目录,确保它的上级要存在。

os.rmdir(路径名字):删掉一个目录,只能删除空目录。

os.listdir():获取当前路径下的目录列表。返回列表格式数据。

③路径的拼接

1.利用字符串的拼接

例子

import os

path=os.getcwd() #获取当前模块的目录

new_path=path+"\\test" #字符串拼接

os.mkdir(new_path) #创建新目录

print(new_path) #打印

结果:

D:\python\FramWork\20190928_basic\test

2.os.path.join(a,b):连接两个部分的路径,组成一个完整的路径。

例子:

import os

path=os.getcwd() #获取当前模块的目录

new_path=os.path.join(path,"test","test2") #字符串拼接,创建test2 时test必须存在,同理删除目录时也需要先删除test2

os.mkdir(new_path) #创建新目录

print(new_path) #打印

结果 D:\python\FramWork\20190928_basic\test\test2

④判断文件的类型返回布尔值

os.path.isdir:判断当前文件是否是目录。返回布尔值。

os.path.isfile:判断当前文件是否是文件,返回布尔值

例如:

print(os.path.isfile(os.getcwd()))  结果 False

print(os.path.isdir(os.getcwd()))  结果 True

⑤切割split,放回元组类型的数据,只切割最后一级,切割时按照\来切割

os.path.solit(当前目录或文件)

例如

res=os.path.split(os.getcwd())

print('切割路径之后的值是:{0}'.format(res))

结果 切割路径之后的值是:('D:\\python\\FramWork', '20190928_basic')

res=os.path.split(os.path.realpath(__file__))

print('切割路径之后的值是:{0}'.format(res))

结果 切割路径之后的值是:('D:\\python\\FramWork\\20190928_basic', 'lesson_Four file.py')

二、针对txt(三种方式)

A.read()方法

1) read(count)方法从一个打开的文件中读取一个字符串。

2) 里面传递要读取的字节数

3) 如果不传递默认读取全部数据

4) 读完之后,指针会定位到读完之后的位置

readline()#每次读取一行数据 readlines()#按行读取数据,返回列表类型数据

例子

file=open("test.txt",'r')

res=file.readline()

print(res)

结果 Easy come, easy go.

例如

file=open("test.txt",'r')

res=file.readlines()

print(res)

结果 ['Easy come, easy go.\n', 'An hour in the morning is worth two in the evening.']

B.write()方法:

write()方法可将任何字符串写入一个打开的文件。

注意:write()方法不会在字符串的结尾添加换行符(\n),所以无法实现自动换行。

writelines():里面传入你要写的列表内容,可以写入多行!
①r只读 文件必须存在

file=open("test.txt",'r')

r+支持读写

例如:

file=open("test.txt",'r+')

res=file.write("Easy come, easy go.") #写入到test文件中

②w只写如果存在就直接写不存在就新建一个文件再去写内容,清空文件再写

w+ 读写如果存在就直接写不存在就新建一个文件再去写内容

③a追加 append 如果存在就直接写不存在就新建一个文件再去写内容。直接追加在后面。

a+ 在原有内容上写内容

1)针对文件的读取

res=file.read()#默认读取所有的内容

读取指定长度的内容

res=file.read(2)

print(“读取到的内容是:{0}”.formate(res))

2)写入内容到文件中。先读后写,只写位置与光标有关,解决中文乱码问题file=open("test.txt",'r+',encoding=’utf-8’)

file.write(“写入的内容”)

④文件定位 seek(offset[,from])方法改变当前文件的位置,Offset变量表示要移动的字节数,from变量指定开始移动字节的参考位置。0头部,1当前位置,2尾部.

python file对象测试数据的读写操作及OS模块介绍(四)的更多相关文章

  1. Python中json的简单读写操作

    Python中json的简单读写操作 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的 ...

  2. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  3. Python的路径操作(os模块与pathlib模块)

    Python的路径操作(os模块与pathlib模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.os.path模块(Python 3.4版本之前推荐使用该模块) #!/u ...

  4. python中 对文件的读写操作 以及如何边写入 边保存flush()

    转自:https://blog.csdn.net/t8116189520/article/details/78854708 首先 python中打开文件大致常用的几类如下: 1.写入文件write # ...

  5. python学习(11)文件的读写操作

    1.读文件的7种操作模式 操作模式 具体含义 'r' 读取 (默认) 'w' 写入(会先截断之前的内容) 'x' 写入,如果文件已经存在会产生异常 'a' 追加,将内容写入到已有文件的末尾 'b' 二 ...

  6. python文件操作及os模块常用命令

    1.文件打开 文件句柄 = open('文件路径', '模式') 2.文件操作 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 三种基本 ...

  7. Python进阶5---StringIO和BytesIO、路径操作、OS模块、shutil模块

    StringIO StringIO操作 BytesIO BytesIO操作 file-like对象 路径操作 路径操作模块 3.4版本之前:os.path模块 3.4版本开始 建议使用pathlib模 ...

  8. 31、Python程序中的协程操作(greenlet\gevent模块)

    一.协程介绍 协程:是单线程下的并发,又称微线程,纤程.英文名Coroutine.一句话说明什么是协程:协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的. 对比操作系统控制线程的切换,用 ...

  9. (原创)Python文件与文件系统系列(2)——os模块对文件、文件系统操作的支持

    os模块的功能主要包括文件系统部分和进程管理部分,这里介绍其中与文件系统相关的部分. 当请求操作系统执行操作失败时,os模块抛出内置异常 exceptions.OSError 的实例,可以通过 os. ...

随机推荐

  1. 我为什么还要造轮子?欠踹?Monk.UI表单美化插件诞生记!

    背景 目前市场上有很多表单美化的UI,做的都挺不错,但是他们都有一个共同点,那就是90%以上都是前端工程师开发的,导致我们引入这些UI的时候,很难和程序绑定.所以作为程序员的我,下了一个决定!我要自己 ...

  2. C#实现的等额本息法、按月付息到期还本法、一次性还本付息法

    你若懂行,那便有用,如下: void Main(){    var x = DengEBenXi.Compute(11111, 12, 3);    x.Dump();    var y = AnYu ...

  3. [C#反射]C#中的反射解析及使用.

    1.对C#反射机制的理解2.概念理解后,必须找到方法去完成,给出管理的主要语法3.最终给出实用的例子,反射出来dll中的方法 参考: C#反射,MSDN编程指南 反射是一个程序集发现及运行的过程,通过 ...

  4. BNU 沙漠之旅

    http://www.bnuoj.com/bnuoj/problem_show.php?pid=29376 我直接暴力搜索的. 剪枝: 1.步骤最多只有4步,超过4步则退出 2.油的行程相加后的总和距 ...

  5. 模板Link Cut Tree (动态树)

    题目描述 给定N个点以及每个点的权值,要你处理接下来的M个操作.操作有4种.操作从0到3编号.点从1到N编号. 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和.保证x到y是联 ...

  6. postgresql 空间函数 随笔

    1. ST_Buffer(geometry, double, [integer])buffer操作一个很有用函数,这个函数的第一个参数是要操作的空间几何数据,第二个参数长度(距离),第三个参数为一个整 ...

  7. django mysql数据库使用自己的User

    由于我需要的User模型与django自带的User有所不同,所以需要定义自己的User Model,这里记录一下方法,适用于django 1.5+. 因为使用自己的后台,放弃django的管理后台, ...

  8. sap 程序之间的相互调用

    1:首先进入到local object 目录下. 右键>create >function group,创建一个函数组. 右键创建类其它的东西 2:在创建的function group(fu ...

  9. try catch之ajax调错

  10. gcc的编译属性和选项

    1.指定内存默认对其参数: __attribute__((packed)):按一字节对其__attribute__((aligned(n))):从此之后默认按n字节对其 例如: struct stu ...