目录
内置函数
部分python内置函数
函数 | 描述 |
---|---|
abs() | 返回数字的绝对值 |
all() | 判断可迭代的对象里面的值是否都为真 |
any() | 判断可迭代的对象里面的值是否有一个为真 |
ascii() | 以ascii码形式返回一个表示对象的字符串 |
bin() | 十进制转二进制 |
bool() | 把一个对象转换成布尔类型 |
bytearray() | 把字符串变成一个可修改的bytes |
bytes() | 把字符串变成一个不可修改的bytes |
callable() | 判断传入的对象是否可调用 |
chr() | 打印数字对应的ascii码 |
compile() | 将一个字符串编译为字节代码 |
complex() | 用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数 |
delattr() | 用于删除属性 |
dict() | 转换字典 |
dir() | 打印传入对象的可调用方法 |
eval() | 执行python代码,只能执行简单的,定义数据类型和运算 |
exec() | 执行python代码 |
filter() | 把后面的迭代对象根据前面的方法筛选 |
format() | 格式化字符串 |
frozenset() | 定义一个不可修改的集合 |
globals() | 返回程序内所有的变量,返回的是一个字典 |
hash() | 把一个字符串哈希成一个数字 |
hex() | 数字转成16进制 |
len() | 返回对象(字符、列表、元组等)长度或项目个数 |
list() | 将元组或字符串转换为列表 |
locals() | 返回局部变量 |
map() | 每一个元素传给指定的函数,吧这个函数的结果报存下来 |
max() | 取最大值 |
min() | 取最小值 |
oct() | 把数字转换成8进制 |
ord() | 打印字符串对应的ascii码 |
print() | 打印输出 |
round() | 取几位小数 |
sum() | 求和 |
zip() | 将对象中对应的元素打包成一个个元组 |
函数简述
1.abs()语法:
abs(n)
n – 数值表达式,可以是整数,浮点数,复数.
print(abs(-10))
print(abs(-1.25))
输出结果为:
10
1.25
2.all()语法:
all(i)
iterable – 元组或列表
n1 = all([1,2,3,[],None])
n2 = all([1,2,3,True])
print (n1)
print (n2)
输出结果为:
False
True
3.any()语法:
any(i)
iterable – 元组或列表
n1 = any([1,2,3,[],None])
n2 = any([{},[],None,False])
print (n1)
print (n2)
输出结果为:
True
False
4.ascii()语法:
ascii(o)
object – 对象
print(ascii('哈哈'))
print(ascii('hello world'))
输出结果为:
'\u54c8\u54c8'
'hello world'
5.bin()语法:
bin(n)
n – int 或者 long int 数字
print(bin(10))
print(bin(10.52)) # 浮点类型会报错
输出结果为:
0b1010
TypeError: 'float' object cannot be interpreted as an integer
6.bool()语法:
bool(x)
n – 需要转换的参数
print(bool(10))
print(bool(0))
print(bool('10'))
print(bool(''))
输出结果为:
True
False
True
False
7.bytearray()语法:
class bytearray([source[, encoding[, errors]]])
如果 source 为整数,则返回一个长度为 source 的初始化数组;
如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;
如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
如果没有输入任何参数,默认就是初始化数组为0个元素。
print(bytearray())
print(bytearray([1,2,3]))
print(bytearray('hello', 'utf-8'))
输出结果为:
bytearray(b'')
bytearray(b'\x01\x02\x03')
bytearray(b'hello')
8.bytes()语法:
class bytes([source[, encoding[, errors]]])
如果 source 为整数,则返回一个长度为 source 的初始化数组;
如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;
如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
如果没有输入任何参数,默认就是初始化数组为0个元素。
print(bytes([1,2,3,4]))
print(bytes('hello','ascii'))
输出结果为:
b'\x01\x02\x03\x04'
b'hello'
9.callable()语法:
callable(o)
object – 对象
print(callable(0))
print(callable('hello'))
def add(a,b):
return a+b
add(1,2)
print(callable(add))
输出结果为:
False
False
True
10.chr()语法:
chr(code)
code – 可以是 10 进制也可以是 16 进制的形式的数字
print(chr(65)) # 十进制
print(chr(0x41)) # 十六进制
输出结果为:
A
A
10.compile()语法:
compile(source, filename, mode[, flags[, dont_inherit]])
source – 字符串或者AST(Abstract Syntax Trees)对象。。
filename – 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
mode – 指定编译代码的种类。可以指定为 exec, eval, single。
flags – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。。
flags和dont_inherit是用来控制编译源码时的标志
c = compile('hello','','exec')
print(c)
输出结果为:
<code object <module> at 0x02B38930, file "", line 1>
11.complex()语法:
complex([real[, imag]])
real – int, long, float或字符串;
imag – int, long, float;
print(complex(1, 2))
print(complex(1)) # 数字
print(complex("1")) # 字符串
输出结果为:
(1+2j)
(1+0j)
(1+0j)
12.delattr()语法:
delattr(object, name)
object – 对象。
name – 必须是对象的属性。
class Coordinate:
x = 10
y = -5
point1 = Coordinate()
print('x = ', point1.x)
print('y = ', point1.y)
delattr(Coordinate, 'y')
print('--删除 y 属性后--')
print('x = ', point1.x)
# 触发错误
print('y = ', point1.y)
输出结果为:
x = 10
y = -5
--删除 y 属性后--
x = 10
AttributeError: 'Coordinate' object has no attribute 'y'
13.dict()语法:
dict(**kwarg)
dict(mapping, **kwarg)
dict(iterable, **kwarg)
**kwargs – 关键字
mapping – 元素的容器。
iterable – 可迭代对象。
print(dict()) # 创建空字典
print(dict(a='a', b='b', t='t')) # 传入关键字
print(dict(zip(['one', 'two', 'three'], [1, 2, 3]))) # 映射函数方式来构造字典
print(dict([('one', 1), ('two', 2), ('three', 3)])) # 可迭代对象方式来构造字典
输出结果为:
{}
{'a': 'a', 't': 't', 'b': 'b'}
{'three': 3, 'one': 1, 'two': 2}
{'three': 3, 'one': 1, 'two': 2}
14.dir()语法:
dir([object])
object – 对象、变量、类型。
print(dir('1'))
输出结果为:
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__',
'__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__',
'__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__',
'__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__',
'__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__',
'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs',
'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal',
'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace',
'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition',
'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split',
'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper',
'zfill']
15.eval()语法:
eval(expression[, globals[, locals]])
expression – 表达式。
globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
print(eval('1+1'))
输出结果为:
2
16.exec()语法:
exec(object[, globals[, locals]])
object:必选参数,表示需要被指定的Python代码。
globals:可选参数
locals:可选参数
s = '''
for i in range(10):
print(i)
'''
exec(s)
输出结果为:
0
1
2
3
4
5
6
7
8
9
17.filter()语法:
filter(function, iterable)
function – 判断函数。
iterable – 可迭代对象。
def oushu(n):
return n % 2 == 0
L = filter(oushu, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
newlist = list(L)
print(newlist)
exec(s)
输出结果为:
[2, 4, 6, 8, 10]
18.format()语法:
str.format()
print('{},{}'.format('hello', ' world')) # 这种方式参数要按顺序排列
print('{b},{a}'.format(a = 'hello', b = 'python')) # 用这种方式参数可以不按顺序排列
print('{:.0f}'.format(5.244)) # 也可以处理数字,比如去掉小数
输出结果为:
hello world
hello python
5
19.frozenset()语法:
frozenset([iterable])
iterable – 可迭代的对象,比如列表、字典、元组等等。
print(frozenset([1, 2, 3, 3]))
print(type(frozenset([1, 2, 3, 3])))
输出结果为:
frozenset({1, 2, 3})
<class 'frozenset'>
20.globals()语法:
globals()
print(globals())
输出结果为:
{'__name__': '__main__', '__doc__': None, '__spec__': None, '__package__': None,
'__builtins__': <module 'builtins' (built-in)>, '__cached__': None, '__loader__':
<_frozen_importlib.SourceFileLoader object at 0x033B47F0>}
21.hash()语法:
hash(object)
object – 对象
print(hash('test')) # 字符串
print(hash(1)) # 数字
print(hash(str([1,2,3]))) # 集合
print(hash(str(sorted({'1':1})))) # 字典
输出结果为:
-2061405230
1
-159499520
-1197037295
21.hex()语法:
hex(n)
n – 一个整数
print(hex(111))
输出结果为:
0x6f
22.len()语法:
len( s )
s – 对象。
print(len('123456789'))
print(len([1,2,3,4,5,6,]))
print(len({'a':'1', 'b':'2'}))
输出结果为:
9
6
2
23.list()语法:
list( seq )
seq – 要转换为列表的元组或字符串。
print(list('123456789'))
print(list(('1','2','3','4','5','6','7','8','9')))
输出结果为:
['1', '2', '3', '4', '5', '6', '7', '8', '9']
['1', '2', '3', '4', '5', '6', '7', '8', '9']
24.locals()语法:
locals()
def test():
a = 1
b = 2
print(locals()) # 获取当前函数里面的局部变量
test()
输出结果为:
{'a': 1, 'b': 2}
25.map()语法:
map(function, iterable, …)
function – 函数
iterable – 一个或多个序列
def oushu(number):
if number%2 == 0:
return True
l = range(1,10)
l2 = []
for i in l:
if oushu(i):
l2.append(i)
filter(oushu, l)
result = list(filter(oushu, l))
map(oushu, l) # 每一个元素传给指定的函数,吧这个函数的结果报存下来
result1 = list(map(oushu, l))
print(result1)
输出结果为:
[None, True, None, True, None, True, None, True, None]
26.max()语法:
max( x, y, z, … )
x – 数值表达式。
y – 数值表达式。
z – 数值表达式。
print(max(111, 11))
输出结果为:
111
27.min()语法:
min( x, y, z, … )
x – 数值表达式。
y – 数值表达式。
z – 数值表达式。
print(min(111, 11))
输出结果为:
11
28.oct()语法:
oct(n)
n – 整数。
print(oct(10))
输出结果为:
0o12
29.ord()语法:
ord©
c – 字符。
print(ord('a'))
输出结果为:
97
30.print()语法:
print(*objects, sep=’ ‘, end=’\n’, file=sys.stdout)
objects – 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
sep – 用来间隔多个对象,默认值是一个空格。
end – 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
file – 要写入的文件对象。
print('a')
输出结果为:
a
31.round()语法:
round( x [, n] )
x – 数字表达式。
n – 表示从小数点位数,其中 x 需要四舍五入,默认值为 0。
print(round(11.11982, 2))
输出结果为:
11.11
32.sum()语法:
sum(iterable[, start])
iterable – 可迭代对象,如:列表、元组、集合。
start – 指定相加的参数,如果没有设置这个值,默认为0。
print(sum([0,1,2]))
print(sum((2, 3, 4), 1)) # 元组计算总和后再加 1
print(sum([0,1,2,3,4], 2)) # 列表计算总和后再加 2
输出结果为:
3
10
12
33.zip()语法:
zip([iterable, …])
iterabl – 一个或多个迭代器;
a = ['zs','li','ww']
b = ['123','456','789']
c = ['1','2','3']
for username,password,c in zip(a, b, c):
print(c, username, password)
for x in zip(a, b , c):
print(x)
输出结果为:
1 zs 123
2 li 456
3 ww 789
('zs', '123', '1')
('li', '456', '2')
('ww', '789', '3')
匿名函数
python 使用 lambda 来创建匿名函数。
lambda只是一个表达式,函数体比def简单很多。
lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。
虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。
例如:
lambda x:x+1 # 定义匿名函数 冒号前面为入参 后面为返回/值
a = lambda x:x+1
result = a(1)
print(result)
输出结果为:
2
模块
模块简介
- Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。
- 模块让你能够有逻辑地组织你的 Python 代码段。
- 把相关的代码分配到一个模块里能让你的代码更好用,更易懂。
- 模块能定义函数,类和变量,模块里也能包含可执行的代码。
模块的引入
1.定义好模块后,需要使用import来引入模块,比如我定义了一个模块a,内容是print(‘abc’),然后再到b文件中引用a
import a
print(a)
输出结果为:
abc
2.调用模块中的函数,需要用函数名.模块名来使用,比如我在a模块中定义一个函数,用b文件来运行。
# a模块中定义的函数
def func():
print('abc')
return True
# b文件调用a模块的函数
import a
a.func()
输出结果为:
abc
3.引入模块时的搜索顺序:
1)python搜索模块是有顺序的,引入模块时,先从当前目录寻找。
2)如果不在当前目录,python 则搜索在环境变量下的目录中寻找。
3)如果都找不到,python会察看默认路径。
4.所以我们在自定义模块时,尽量不要把自定义的模块名和python自带的模块重名,不然可能无法调用系统模块
常用的模块
random模块
作用:生成随机数
random模块常用的方法
方法 | 描述 |
---|---|
random() | 生成0-1之间的随机数 |
randint() | 生成随机整数 |
uniform() | 生成随机小数 |
choice() | 返回一个列表,元组或字符串的随机项,会生成重复的数据 |
sample() | 随机选择多个元素并生成一个列表,数量不能超过原对象的元素上限,不会生成重复的数据 |
sorted() | 排序 |
shuffle() | 打乱顺序 |
使用例子
1.random()语法:
random.random()
参数 – 无
import random
print(random.random()) # 生成0-1之间的随机数
输出结果为:
0.38481077617100234
2.randint()语法:
random.randint(a,b)
a – 随机数的最小值
b – 随机数的最大值
import random
print(random.randint(1,10)) #生成1-10之间的随机整数
输出结果为:
7
3.uniform()语法:
random.uniform(a,b)
a – 随机数的最小值
b – 随机数的最大值
import random
print(random.uniform(1,10)) #生成1-10之间的随机小数
输出结果为:
7.938208497566782
4.choice()语法:
random.choice(seq)
seq – 可以是一个列表,元组或字符串
import random
print(random.choice('0123456789')) # 随机生成一个数字
输出结果为:
7
5.sample()语法:
random.sample(seq, n)
seq – 可以是一个列表,元组或字符串
n – 要生成的元素的数量
import random
print(random.sample('0123456789', 3)) # 随机生成一组数字,不重复
print(random.sample('0123456789', 15)) # 要生成的数量大于原数据里面的数量,就会报错
输出结果为:
['5', '1', '6']
ValueError: Sample larger than population
6.sorted()语法:
random.sorted(seq, n)
seq – 可以是一个列表,元组或字符串
n – 要生成的元素的数量
import random
s = '3265432145132asdasda'
print(sorted(s))
输出结果为:
['1', '1', '2', '2', '2', '3', '3', '3', '4', '4', '5', '5', '6', 'a', 'a', 'a', 'd', 'd', 's', 's']
7.shuffle()语法:
random.sample(seq, n)
seq – 可以是一个列表,元组或字符串
n – 要生成的元素的数量
import random
l = [1,2,3,4,5,6,7,8]
print('打乱之前:', l)
random.shuffle(l)
print('打乱之后:', l)
输出结果为:
打乱之前: [1, 2, 3, 4, 5, 6, 7, 8]
打乱之后: [1, 3, 5, 2, 6, 8, 7, 4]
OS模块
OS模块是python种用于访问操作系统功能的模块
OS模块常用的方法
方法 | 描述 |
---|---|
listdir() | 获取某个目录下的内容 |
name() | 获取操作系统 |
mkdir() | 创建文件夹,文件已经存在会报错,父目录不存在的时候会报错 |
makedirs() | 创建文件夹,父目录不存在的时候,会创建父目录 |
remove() | 删除文件,只能删除文件,不能删除文件夹 |
rmdir() | 删除文件夹,只能删除空的文件夹,不为空会报错 |
rename() | 重命名,文件和文件夹都可以 |
getcwd() | 获取当前所在的目录 |
chdir() | 进入某个目录里面 |
environ() | 获取系统环境变量里面配置的内容 |
system() | 执行操作系统命令,不能拿到返回结果 |
popen() | 执行命令,可以拿到结果 |
使用例子
1.listdir()语法:
os.listdir(path)
path – 目录路径
import os
print(os.listdir(r'C:\Users'))
输出结果为:
['Administrator', 'All Users', 'Default', 'Default User', 'desktop.ini', 'Public']
2.name()语法:
os.name
import os
print(os.name)
输出结果为:
nt # Windows是nt Linux和Unix是posix
3.mkdir()语法:
os.mkdir(path[, mode])
path – 目录路径
mode – 要为目录设置的权限数字模式
import os
os.mkdir(r'D:\python')
print(os.listdir(r'D:'))
输出结果为:
['$RECYCLE.BIN', 'Downloads', 'macOS', 'pagefile.sys', 'Program Files',
'Program Files (x86)', 'python'] # 可以看到刚刚创建的python文件夹
4.makedirs()语法:
os.makedirs(path[, mode])
path – 目录路径
mode – 要为目录设置的权限数字模式
import os
os.makedirs(r'D:\java\java')
print(os.listdir(r'D:\java'))
输出结果为:
['java']
5.remove()语法:
os.remove(path)
path – 目录路径
import os
print(os.listdir(r'D:\python'))
os.remove(r'D:\python\test.txt')
print(os.listdir(r'D:\python'))
输出结果为:
['test.txt']
[] # 问价夹为空,文件删除成功
6.rmdir()语法:
os.rmdir(path)
path – 目录路径
import os
print(os.listdir(r'D:'))
os.rmdir(r'D:\python')
print(os.listdir(r'D:'))
输出结果为:
['$RECYCLE.BIN', 'Downloads', 'java', 'macOS', 'pagefile.sys', 'Program Files',
'Program Files (x86)', 'python']
['$RECYCLE.BIN', 'Downloads', 'java', 'macOS', 'pagefile.sys', 'Program Files',
'Program Files (x86)'] # python文件夹删除成功
7.rename()语法:
os.rename(src, dst)
src – 要修改的目录名
dst – 修改后的目录名
import os
print(os.listdir(r'D:'))
os.rename(r'D:\java',r'D:\python') # 文件和文件夹都可以
print(os.listdir(r'D:'))
输出结果为:
['$RECYCLE.BIN', 'Downloads', 'java', 'macOS', 'pagefile.sys', 'Program Files',
'Program Files (x86)']
['$RECYCLE.BIN', 'Downloads', 'macOS', 'pagefile.sys', 'Program Files', 'Program Files (x86)', 'python'] # java文件夹重命名为python
8.getcwd()语法:
os.getcwd()
参数 – 无
import os
print(os.getcwd())
输出结果为:
E:\Users\Administrator\PycharmProjects\untitled\test1
9.chdir()语法:
os.chdir(path)
path – 要切换到的新路径。
import os
os.chdir(r'D:\Program Files')
print(os.getcwd())
输出结果为:
D:\Program Files
10.environ()语法:
os.environ()
参数 – 无
import os
print(os.environ)
输出结果为:
environ({'NUMBER_OF_PROCESSORS': '4', 'JAVA_HOME': 'E:\\Program Files\\Java\\jdk1.8.0_102',
'PYTHONIOENCODING': 'UTF-8', 'USERDOMAIN_ROAMINGPROFILE': 'DESKTOP-G9LO6FN',
'HOMEDRIVE': 'C:', 'DRIVERDATA': 'C:\\Windows\\System32\\Drivers\\DriverData',
'FPS_BROWSER_APP_PROFILE_STRING': 'Internet Explorer', 'SYSTEMROOT': 'C:\\Windows',
'PROCESSOR_ARCHITECTURE': 'x86', 'JENKINS_HOME': 'E:\\jenkins',
'CATALINA_HOME': 'E:\\apache-tomcat-9.0.34'}) # 太长了 截取一部分
11.system()语法:
os.system(command)
command – 操作命令
import os
print(os.system('ipconfig'))
输出结果为:
0 # 0代表执行成功
12.popen()语法:
os.popen(command)
command – 操作命令
import os
result = os.popen('ipconfig').read()
print(result)
输出结果为:
Windows IP 配置
以太网适配器 以太网:
连接特定的 DNS 后缀 . . . . . . .
本地链接 IPv6 地址. . . . . . . .
IPv4 地址 . . . . . . . . . . . .
子网掩码 . . . . . . . . . . . .
默认网关. . . . . . . . . . . . .
以太网适配器 VMware Network Adapter VMnet1:
连接特定的 DNS 后缀 . . . . . . .
本地链接 IPv6 地址. . . . . . . .
IPv4 地址 . . . . . . . . . . . .
子网掩码 . . . . . . . . . . . .
默认网关. . . . . . . . . . . . .
以太网适配器 VMware Network Adapter VMnet8:
连接特定的 DNS 后缀 . . . . . . .
本地链接 IPv6 地址. . . . . . . .
IPv4 地址 . . . . . . . . . . . .
子网掩码 . . . . . . . . . . . .
默认网关. . . . . . . . . . . . .
13.system()语法:
os.system(command)
command – 操作命令
import os
print(os.system('ipconfig'))
输出结果为:
0 # 0代表执行成功
os.path模块
os.path 模块主要用于获取文件的属性
os.path常用的方法
方法 | 描述 |
---|---|
os.path.sep() | 获取当前系统路径分隔符 |
os.path.isfile() | 判断是否是文件 |
os.path.isdir() | 判断是否是文件夹 |
os.path.exists() | 文件/文件夹是否存在 |
os.path.getsize() | 获取文件大小 |
os.path.getctime() | 创建时间 |
os.path.getmtime() | 修改时间 |
os.path.getatime() | 最后一次的访问时间 |
os.path.split() | 分隔路径和文件名 |
os.path.join() | 连接路径和文件名 |
os.path.abspath() | 把相对路径转换为绝对路径 |
os.path.dirname() | 取父目录 |
使用例子
1.os.path.sep()语法:
os.path.sep
import os
print(os.path.sep)
输出结果为:
\
2.os.path.isfile()语法:
os.path.isfile(path)
path-- 文件路径加名字
import os
print(os.path.isfile(r'D:\tset.txt'))
print(os.path.isfile(r'D:\tset'))
输出结果为:
True
False
3.os.path.isdir()语法:
os.path.isdir(s)
s – 文件夹路径加名字
import os
print(os.path.isfile(r'D:\tset.txt'))
print(os.path.isfile(r'D:\tset'))
输出结果为:
False
True
4.os.path.exists()语法:
os.path.exists(filename)
filename-- 文件夹路径加名字
import os
print(os.path.isfile(r'D:\tset.txt'))
print(os.path.isfile(r'D:\tset'))
print(os.path.isfile(r'D:\tset2'))
输出结果为:
True
True
False
5.os.path.getsize()语法:
os.path.getsize(filename)
filename-- 文件\文件夹路径加名字
import os
print(os.path.getsize(r'D:\test\test.txt'))
print(os.path.getsize(r'D:\Program Files'))
输出结果为:
101
4096
6.os.path.getctime()语法:
os.path.getctime(filename)
filename-- 文件\文件夹路径加名字
import os
print(os.path.getctime(r'D:\test\test.txt'))
print(os.path.getctime(r'D:\test'))
输出结果为:
1599057644.279824
1599057635.5043218
7.os.path.getmtime()语法:
os.path.getmtime(filename)
filename-- 文件\文件夹路径加名字
import os
print(os.path.getmtime(r'D:\test\test.txt'))
print(os.path.getctime(r'D:\test'))
输出结果为:
1599058411.8527265
1599057647.0549827
8.os.path.getatime()语法:
os.path.getatime(filename)
filename-- 文件\文件夹路径加名字
import os
print(os.path.getatime(r'D:\test\test.txt'))
print(os.path.getatime(r'D:\test'))
输出结果为:
1599057644.279824
1599057647.0549827
9.os.path.split()语法:
os.path.split(path)
path-- 文件路径加名字
import os
print(os.path.split(r'D:\Users\Administrator\PycharmProjects\tset\test1.py'))
输出结果为:
('D:\\Users\\Administrator\\PycharmProjects\\tset', 'test1.py')
10.os.path.join()语法:
os.path.join(path1[, path2[, …]])
path-- 文件夹路径
import os
print(os.path.join('e:','\movies','欧美大片','复仇者联盟.mp4'))
输出结果为:
e:\movies\欧美大片\复仇者联盟.mp4
11.os.path.abspath()语法:
os.path.abspath(path)
path-- 文件夹路径
import os
print(os.path.abspath(r'..\test\test1.txt'))
print(os.path.abspath(__file__)) # __file__代表当前文件
输出结果为:
D:\Users\Administrator\PycharmProjects\test\test1.json
D:\Users\Administrator\PycharmProjects\test\test.py
12.os.path.dirname()语法:
os.path.dirname(path)
path-- 文件夹路径
import os
print(os.path.dirname(__file__))
输出结果为:
D:/Users/Administrator/PycharmProjects/test
time模块
time模块常用的方法
方法 | 描述 |
---|---|
time.time() | 获取当前时间戳 |
time.strftime() | 格式化时间 |
time.localtime() | 格式化时间戳为本地的时间 |
time.gmtime() | 将一个时间戳转换为标准时区时间 |
time.mktime() | 用秒数来表示时间的浮点数 |
使用例子
1.time.time()语法:
time.time()
参数 – 无
import time
print(time.time())
输出结果为:
1599061036.6308553
2.time.strftime()语法:
time.strftime(format[, t])
format – 格式字符串。
t – 可选的参数t是一个struct_time对象。
import time
print(time.strftime('%Y-%m-%d %H:%M:%S'))
输出结果为:
2020-09-02 21:39:58
3.time.localtime()语法:
time.localtime([ sec ])
sec – 转换为time.struct_time类型的对象的秒数。
import time
print(time.localtime())
输出结果为:
time.struct_time(tm_year=2020, tm_mon=9, tm_mday=2, tm_hour=23, tm_min=44, tm_sec=41, tm_wday=2, tm_yday=246, tm_isdst=0)
4.time.gmtime()语法:
time.gmtime([ sec ])
sec – 转换为time.struct_time类型的对象的秒数。
import time
print(time.gmtime())
输出结果为:
time.struct_time(tm_year=2020, tm_mon=9, tm_mday=2, tm_hour=15, tm_min=50, tm_sec=31, tm_wday=2, tm_yday=246, tm_isdst=0)
5.time.mktime()语法:
time.mktime(t)
t – 结构化的时间或者完整的9位元组元素
import time
t = (2020, 9, 2, 15, 50, 31, 2, 246, 0)
print(time.mktime(t))
输出结果为:
1599033031.0
sys模块
sys模块常用的方法
方法 | 描述 |
---|---|
sys.version | 获取Python解释程序的版本信息 |
sys.platform | 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 |
sys.path | 获取当前执行环境的平台,如win32表示是Windows系统,linux2表示是linux平台 |
sys.argv | 用来获取运行python文件的时候,传过来的参数 |
使用例子
1.sys.version:
import sys
print(sys.version)
输出结果为:
3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)]
2.sys.platform:
import sys
print(sys.platform)
输出结果为:
win32
3.sys.path:
import sys
print(sys.path)
输出结果为:
['D:\\Users\\Administrator\\PycharmProjects\\untitled',
'C:\\Program Files\\JetBrains\\PyCharm 2020.2\\plugins\\python\\helpers\\pycharm_display',
'D:\\Program Files\\Python38\\python38.zip', 'D:\\Program Files\\Python38\\DLLs',
'D:\\Program Files\\Python38\\lib', 'D:\\Program Files\\Python38', 'C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python38\\site-packages',
'D:\\Program Files\\Python38\\lib\\site-packages', 'C:\\Program Files\\JetBrains\\PyCharm 2020.2\\plugins\\python\\helpers\\pycharm_matplotlib_backend']
4.sys.argv:
import sys
print(sys.argv)
输出结果为:
['D:/Users/Administrator/PycharmProjects/untitled/test.py']