您的位置:首页 > 编程语言 > Python开发

python 常用的内置模块使用

2017-11-10 01:23 585 查看
在日常的开发工作中,我们要写很多的python代码,如果都写在一个文件中,会导致代码特别难维护,为了拓展代码的可维护性,我们把函写在不同的文件里,这样每个文件包含的文件就比较少,逻辑更加清楚

在python中,我们创建的文件基本都是以.py结尾,那一个.py的文件就称之为模块。

1. import导入

如果是本地导入文件,直接使用:import filename

1, 如果导入的是一个包,该包下面必须是有__init__.py文件才可以导入,否则报错,只有有了__init__.py文件,python解析器才会把这个目录当成是的包

常用的导入模块常用的格式:

1.form xxx import xxx

2.import xxx



import md.mode01
md.mode01.hello()
#这样写比较麻烦

from md import mode01
mode01.hello()
# 从什么模块中导入什么

from md.mode01 import hello
hello()
返回结果:

hello,world
hello,world
hello,world

2.datetime的使用

The distinction between naive and aware doesn’t apply to timedelta objects.

 

Subclass relationships:

 

object

    timedelta

    tzinfo

    time

    date

        datetime

time模块基本不用于取时间,取时间用datetime、

import time
for i in xrange(11):
print i
time.sleep(2)
每2秒打印一个数字。

datetime:

from datetime import datetime

now_time = datetime.now()
print(now_time)
当前时间。

获取年月:

from datetime import datetime
now_time = datetime.now()
a = now_time.strftime('%Y-%m-%d')
print(now_time)
print(a)
print(type(now_time))


1.此时我们获得的now_time还是一个datetime类,所以我们需用用strftime方法转换成字符串,strftime的参数就是最终需要字符串的形式。

2.Strftime需要便是时间的参数有很多,下面我们介绍一下最长用的一些参数:

格式参数:

%Y 带世纪部分的十制年份

%m 十进制表示的月份

%d 十进制表示的每月的第几天

%H 24小时制的小时

%M 十时制表示的分钟数

%S 十进制的秒数

%c  标准时间,如:04/25/17 14:35:14  类似于这种形式

这几个参数就是最常用到的我们用的时间

如果我们要获取昨天或者明天的时候:

from datetime import datetime, timedelta
now_time = datetime.now()
a = now_time.strftime('%c')
print(now_time)
print(a)
b = now_time + timedelta(days=-1)
print(b)
返回结果:

2017-11-10 02:24:55.188000
11/10/17 02:24:55
2017-11-09 02:24:55.188000


解释:

Timedelta可以接收days和seconds两个参数,正数代表几天之前的,负数代表几天之前的。所以b代表的是一天之前的时间。

3.时间格式的相互转换
1.字符串转datetime:

from datetime import datetime, timedelta
string = '2017-11-10 02:29:58'
time1 = datetime.strptime(string, '%Y-%m-%d %H:%M:%S')
print(time1)
print(type(time1))
返回:

2017-11-10 02:29:58
<type 'datetime.datetime'>


2.datetime转字符串:

from datetime import datetime, timedelta
string = '2017-11-10 02:29:58'
time1 = datetime.strptime(string, '%Y-%m-%d %H:%M:%S')
print(time1)
print(type(time1))
time1_str = datetime.strftime(time1, '%Y-%m-%d %H:%M:%S')
print(type(time1_str))
print(time1_str)
返回结果:

2017-11-10 02:29:58
<type 'datetime.datetime'><type 'str'>
2017-11-10 02:29:58


3.时间戳转时间对象:
from datetime import datetime, timedelta
import time
time1 = time.time()
print(time1)
time1_str = datetime.fromtimestamp(time1)
print(time1_str)
print(type(time1_str))
返回结果:

1510252429.48
2017-11-10 02:33:49.483000
<type 'datetime.datetime'>


解释:

1. datetime模块是包装了time模块的,所以只需要了解datetime模块就可以。

2.time.time()是或者当前时间的时间戳,时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

3.datetime下面下面有个函数fromtimestamp(时间戳)会把时间戳自动转换成datetime类型.

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: