加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python:常用模块一

发布时间:2020-12-17 00:00:47 所属栏目:Python 来源:网络整理
导读:一、collections模块 collections = namedtuple ( ,[ , =point(1,2 (p) 2,deque: 双端队列,可以快速的从另外一侧追加和推出对象 = 10) q.put(5 6 双端队列: >>> from collections import deque>>> q = deque(['a','b','c'])>>> q.append('x')>>> q.append

一、collections模块

collections = namedtuple (,[,=point(1,2(p)

  2,deque: 双端队列,可以快速的从另外一侧追加和推出对象

  

=10) q.put(56
双端队列:>>> from collections import deque
>>> q = deque(['a','b','c'])
>>> q.append('x')
>>> q.appendleft('y')
>>> q
deque(['y','a','c','x'])  

3,Counter: 计数器,主要用来计数

  

c = Counter(: 5,: 4,: 3,: 2,: 1})

  4.OrderedDict: 有序字典

collections = OrderedDict([(,1),(,2),(,3(od) (od[ k (k)

  5.defaultdict: 带有默认值的字典

collections =[11,22,33,44,55,66,77,88,99,90= value value>66].append(value)

二、时间模块

time.sleep()

time.time()

时间有三种标识方式:

  时间戳、元组(struct_time)、格式化的时间字符串

1,时间戳

时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。

2,格式化的时间字符串(Format String): ‘1999-12-06’

%y 两位数的年份表示(00-99%Y 四位数的年份表示(000-9999%m 月份(01-12%d 月内中的一天(0-31%H 24小时制小时数(0-23%I 12小时制小时数(01-12%M 分钟数(00=59%S 秒(00-59%%%%%%j 年内的一天(001-366%%U 一年中的星期数(00-53%w 星期(0-6%W 一年中的星期数(00-53%%%%% %号本身

3,元组(struct_time) :struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)

</tr>
<tr>
<td>1</td>
<td>tm_mon(月)</td>
<td>1 - 12</td>

</tr>
<tr>
<td>2</td>
<td>tm_mday(日)</td>
<td>1 - 31</td>

</tr>
<tr>
<td>3</td>
<td>tm_hour(时)</td>
<td>0 - 23</td>

</tr>
<tr>
<td>4</td>
<td>tm_min(分)</td>
<td>0 - 59</td>

</tr>
<tr>
<td>5</td>
<td>tm_sec(秒)</td>
<td>0 - 60</td>

</tr>
<tr>
<td>6</td>
<td>tm_wday(weekday)</td>
<td>0 - 6(0表示周一)</td>

</tr>
<tr>
<td>7</td>
<td>tm_yday(一年中的第几天)</td>
<td>1 - 366</td>

</tr>
<tr>
<td>8</td>
<td>tm_isdst(是否是夏令时)</td>
<td>默认为0</td>

</tr>

4,python中表示时间的几种格式:

>>><span style="color: #008000">#<span style="color: #008000">时间戳

<span style="color: #000000">time.time()
1500875844.800804

<span style="color: #008000">#<span style="color: #008000">时间字符串

time.strftime(<span style="color: #800000">"<span style="color: #800000">%Y-%m-%d %X<span style="color: #800000">"<span style="color: #000000">)
<span style="color: #800000">'<span style="color: #800000">2017-07-24 13:54:37<span style="color: #800000">'
time.strftime(<span style="color: #800000">"<span style="color: #800000">%Y-%m-%d %H-%M-%S<span style="color: #800000">"<span style="color: #000000">)
<span style="color: #800000">'<span style="color: #800000">2017-07-24 13-55-04<span style="color: #800000">'

<span style="color: #008000">#<span style="color: #008000">时间元组:localtime将一个时间戳转换为当前时区的struct_time
<span style="color: #000000">time.localtime()
time.struct_time(tm_year=2017,tm_mon=7,tm_mday=24<span style="color: #000000">,          tm_hour=13,tm_min=59,tm_sec=37<span style="color: #000000">,tm_wday=0,tm_yday=205,tm_isdst=0)

5,几种格式之间的转换

<div class="cnblogs_code">

结构化时间
>>>time.gmtime(1500000000=2017,tm_mday=14,tm_hour=2,tm_min=40,tm_sec=0,tm_wday=4,tm_yday=195,tm_isdst=>>>time.localtime(1500000000=2017,tm_hour=10,tm_isdst=<span style="color: #008000">#<span style="color: #008000">结构化时间-->时间戳 <span style="color: #008000">

<span style="color: #008000">time.mktime(结构化时间)

time_tuple = time.localtime(1500000000<span style="color: #000000">)
>>><span style="color: #000000">time.mktime(time_tuple)
1500000000.0

字符串时间 time.strftime( time.strftime(,time.localtime(1500000000

<span style="color: #008000">#<span style="color: #008000">字符串时间-->结构化时间<span style="color: #008000">

<span style="color: #008000">time.strptime(时间字符串,字符串对应格式)

time.strptime(<span style="color: #800000">"<span style="color: #800000">2017-03-16<span style="color: #800000">",<span style="color: #800000">"<span style="color: #800000">%Y-%m-%d<span style="color: #800000">"<span style="color: #000000">)
time.struct_time(tm_year=2017,tm_mon=3,tm_mday=16,tm_hour=0,tm_min=0,tm_wday=3,tm_yday=75,tm_isdst=-1<span style="color: #000000">)
>>>time.strptime(<span style="color: #800000">"<span style="color: #800000">07/24/2017<span style="color: #800000">",<span style="color: #800000">"<span style="color: #800000">%m/%d/%Y<span style="color: #800000">"<span style="color: #000000">)
time.struct_time(tm_year=2017,tm_mday=24,tm_wday=0,tm_isdst=-1)

%a %b %d %H:%M:%S %Y串 time.asctime(time.localtime(1500000000

<span style="color: #008000">#<span style="color: #008000">%a %d %d %H:%M:%S %Y串 --> 结构化时间<span style="color: #008000">

<span style="color: #008000">time.ctime(时间戳) 如果不传参数,直接返回当前时间的格式化串

<span style="color: #000000">time.ctime()
<span style="color: #800000">'<span style="color: #800000">Mon Jul 24 15:19:07 2017<span style="color: #800000">'
time.ctime(1500000000<span style="color: #000000">)
<span style="color: #800000">'<span style="color: #800000">Fri Jul 14 10:40:00 2017<span style="color: #800000">'

三、random模块

>>> random.random() 0.7664338663654585 random.uniform(1,3) 1.6270147180533838

<span style="color: #008000">#<span style="color: #008000">随机整数

random.randint(1,5) <span style="color: #008000">#<span style="color: #008000"> 大于等于1且小于等于5之间的整数
random.randrange(1,10,2) <span style="color: #008000">#<span style="color: #008000"> 大于等于1且小于10之间的奇数

<span style="color: #008000">#<span style="color: #008000">随机选择一个返回

random.choice([1,<span style="color: #800000">'<span style="color: #800000">23<span style="color: #800000">',[4,5]]) <span style="color: #008000">#<span style="color: #008000"> #1或者23或者[4,5]<span style="color: #008000">

<span style="color: #008000">随机选择多个返回,返回的个数为函数的第二个参数

random.sample([1,5]],2) <span style="color: #008000">#<span style="color: #008000"> #列表元素任意2个组合
[[4,5],<span style="color: #800000">'<span style="color: #800000">23<span style="color: #800000">'<span style="color: #000000">]

<span style="color: #008000">#<span style="color: #008000">打乱列表顺序

item=[1,3,5,7,9<span style="color: #000000">]
>>> random.shuffle(item) <span style="color: #008000">#<span style="color: #008000"> 打乱次序
<span style="color: #000000"> item
[5,1,9<span style="color: #000000">]
>>><span style="color: #000000"> random.shuffle(item)
>>><span style="color: #000000"> item
[5,9,3]

四、OS模块

os模块是与操作系统交互的一个接口

'nt'; Linux->'posix' os.system("bash command") 运行shell命令,直接显示 os.popen("bash command).read() 运行shell命令,获取执行结果 os.environ 获取系统环境变量

os.path
os.path.abspath(path) 返回path规范化的绝对路径 os.path.split(path) 将path分割成目录和文件名二元组返回 os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素 os.path.basename(path) 返回path最后的文件名。如何path以/或结尾,那么就会返回空值。
即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[,path2[,...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) 返回path的大小
<span style="color: #800000">'''

注意:os.stat

st_mode: inode 保护模式
st_ino: inode 节点号。
st_dev: inode 驻留的设备。
st_nlink: inode 的链接数。
st_uid: 所有者的用户ID。
st_gid: 所有者的组ID。
st_size: 普通文件以字节为单位的大小;包含等待某些特殊文件的数据。
st_atime: 上次访问的时间。
st_mtime: 最后一次修改的时间。
st_ctime: 由操作系统报告的
<span style="color: #800000">"<span style="color: #800000">ctime<span style="color: #800000">"。在某些系统上(如Unix)是最新的元数据更改的时间,在其它系统上(如Windows)是创建时间(详细信息参见平台的文档)。

五、sys

1
1(e)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!