python-records

用于记录一些日常中遇到的一些函数和写法吧。

一、从TXT读取每行内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 第一种写法,一个列表内含有多个子列表
weak_pass = []
with open('weak_passwds_v1.txt','r') as f:
for line in f:
weak_pass.append(list(line.strip('\n').split(',')))
print(weak_pass)

#第二种写法,一个列表包含所有元素
a = []
with open('weak_passwds_v1.txt','r') as g:
res = g.readlines()
for res2 in res:
a.append(res2.strip('\n'))
print(a)

二、python os模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 日常常用os模块函数
os.access(path, mode) #检验权限模式
os.chdir(path) #改变当前工作目录
os.chflags(path, flags) #更改权限
os.chown(path, uid, gid) #更改文件所有者
os.chmod(path, mode) #更改文件权限
os.chroot(path) #改变当前进程的根目录
os.close(fd) #关闭文件描述符fd
os.closerange(fd_low, fd_high) #关闭所有文件描述符,从low(包含)到high(不包含),错误胡烈
os.dup(fd) #复制文件描述符
os.dup2(fd, fd2) #将一个文件描述符fd复制到另一个fd2
os.getcwd() #返回当前工作目录
os.mkdir(path[,mode]) #以数字Mode的mode创建一个名为path的文件夹,默认的mode是0777
os.mkfifo(path[,mode]) #创建命名管道,mode为数字,默认为0666
os.open(file,flags[,mode]) #打开一个文件,并设置需要打开的选项,mode是可选的
os.rename(src, dst) #重新命名文件或目录,从src到dst
os.renames(old,new) #递归地对目录进行更名,也可以对文件进行更名
os.unlink(path) #删除文件路径
os.utime(path,time) #返回指定的path文件的访问和修改时间
# os.path模块 获取文件属性

三、os.path模块

1
2
3
4
5
6
7
8
9
os.path.abspath(path) #返回绝对路径
os.path.basename(path) #返回文件名
os.path.commonprefix(list) #返回list(多个路径)中,所有path共有的最长路径
os.path.dirname(path) #返回文件路径
os.path.exists(path) #如果路径存在返回true,不存在返回false
os.path.getatime(path) #返回最近访问时间(浮点型秒数)
os.path.getmtime(path) #返回最近文件修改时间
os.path.getctime(path) #返回文件Path创建时间
os.path.getsize(path) #返回文件大小,如果文件不存在就返回错误
1
2
3
4
5
6
7
8
os.path.isabs(path) #判断是否为绝对路径
os.path.isfile(path) #判断是否为文件
os.path.isdir(path) #判断是否为目录
os.path.islink(path) #判断是否为链接
os.path.ismount(path) #判断是否为挂载点
os.path.samefile(path1,path2) #判断目录或文件是否相同
os.path.sameopenfile(fp1,fp2) #判断fp1和fp2是否指向同一文件
os.path.samestat(stat1,stat2) #判断stat tuple stat1和stat2是否指向同一文件
1
2
3
4
5
6
7
8
9
10
os.path.join(path1[,path2[,...]) #把目录和文件名合成一个路径
os.path.normcase(path) #转换path的大小写和斜杠
os.path.normpath(path) #规范path字符串形式
os.path.realpath(path) #返回path的真实路径
os.path.split(path) #把路径分割成dirname和Basename,返回一个元祖
os.path.splitdrive(path) #一般用在windows下,返回驱动器名和路径组成的元祖
os.path.splitext(path) #分割路径,返回路径名和文件扩展名的元祖
os.path.splitunc(path) #把路径分割为加载点与文件
os.path.walk(path,visit,arg) #遍历path,进入每个目录都调用visit函数,visit函数必须有3个参数(arg,dirname,names),dirname表示当前目录的目录名,names代表当前目录下的所有文件名,args则为walk的第三个参数
os.path.supports_unicode_filenames #设置是否支持unicode路径名
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#-*--coding:utf-8*-

IP='192.168.8.12'

def addr2dec(addr):
#将点分十进制IP地址转换成十进制整数
items = [int(x) for x in addr.split(".")]
return sum([items[i] << [24, 16, 8, 0][i] for i in range(4)])

def dec2addr(dec):
#将十进制整数IP转换成点分十进制的字符串IP地址
return "."join([str(dec >> x & 0xff) for x in [24, 16, 8, 0]])

dec = addr2dec(IP)
print dec
print dec2addr(dec)

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!