1.Python标准库
函数+模块=标准库
导入机制:只有一个import,但是可以有两种用法。
from 标准库模块名字 import 子模块名字
这种方法会把一个指定的函数导入到程序的命名空间,这允许我们在必要时调用这个函数,而不必将函数链接回所导入的模块。
#显示当前时间数值里面有没有奇数
这个示例就使用了这种导入技术,然后用datetime()调用datetime函数,而不是datetime.datetime()。
import 标准库模块名字
第二种方法是只导入模块,采用这种导入方式时,必须使用点记法语法来访问模块的功能,如time.sleep()。
当两个模块中的同名函数都需要使用,用第二种方法比较好。
import A,B
A.F()
B.F()
(1)Python标准库是一组丰富的软件模块,提供了大量预建的(而且高质量的)可重用代码。
相关函数的一个集合构成了一个模块,在标准库中有大量模块:函数->模块->标准库
(2)datetime模块
在代码中,我们特意从标准库的datetime模块请求了一个子模块。这个子模块也叫做datetime,虽然这点容易让人混淆,但是却是这样的。datetime子模块提供了一种处理时间的机制。
date.today函数会提供今天的日期
>>> import datetime
>>> datetime.date.today()
datetime.date(2018, 6, 5)
>>> datetime.date.today().day #后面追加一个要访问的属性来单独显示日月年
5
>>> datetime.date.today().month
6
>>> datetime.date.today().year
2018
用date.isoformat函数并传入今天的日期,用一种更友好的方式显示日期,会转换成一个字符串:
>>> datetime.date.isoformat(datetime.date.today())
'2018-06-05'
除了日期还有时间
from datetime import datetime #显示当前时间数值里面有没有奇数
odds=[ 1,3,5,7,9,11,13,15,17,19,
21,23,25,27,29,31,33,35,37,39,
41,43,45,47,49,51,53,55,57,59]
right_this_minute=datetime.today().minute
if right_this_minute in odds:
print('This minute seems a little odd.')
else:
print("Not an odd minute.")
(3)time模块
导入time模块后,调用strftime函数并指定你希望以什么方式显示时间就可以了。
在这里,我们对24小时制的当前小时(%H)和分钟(%M)感兴趣:
>>> import time
>>> time.strftime("%H:%M")
'11:20'
查看是星期几:%A;查看是上午还是下午:%p
(4)os模块
这个模块提供了一种平台独立的方式来与底层操作系统交互,不论具体是什么系统。
下面重点看它提供的一个函数getcwd,调用这个函数时,会返回你当前工作目录。
在python程序中通常如下导入和调用函数:
from os import getcwd #从os模块导入这个函数
where_am_I=getcwd() #然后根据需要调用
>>> import os
>>> os.getcwd()
'C:\\Users\\汤珊珊\\AppData\\Local\\Programs\\Python\\Python36-32'
可以访问系统的全部环境变量(使用environ属性),也可以单独访问某一个环境变量(使用getenv函数):
>>> os.environ
environ({'ALLUSERSPROFILE': ......, 'WINDIR': 'C:\\WINDOWS'}) #其中......是大量数据
>>> os.getenv('WINDIR')
'C:\\WINDOWS'
#可使用getenv(从environ包含的数据中)访问指定的属性
(5)sys模块
帮助你更多的了解运行解释器的系统,可以通过如下操作了解你的底层操作系统
>>>import sys
>>>sys.platform
#回车后输出当前platform属性
一些可重用模块主要支持访问预置属性(如platform),sys模块就是这种模块一个很好的例子。
print(sys.version)
#确定在运行python的哪个版本
(6)html模块
>>> import html
>>> html.escape("This HTML fragment contains a <script>script</script> tag.")
'This HTML fragment contains a <script>script</script> tag.'
>>> html.unescape("I ♥ <乔小川>.")
'I ♥ <乔小川>.'
>>>