file、os、pickle

文件对象:
	文本都是字节序列
	var_name = open (file_name[mode,[bufsize]])
	mode:
		r
		w
		a
		r+
		w+
		a+

	b表示已二进制模式打开文件
		rb
		wb
		ab
		rb+
		wb+
		ab+
	缓存:
		0表示不使用缓存
		负数表示使用系统默认的缓存
		1表示使用缓存
		整数表示使用大小的缓冲区
	file.seek(offset[whence])
		whence:起点
			0:从文件头
			1:从当前位置
			2:从文件尾
		offset:偏移量
	f1.seek(0,2)
	跳转到文件末尾了
	f1.tell()
	f1.write(‘aaa\n‘)
	f1 = open(‘/var/log/messages‘,‘r‘)
	f1.read(10)
	‘Nov 15 03:‘
	f1.tell()
        10
        f1.next()
        "Nov 15 13:14:24 iZ23tags5s2Z abrt: detected unhandled Python exception in ‘3.py‘\n"
        f1.name
        ‘/var/log/messages‘
        f1.flush()刷新内容到磁盘
        f1.readline()读取一行
        f1.readlines()读取所有行
        f1.writelines()写入所有
        f1.truncate()截取
        f1.close()关闭
        f1.closed是否关闭这是属性
        
	文件系统模块:os
	目录:
		chdir():切换工作目录
		chroot():设定当前进程的根目录
		listdir():列出指定目录下的所有文件名
		mkdir():创建指定目录
		makedirs():创建多久目录
		getcwd():获取工作目录
		rmdir():删除目录
		removedirs():删除多级目录
	文件:
		mkfifo():创建管道
		mknod():创建设备文件
		remove():删除文件
		unlink():删除链接文件
		rename():重命名
		stat():放回文件的状态信息
		symlink():创建链接文件
		utime():更新时间戳
		tmpfile():创建并打开(w+b)一个新的临时文件
		walk():创建目录树
	访问权限相关的
		access():检验某个用户或用户组的权限模式
		chmod():修改权限
		chown():修改属主和属组
		umask():设置默认权限模式
	文件描述符:
		open():底层操作系统的open()
		read():
		write():
	设备文件:
		makedev():
		major():获取主设备号
		minor():获取次设备号
	路径管理:
		import os.path
		basename():路径基名
		dirname():路径目录名
		join():整合文件名
		split():返回dirname(),basename()元组
		splitext():返回(filename,extension)元组
		信息:
			getatime()
			getctime()
			getmtime()
			getsize():返回文件的大小
		查询
			exists():判断指定文件是否存在
			isabs():判断指定的路径是否为绝对路径
			isdir():是否为目录
			isfile():是否为文件
			islink():是否为符号链接
			ismount():是否为挂载点
			samefile():两个路径是否指向了同一个文件

练习:判断文件是否存在,存在则打开
	让用户通过键盘反复输入多行数据
	追加保存至此文件中

#!/usr/bin/python
import os
import os.path
filename=raw_input(‘plz a file name:‘)
if os.path.isfile(filename):
        openname= open(filename,‘a+‘)
while True:
        newline=raw_input(‘plz a line:‘)
        if newline == ‘q‘ or newline ==‘quit‘:
                break
        else:
                openname.write(newline+‘\n‘)
openname.close()

对象持久存储
	pickle
	    pickle.dump: (obj, file, protocol=None)
	    pickle.load: (file)
	marshal
	DBM接口
	shaelve模块
时间: 2024-09-30 23:35:42

file、os、pickle的相关文章

Python_python模块(json、os、sys、random、string、time、hashlib)

# json.os.sys.random.string.time.hashlib# json模块import json # json串就是字符串.d = { 'car': {'color': 'red', 'price': 100, 'count': 50}, '挨粪叉': {'color': 'red', 'price': 100, 'count': 50}, '挨粪叉1': {'color': 'red', 'price': 100, 'count': 50},} res = json.du

python-时间模块,random、os、sys、shutil、json和pickle模块

一.time与datetime模块 time模块: 时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量,返回类型为float类型 格式化时间字符串(Format String) 结构化的时间(struct_time):struct_time元组共有9个元素(年月日时分秒,一年中的第几周,一年中的第几天,夏令时) # print(time.time())#1533962144.060534 # print(time.localtime())#time.struct_time(

常用内置模块(一)--time、os、sys、random、shutil、pickle、json

一.time模块 Python中,通常有这几种方式来表示时间: 1.时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type(time.time())”,返回的是float类型. 2.格式化的时间字符串(Format String) 3.结构化的时间(struct_time):struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时) import time # 一.三

day、模块-basedir、os、json模块、pickle和正则模块。

四.正则. re模块: 作用:针对的对象:字符串, 课前引入: 例子一. s='dsdsadsadadsalexdsds's.find('alex') 如何找到字符串内部的alex;?过去学习可使用方法:find.split.replace.但是字符串内置的方法很局限,只能实现完全匹配. 如果要找到:与a**开头的需求呢?就无法实现.要实现模糊匹配就得用到模糊匹配. 例子二.模糊匹配 #在文本里面存着一堆身份证 4504231989347382822 1104231989347382822 11

python全栈开发【第十篇】Python常用模块二(时间、random、os、sys和序列化)

一.time模块 表示时间的三种方式: 时间戳:数字(计算机能认识的) 时间字符串:t='2012-12-12' 结构化时间:time.struct_time(tm_year=2017, tm_mon=8, tm_mday=8, tm_hour=8, tm_min=4, tm_sec=32, tm_wday=1, tm_yday=220, tm_isdst=0)像这样的就是结构化时间 #time模块的常用方法及三种时间之间的转换 import time # 对象:对象.方法 # --------

序列化模块、os、hashlib、sys

一.序列化模块 序列化定义:序列化的本质就是将一种数据结构(如字典.列表)等转换成一个特殊的序列(字符串或者bytes)的过程就叫做序列化 为什么要有序列化模块 dic = {'username':'太白', 'password': 123,'login_status': True} 你的程序中有一些地方都需要使用这个dic数据,登录时会用到,注册时也会用到.那么我们之前就是将这个dic写在全局里,但是这样是不合理的,应该是将这数据写入一个地方存储(还没有学数据库)先存放在一个文件中,那么程序中

Python--模块之time、random、os、hashlib

一. time模块 表示时间我们通常用三种形式: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行"type(time.time())",返回的是float类型. 格式化的时间字符串(Format String) 结构化的时间(struct_time):struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时) import time print(time.ti

Python常用模块-SYS、OS、Time、hashlib

MarkdownPad Document 时间模块 import time 三种时间表达形式: 1.时间戳 time.time()  相对于1970年到现在的秒数 2.格式化的时间字符串 time.strftime("%Y-%m-%d %X") -可以是:可以是/ '2017-04-26 00:32:18' 3.时间元组(结构化时间) time.localtime() time.struct_time(tm_year=2017, tm_mon=4, tm_mday=26, tm_hou

常见模块之time、os、random模块

时间模块 和时间有关系的我们就要用到时间模块.在使用模块之前,应该首先导入这个模块. 1 #常用方法 2 1.time.sleep(secs) 3 (线程)推迟指定的时间运行.单位为秒. 4 2.time.time() 5 获取当前时间戳 表示时间的三种方式 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: (1)时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行"t