#調(diào)用模塊:import+模塊名
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供邱縣網(wǎng)站建設(shè)、邱縣做網(wǎng)站、邱縣網(wǎng)站設(shè)計(jì)、邱縣網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、邱縣企業(yè)網(wǎng)站模板建站服務(wù),十多年邱縣做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
import time;
#獲取當(dāng)前時(shí)間戳 linux從70到38的毫秒數(shù)
print(time.time());#此方法計(jì)算系統(tǒng)執(zhí)行的時(shí)間
#休眠當(dāng)前線程,阻塞住當(dāng)前的線程,單位是秒
time.sleep(5);
print('休眠結(jié)束')
#單位為秒,例如:1.5e-06 科學(xué)計(jì)數(shù)法,1.5*10^6
#計(jì)算cpu執(zhí)行時(shí)間
print(time.clock())
#獲取世界標(biāo)準(zhǔn)時(shí)間
print(time.gmtime())
#獲取本地時(shí)間,結(jié)果為元組tuple
print(time.localtime())
#格式化時(shí)間y:年 m:月 d:日 H:時(shí) M:分 S:秒 將時(shí)間元組轉(zhuǎn)換成為有格式的字符串
print(time.strftime('%y-%m-%d %H:%M:%S',time.localtime()))
#將格式字符串轉(zhuǎn)換為元組,好處是可以通過(guò)索引分別獲取每個(gè)元組
print(time.strptime('18-10-23 15:00:07','%y-%m-%d %H:%M:%S'))
#ctime將時(shí)間戳轉(zhuǎn)換成時(shí)間字符串類型 CHAR(字符串) CDATA(XML中的數(shù)據(jù):)<head>節(jié)點(diǎn)的內(nèi)容如果為字符串
CDATA</head>
print(time.ctime(time.time()))
#調(diào)用模塊
import random
#生成0~1之間的隨機(jī)數(shù) 包含小數(shù)
print(random.random())
#獲取一個(gè)范圍之中的隨機(jī)整數(shù) 既包含a 又包含b
print(random.randint(0,10))
#隨機(jī)選擇序列中的元素
print(random.choice([1,2,3,4,5,6,7]))
#randrange(a,b) a~b之間的隨機(jī)整數(shù) 不包含b
print(random.randrange(0,10))
#調(diào)用操作系統(tǒng)的模塊 是重點(diǎn)
import os#自適應(yīng)操作系統(tǒng)
#獲取當(dāng)前py文件運(yùn)行的目錄
print(os.getcwd());
#切換目錄 cd
os.chdir('F:\\Demo\\demo4');
#獲取當(dāng)前目錄 python . ..
print(os.curdir);
#上一級(jí)目錄 ..
print(os.pardir);
#創(chuàng)建目錄
os.mkdir('我是目錄')
#刪除目錄的操作必須是空目錄 Linux rm
os.rmdir('我是目錄')
#創(chuàng)建嵌套的目錄
os.makedirs('我是目錄/demo/demo1')
#刪除嵌套的目錄
os.removedirs('我是目錄/demo/demo1')
#展示當(dāng)前目錄下的所有文件和目錄 組裝成為一個(gè)列表
lists=os.listdir('F:\\Demo\\demo4')
print(lists)
#刪除文件
os.remove('HelloWorld')
os.rename('../demo3','demo7')
#查看文件的詳細(xì)信息
print(os.stat('內(nèi)置函數(shù).py'))
#文件分隔符 windows:\ Linux:/
print(os.sep)
#文件分隔符字符串 環(huán)境變量; Linux:
print(os.pathsep)
#行的終止符
print(os.linesep)
#直接執(zhí)行shell命令的方法 windows gbk python utf-8
os.system('ipconfig')
#獲取系統(tǒng)環(huán)境變量 封裝成了字典
print(os.environ)
#獲取文件的絕對(duì)路徑
print(os.path.abspath('內(nèi)置函數(shù).py'))
#將文件名和目錄以元組的形式進(jìn)行分割
print(os.path.split('F:\Demo\demo4\內(nèi)置函數(shù).py'))
#獲取文件的目錄名
print(os.path.dirname('F:\Demo\demo4\內(nèi)置函數(shù).py'))
#獲取文件名
print(os.path.basename('F:\Demo\demo4\內(nèi)置函數(shù).py'))
#判斷改文件是否存在
print(os.path.exists('F:\Demo\demo4\內(nèi)置函數(shù)1.py'))
#判斷是否為目錄
print(os.path.isdir('F:\Demo\demo4'))
#將兩個(gè)路徑組合在一起輸出
print(os.path.join('F:\Demo\demo4','demo5\demo6'))
#操作正則表達(dá)式
import re
str='aa38bb56'
#\d 0~9
#findall方法:通配整個(gè)字符串 直到到字符串的末尾 把所有符合的條件的字符都獲取出來(lái)
result=re.findall('\d{2}',str)
print(result)
#search 檢索
str=r'D:\hehe.txt'; #取消掉\的特殊語(yǔ)義
#search只通配一次
str=re.search('^\w+@\w+\.\w+$','1018617499@qq.com')
print(str.group())#返回的是字符串
#正則分組 組名:name
strs=re.search('(?P<name>\w{3})','cmy')
#根據(jù)組名獲取數(shù)據(jù)
print(strs.group('name'))
#只有一次
result=re.match('ABC','ABC1234ABC')
print(result.group())
#按照表達(dá)式將字符串分割為列表
lists=re.split('\.','a.b.c.d')
print(lists)
#將字符串中的一部分替換為另一部分
print(re.sub('a','呵呵','aabbcc'))
#面向?qū)ο蟮乃枷?compile方法生成了一個(gè)正則表達(dá)式對(duì)象
reg=re.compile('^(1[0-2]\d)|(\d{1,2})$')
g=reg.search('-5')
print(g.group())
#生成一個(gè)ini的配置文件
#導(dǎo)入模塊
import configparser
#生成文件句柄
config=configparser.ConfigParser()
#生成配置組 ini 文件 [MySQLd] default-character-set=utf-8 skip-grant-all
mysql:my.ini文件
config['namespace']={ #K,V
'name':'zhangsan',
'age':18
}
#在ini文件中 默認(rèn)的配置組 [DEFAULT]
with open('example.ini','a',encoding='utf-8') as file:
config.write(file);
#讀取ini文件中內(nèi)容
config.read('example.ini');
#調(diào)用sections方法生成字典的結(jié)構(gòu)數(shù)據(jù) 發(fā)現(xiàn)只有一個(gè)namespace組 沒(méi)有
DEFAULT組
print(config.sections());
#打印DEFAULT組的內(nèi)容
od=config.defaults()#有序列表
for k,v in od.items():
print("key:%s,Value:%s"%(k,v))
print(config['namespace']['name'])
#打印[DEFAULT] 配置組下的配置信息
print(config['DEFAULT']['port'])
#通過(guò)算法加密 為了保證數(shù)據(jù)在傳輸?shù)倪^(guò)程中安全性 序列化(程序傳輸數(shù)據(jù)的一種方式)
#rsa git() Linux(ssh免密碼登錄)
#md5 號(hào)稱世界上安全性最高的加密算法 不可逆 md5在線解密器
#BASE 64 可逆
import hashlib
#m對(duì)象 一個(gè)加密器
m=hashlib.sha256();
#加密設(shè)置字符集
m.update('cmy'.encode('utf-8'))
#輸出密文
print(m.hexdigest())
#sha256
#log 日志文件 .log 文件作為后綴 日志也是解決bug非常好的方式
#設(shè)置日志的輸出級(jí)別
import logging
#K:V
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s %(filename)s [line:%(lineno)d] %(levelname)s %(message)s',
datefmt='%a,%d %b %Y %H:%M:%S',
filename='test.log'.encode('utf-8'),
filemode='w')
logging.debug('debug')
logging.info('info')
logging.warning('waring')
logging.error('error')
logging.critical('critical')
#獲取日志對(duì)象
logger=logging.getLogger('debug');
#配置日志文件的handler
fh=logging.FileHandler('logging.log');
#配置Console的Hanlder
sh=logging.StreamHandler();
#日志打印的格式
format=logging.Formatter('%(asctime)s %(filename)s [line:%(lineno)d] %(levelname)s %(message)s');
fh.setFormatter(format)
sh.setFormatter(format);
#存回Logger對(duì)象
logger.addHandler(fh);
logger.addHandler(sh)
#輸出了五個(gè)級(jí)別 3個(gè)級(jí)別會(huì)在Console上
logger.debug('debug')
logger.info('info')
logger.warning('waring')
logger.error('error')
logger.critical('critical')
#python程序的命令行參數(shù)
import sys
#第一個(gè)參數(shù)是PY文件的絕對(duì)路徑
print(sys.argv)
#返回的是PYTHON程序中模塊的搜索路徑 一個(gè)模塊就是一個(gè).py文件(尋找解釋器中內(nèi)置的.py文件)
print(sys.path)
#PYTHON解釋器的版本
print(sys.version)
#獲取到PYTHON程序所能接受的最大整數(shù)值 ±
print(sys.maxsize)
#返回操作系統(tǒng)的平臺(tái)名稱 win7 32 位
print(sys.platform)
#退出程序 強(qiáng)制關(guān)閉python程序的運(yùn)行
#sys.exit(0)
#input 允許用戶從Console輸入
sys.stdout.write('please:')
#打印readline獲取的列表中的所有元素
value=sys.stdin.readline()[:-1]
print('您輸入了:%s'%value)
#print('程序還沒(méi)退出')
#序列化模塊:什么叫 序列化:序列化 是程序傳輸數(shù)據(jù)的一種手段,比如:內(nèi)存→硬盤 硬盤→內(nèi)存 線程→線程
#持久化:將程序內(nèi)存中的數(shù)據(jù)保存在硬盤上
#通過(guò)json模塊 將內(nèi)存中的數(shù)據(jù)持久的保存在硬盤上的某個(gè)文件中
import json
#字典變量
dicts={'name':'zhangsan','age':18};
#二進(jìn)制的數(shù)據(jù)內(nèi)容
data=json.dumps(dicts);
with open('data','w',encoding='utf-8') as file:
#調(diào)用write方法寫入文件
file.write(data);
#反序列化:序列化取反的意思 內(nèi)存到硬盤(序列化) 硬盤到內(nèi)存(反序列化)
f=open('data','r',encoding='utf-8');
data=f.read();
#將字典獲取出來(lái)
dicts=json.loads(data);
print(dicts)
#序列化和反序列化的操作 省略write和read操作 交給Python底層去實(shí)現(xiàn)
#序列化的數(shù)據(jù)
str='hiahia';
file=open('data','w',encoding='utf-8');
json.dump(str,file);
file=open('data','r',encoding='utf-8');
name=json.load(file);
print(name);
import shelve #比json更簡(jiǎn)單 只能是字典格式的 且key必須是字符串
#文件對(duì)象 無(wú)需借助open函數(shù)創(chuàng)建文件對(duì)象
file=shelve.open('shelve');
'''
#.bak dat dir
file['info']={'name':'張三'};
'''
#反序列化
data=file.get('info');
print(data);#shelve和json相比 操作更簡(jiǎn)單 且數(shù)據(jù)的安全性更高
分享題目:Python模塊
轉(zhuǎn)載來(lái)源:http://jinyejixie.com/article34/johhse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、自適應(yīng)網(wǎng)站、域名注冊(cè)、全網(wǎng)營(yíng)銷推廣、用戶體驗(yàn)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)