python模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python模块相关的知识,希望对你有一定的参考价值。

1.模块格式

为了方便管理模块,python中又引了包(Package)这个概念。每个包下面都有一个__init__.py文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。__init__.py可以是空文件,也可以有Python代码。

例子:

[[email protected] ~]# tree test

test

├── aaa.py

├── bbb.py

└── __init__.py


2.import导入

有时候一个文件或者一个包中已经出现了一个函数,我们在另一个python代码中需要引入该文件或者该文件的某个函数,python给我们提供一个关键字。


2.1import用法:

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

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

3)导入时,.py的后缀直接省略,如果是多级的包,或者想导入包里面的函数等,可以使用from进行导入


2.2常用导入格式:

from xxx import xxx

import xxx


2.3调用方式

例子:

技术分享


# 第一种调用

import test.test     # 目录名.文件名

test.test.hello()    # 引用时,目录名.文件名.函数名

# 第二种调用

from test import test  # from格式

test.hello()           # 文件名.函数名


技术分享


2.4起别名

例子:

import test.test as alias1

alias1.hello()

结果:

hello,world



3.时间模块

3.1 time模块:基本不用取时间,取时间推荐使用datatime模块;time独有的的用法(定时)

例子:

import time

for i in xrange(1,10):

   print (i)

   time.sleep(2)

结果:

1

2

3

4

5

6

7

8

9

说明:

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

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

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



3.2 timedate模块

3.2.1 now()方法:当前时间

例子:

from datetime import datetime

time_now = datetime.now()

print(time_now)

结果:

2017-10-23 17:55:15.161000


3.2.2 strftime()方法:自定义时间格式

格式参数:

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

%m 十进制表示的月份

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

%H 24小时制的小时

%M 十时制表示的分钟数

%S 十进制的秒数

%c  标准时间,如:04/25/17 14:35:14


例子:

from datetime import datetime

time_now = datetime.now()

new_time = time_now.strftime("%Y-%m-%d %H:%M:%S")

print(new_time)

结果:

2017-10-23 17:59:59


例子:

from datetime import datetime

time_now = datetime.now()

new_time = time_now.strftime("%c")

print(new_time)

结果:

10/23/17 18:01:07


3.2.3 datetime模块其他方法

datetime.astimezone       datetime.dst              datetime.isoformat        datetime.minute           datetime.second           datetime.timetz           datetime.utcfromtimestamp datetime.year

datetime.combine          datetime.fromordinal      datetime.isoweekday       datetime.month            datetime.strftime         datetime.today            datetime.utcnow

datetime.ctime            datetime.fromtimestamp    datetime.max              datetime.now              datetime.strptime         datetime.toordinal        datetime.utcoffset

datetime.date             datetime.hour             datetime.microsecond      datetime.replace          datetime.time             datetime.tzinfo           datetime.utctimetuple

datetime.day              datetime.isocalendar      datetime.min              datetime.resolution       datetime.timetuple        datetime.tzname           datetime.weekday



3.3 datetime模块的Timedelta函数,自定义时间

格式:

Timedelta可以接收daysseconds两个参数

正数代表几天之后

负数代表几天之前


例子:

from datetime import datetime, timedelta

now_time = datetime.now()

print(now_time)

new_time = now_time + timedelta(days=1)

print(new_time)


结果:

2017-10-23 18:12:34.242000

2017-10-24 18:12:34.242000



4.时间的存在方式:时间对象、时间字符串、时间戳


1)strftime时间对象——>时间字符串

例子:

from datetime import datetime

time_now = datetime.now()

time_new = datetime.strftime(time_now,"%Y-%m-%d %H:%M:%S")

print (time_new)

print(type(time_new))

结果:

2017-10-23 18:27:25

<type ‘str‘>



2)strptime时间字符串——>时间对象

例子:

from datetime import datetime

time_now = datetime.now()

time_new = datetime.strftime(time_now,"%Y-%m-%d %H:%M:%S")

print (time_new)

print(type(time_new))

time_new2 = datetime.strptime(time_new,"%Y-%m-%d %H:%M:%S")

print(time_new2)

print(type(time_new2))

结果:

2017-10-23 18:27:25

<type ‘str‘>

2017-10-23 18:27:25

<type ‘datetime.datetime‘>


3)fromtimestamp():时间戳——>字符串

例子:

import time

from datetime import datetime, timedelta

time_now = time.time()

print (time_now)

print(type(time_now))

time_new = datetime.fromtimestamp(time_now)

print(time_new)


结果:

1508755156.58

<type ‘float‘>

2017-10-23 18:39:16.580000


以上是关于python模块的主要内容,如果未能解决你的问题,请参考以下文章

Python导入模块问题

python aes模块怎么导入

python基础五——模块

python库、包、模块概念辨析

Python模块安装

Python必学的模块都有哪些?