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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

模块单元学习笔记(日志记录模块os模块sys)

發(fā)布時(shí)間:2023/12/13 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 模块单元学习笔记(日志记录模块os模块sys) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、日志記錄模塊

  Logging 默認(rèn)情況下,logging將日志打印到屏幕,日志級(jí)別大小關(guān)系為:CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET,當(dāng)然也可以自己定義日志級(jí)別。

DEBUG:詳細(xì)的信息,通常只出現(xiàn)在診斷問題上;?INFO:確認(rèn)一切按預(yù)期運(yùn)行 ;WARNING:一個(gè)警告,可能會(huì)有一些意想不到的事情發(fā)生了,或表明一些問題在不久的將來(例如。磁盤空間低”)。這個(gè)軟件還能按預(yù)期工作 ; ERROR:個(gè)更嚴(yán)重的問題,軟件沒能執(zhí)行一些功能 ;CRITICAL:一個(gè)嚴(yán)重的錯(cuò)誤,這表明程序本身可能無法繼續(xù)運(yùn)行。


案例一:
import logging

# logging.basicConfig(level=logging.DEBUG)

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',datefmt=' %Y/%m/%d %H:%M:%S', filename='myapp.log', filemode='w')


logger = logging.getLogger(__name__)


def hello():
print("hello world")

def main():
logger.info("開始執(zhí)行main函數(shù)")
print("##"*10)
hello()
logger.info("調(diào)用hello() 函數(shù)")
try:
a = 2/0
f = open("demon1.py", "r")
except Exception as e:
logger.error("除數(shù)不能為0")
finally:
logger.warning("文件沒有正常關(guān)閉")
main()

執(zhí)行結(jié)果如下:


二、os模塊

os.name
如果結(jié)果為nt, 則為windows系統(tǒng),
如果結(jié)果為posix, 則為unix系統(tǒng)

os.system(cmd) 純粹的執(zhí)行系統(tǒng)命令,但是沒有返回結(jié)果
result = os.popen(cmd)
result.read() 這樣你就可以對(duì)reuslt進(jìn)行控制了


案例二:
import os

print(os.name)

if os.name == "nt":
cmd = "ipconfig"
elif os.name == "posix":
cmd = "ifconfig"

# os.system(cmd)

print(os.listdir("C:")) #列出當(dāng)前目錄, ls
# os.chdir("..") #改變目錄, cd
print(os.listdir())
print(os.getcwd()) #pwd
# os.mkdir("test")
# os.remove("myapp.log")
# os.rmdir("test")
# os.rename("demon1.py", "demon111.py")
print(os.linesep)
# windows換行符\n\r linux換行符\n mac \r

if not os.path.exists("test"):
os.mkdir("test")

print(os.path.abspath("./"))
執(zhí)行結(jié)果:

?


三、sys模塊 案例四:
import sys
print(sys.argv[1])
print(sys.argv[2])
print(sys.stdout)
sys.stdout.write("allalallala")

f = open("1.log", "w")
sys.stdout = f
print("hello world")

四、random
隨機(jī)模塊
random.randint(a, b)

案例五:
import random

print(random.randrange(1, 100, 2))
print(random.sample([1, 2, 3, 4, 5, 6, 7], 2))

class NumberCount(object):
def __init__(self):
self.number1 = 0
self.number2 = 0
self.number3 = 0
self.number4 = 0
self.number5 = 0
self.number6 = 0
def count(self):
for i in range(1, 6001):
number = random.randint(1, 6)
if number == 1:
self.number1 += 1
if number == 2:
self.number2 += 1
if number == 3:
self.number3 += 1
if number == 4:
self.number4 += 1
if number == 5:
self.number5 += 1
if number == 6:
self.number6 += 1
def getResult(self):
print("1出現(xiàn)的次數(shù): {0}".format(self.number1))
print("2出現(xiàn)的次數(shù): {0}".format(self.number2))
print("3出現(xiàn)的次數(shù): {0}".format(self.number3))
print("4出現(xiàn)的次數(shù): {0}".format(self.number4))
print("5出現(xiàn)的次數(shù): {0}".format(self.number5))
print("6出現(xiàn)的次數(shù): {0}".format(self.number6))

if __name__ == "__main__":
numberCount = NumberCount()
numberCount.count()
numberCount.getResult()

執(zhí)行結(jié)果:

?

?

五、random模塊

import random

random模塊 random.random() 0-1 random.randint(a, b) a<n<b 整型 random.uniform(10, 20) 10<n<20 浮點(diǎn)型 random.randrange(10, 100, 2),結(jié)果相當(dāng)于從[10, 12, 14, 16, ... 96, 98]序列中獲取一個(gè)隨機(jī)數(shù)。 random.sample的函數(shù)原型為:random.sample(sequence, k),從指定序列中隨機(jī)獲取指定長(zhǎng)度的片斷。sample函數(shù)不會(huì)修改原有序列。

?

六、string模塊

案例六:
import string

print(string.ascii_letters) 生成所有字母
print(string.digits) 生成所有數(shù)字
print(string.ascii_lowercase) 生產(chǎn)所有小寫字母
print(string.ascii_uppercase) 生產(chǎn)所有大寫字母
print(string.printable) 包含所有可打印字符的字符串
print(string.punctuation) 找出字符串中的所有的標(biāo)點(diǎn)
print(string.hexdigits) 十六進(jìn)制數(shù)字

執(zhí)行效果:

?


print("".join(random.sample(string.ascii_letters + string.digits, 4)))

隨機(jī)生產(chǎn)4個(gè)密碼執(zhí)行效果:

?

轉(zhuǎn)載于:https://www.cnblogs.com/iwss/p/8948583.html

總結(jié)

以上是生活随笔為你收集整理的模块单元学习笔记(日志记录模块os模块sys)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。