日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【成长之路】【python】python基础5-模块

發布時間:2025/7/14 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【成长之路】【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-模块的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。