【成长之路】【python】python基础5-模块
生活随笔
收集整理的這篇文章主要介紹了
【成长之路】【python】python基础5-模块
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
time模塊
? 1. import time
# 日期字符串 轉成 時間戳 19 # string_2_struct = time.strptime("2016/05/22","%Y/%m/%d") #將 日期字符串 轉成 struct時間對象格式 20 # print(string_2_struct) 21 # # 22 # struct_2_stamp = time.mktime(string_2_struct) #將struct時間對象轉成時間戳 23 # print(struct_2_stamp) 24 25 26 27 #將時間戳轉為字符串格式 28 # print(time.gmtime(time.time()-86640)) #將utc時間戳轉換成struct_time格式 29 # print(time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()) ) #將utc struct_time格式轉成指定的字符串格式 2.#時間加減import datetime# print(datetime.datetime.now()) #返回 2016-08-19 12:47:03.941925# print(datetime.date.fromtimestamp(time.time()) ) # 時間戳直接轉成日期格式 2016-08-19# print(datetime.datetime.now() )# print(datetime.datetime.now() + datetime.timedelta(3)) #當前時間+3天
# print(datetime.datetime.now() + datetime.timedelta(-3)) #當前時間-3天# print(datetime.datetime.now() + datetime.timedelta(hours=3)) #當前時間+3小時# print(datetime.datetime.now() + datetime.timedelta(minutes=30)) #當前時間+30分
print(datetime.datetime.now())
print(datetime.datetime.now() + datetime.timedelta(hours=3))
輸出結果:差了3個小時
2017-02-20 18:48:45.996364
2017-02-20 21:48:45.996364
3.random模塊
#生成大小寫字母和數字組成的驗證碼
import random,string
source = string.digits + string.ascii_lowercase
print(''.join(random.sample(source,6)))
6e1wh7
4.os模塊
提供對操作系統進行調用的接口
os.getcwd() 獲取當前工作目錄,即當前python腳本工作的目錄路徑|F:\python\homework\4\ATM\conf
os.chdir("dirname")? 改變當前腳本工作目錄;相當于shell下cd os.curdir? 返回當前目錄: ('.') os.pardir? 獲取當前目錄的父目錄字符串名:('..') os.makedirs('dirname1/dirname2')??? 可生成多層遞歸目錄 os.removedirs('dirname1')??? 若目錄為空,則刪除,并遞歸到上一級目錄,如若也為空,則刪除,依此類推 os.mkdir('dirname')??? 生成單級目錄;相當于shell中mkdir dirname os.rmdir('dirname')??? 刪除單級空目錄,若目錄不為空則無法刪除,報錯;相當于shell中rmdir dirname os.listdir('dirname')??? 列出指定目錄下的所有文件和子目錄,包括隱藏文件,并以列表方式打印 os.remove()? 刪除一個文件 os.rename("oldname","newname")? 重命名文件/目錄 os.stat('path/filename')? 獲取文件/目錄信息 os.sep??? 輸出操作系統特定的路徑分隔符,win下為"\\",Linux下為"/" os.linesep??? 輸出當前平臺使用的行終止符,win下為"\t\n",Linux下為"\n" os.pathsep??? 輸出用于分割文件路徑的字符串 os.name??? 輸出字符串指示當前使用平臺。win->'nt'; Linux->'posix' os.system("bash command")? 運行shell命令,直接顯示 os.environ? 獲取系統環境變量 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所指向的文件或者目錄的最后修改時間5.json & pickle 模塊
用于序列化的兩個模塊
- json,用于字符串 和 python數據類型間進行轉換
- pickle,用于python特有的類型 和 python的數據類型間進行轉換
Json模塊提供了四個功能:dumps、dump、loads、load
pickle模塊提供了四個功能:dumps、dump、loads、load
import json
j_str = json.dump(data)
with open('d:/person','w') as fp:
json.dump(data,fp)
6.shelve 模塊
import?shelve
d?=?shelve.open('shelve_test')?#打開一個文件 class?Test(object): ????def?__init__(self,n): ????????self.n?=?n t?=?Test(123)? t2?=?Test(123334) name?=?["alex","rain","test"] d["test"]?=?name?#持久化列表 d["t1"]?=?t??????#持久化類 d["t2"]?=?t2 d.close() 6.生成器 只有在調用next的時候才生成下一個值,調用一次生成一次,而不是預生成的方式產生循環的量 def fib(max):n,a,b = 0,0,1while n < max:#print(b)yield ba,b = b,a+bn += 1return 'done'通過yield實現在單線程的情況下實現并發運算的效果 import time def consumer(name):print("%s 準備吃包子啦!" %name)while True:baozi = yieldprint("包子[%s]來了,被[%s]吃了!" %(baozi,name))def producer(name):c = consumer('A')c2 = consumer('B')c.__next__()c2.__next__()print("老子開始準備做包子啦!")for i in range(10):time.sleep(1)print("做了2個包子!")c.send(i)c2.send(i)producer("alex")
7.小知識點
chr(75),把整型數轉換為字符
a ='print(chr(75))'
exec(a) ,exec執行字符串中的名利
a = '2+4'
print(eval(a)) eval執行字符串中的表達式
print(dir('a')) dir查對象所對應的方法
?map(lamada x:x+1,rang(10)), map對列表中的每一個值做定義的操作
?
List(range(10)) 列出列表中的每個值:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
?
?a = range(5)
b = range(5,10)
zip(a,b),分別從a和b中逐次各取一個值做為一個新的的組
print(list(zip(a,b))) :[(0, 5), (1, 6), (2, 7), (3, 8), (4, 9)]?
?
| ? | ? |
轉載于:https://www.cnblogs.com/wozhangdale1/p/6421910.html
總結
以上是生活随笔為你收集整理的【成长之路】【python】python基础5-模块的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: gulp自动化构建工具--压缩css--
- 下一篇: python之 启动一个子进程并等待其结