day5隨筆

經常使用模塊(1)

OS模塊

os.getcwd() 獲取當前工做目錄,即當前python腳本工做的目錄路徑python

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所指向的文件或者目錄的最後修改時間

time模塊

asctime([tuple]) -> string 將元組格式轉換成字符串格式linux

clock() -> floating point number  在win下爲當前時間,linux下爲程序佔用CPU的時間shell

ctime(seconds) -> string 默認爲當前UTC-8時間戳的字符串 , 若是有參數是1970-1-1 開始加secnds的時間戳bash

gmtime([seconds]) -> (tm_year, tm_mon, tm_mday, tm_hour, tm_min,tm_sec, tm_wday,tm_yday,tm_isdst) 默認當前UTC時間的元組,isdst是不是夏令時app

localtime([seconds]) -> (tm_year,tm_mon,tm_mday,tm_hour,tm_min,tm_sec,tm_wday,tm_yday,tm_isdst) 默認當前U本地UTC-8時間的元組,isdst是不是夏令時dom

mktime(tuple) -> floating point number  與gmtime()和localtime()操做相反函數

sleep(seconds)   休眠多少秒學習

strftime(format[, tuple]) -> string  格式輸出的字符串時間spa

  • %y 兩位數的年份表示(00-99)
  • %Y 四位數的年份表示(000-9999)
  • %m 月份(01-12)
  • %d 月內中的一天(0-31)
  • %H 24小時制小時數(0-23)
  • %I 12小時制小時數(01-12)
  • %M 分鐘數(00=59)
  • %S 秒(00-59)
  • %a 本地簡化星期名稱
  • %A 本地完整星期名稱
  • %b 本地簡化的月份名稱
  • %B 本地完整的月份名稱
  • %c 本地相應的日期表示和時間表示
  • %j 年內的一天(001-366)
  • %p 本地A.M.或P.M.的等價符
  • %U 一年中的星期數(00-53)星期天爲星期的開始
  • %w 星期(0-6),星期天爲星期的開始
  • %W 一年中的星期數(00-53)星期一爲星期的開始
  • %x 本地相應的日期表示
  • %X 本地相應的時間表示
  • %Z 當前時區的名稱
  • %% %號自己
  • print time.strftime("%b %d %Y %H:%M:%S", time.gmtime(t))

strptime(string, format) -> struct_time 將格式化的時間,轉換成元組格式操作系統

time() -> floating point number  把當前時間格式變成1970到如今的秒數

 

datetime模塊,time模塊的高級封裝

class date 對應日期的操做

date(year, month, day) --> date object

ctime(...)

fromordinal(...)

fromtimestamp(...)

isocalendar(...)

isoformat(...)

isoweekday(...)

replace(...)

strftime(...)

timetuple(...)

today(...)

toordinal(...)

weekday(...)

max = datetime.date(9999, 12, 31)    min = datetime.date(1, 1, 1)  resolution = datetime.timedelta(1)

 

class datetime  年月日小時分鐘秒的操做

datetime.datetime.now()   時間的元組== datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])

datetime.datetime.now() + datetime.timedelta(+/- 數字)

astimezone(...)

combine(...)

ctime(...)

date(...)

dst(...)

fromtimestamp(...)

isoformat(...)

now(...)

replace(...)

strptime(...)

time(...)

timetuple(...)

timetz(...)

tzname(...)

utcfromtimestamp(...)

utcnow(...)

utcoffset(...)

utctimetuple(...)

fromordinal(...)

isocalendar(...)

isoweekday(...)

strftime(...)

today(...)

toordinal(...)

weekday(...)

 

class time  小時分鐘秒的操做

dst(...)

isoformat(...)

replace(...)

strftime(...)

tzname(...)

utcoffset(...)

 

 

random模塊

random.seed(a=None, version=2)初始化隨機數發生器,若是a被忽略或者爲None,則使用系統當前時間。這個用於把一個隨機數初始化

random.randrange(start, stop, [, step])  ,產生一個隨機整數,不包括stop

randint(a,b) ,返回一個整數,包括a,b

random.choice(seq) 從一個非空序列隨機返回一個元素,空報錯

random.shuffle  == ? radom.random()  返回0-1之間的浮點數

random.sample([1,2,3,4,5,67,],2)  從序列或Set中隨機選擇k個,組成惟一元素的列表

random.uniform(a,b) 返回一個a,到b 之間的浮點數

random.triangular(low, high, mode) 返回一個默認是0-1之間的,mode默認爲對稱分佈的值

#!/usr/bin/env python
#_*_encoding: utf-8_*_
import  random
print  (random.random())   #0.6445010863311293  
#random.random()用於生成一個0到1的隨機符點數: 0 <= n < 1.0
print  (random.randint( 1 , 7 ))  #4
#random.randint()的函數原型爲:random.randint(a, b),用於生成一個指定範圍內的整數。
# 其中參數a是下限,參數b是上限,生成的隨機數n: a <= n <= b
print  (random.randrange( 1 , 10 ))  #5
#random.randrange的函數原型爲:random.randrange([start], stop[, step]),
# 從指定範圍內,按指定基數遞增的集合中 獲取一個隨機數。如:random.randrange(10, 100, 2),
# 結果至關於從[10, 12, 14, 16, ... 96, 98]序列中獲取一個隨機數。
# random.randrange(10, 100, 2)在結果上與 random.choice(range(10, 100, 2) 等效。
print (random.choice( 'liukuni' ))  #i
#random.choice從序列中獲取一個隨機元素。
# 其函數原型爲:random.choice(sequence)。參數sequence表示一個有序類型。
# 這裏要說明一下:sequence在python不是一種特定的類型,而是泛指一系列的類型。
# list, tuple, 字符串都屬於sequence。有關sequence能夠查看python手冊數據模型這一章。
# 下面是使用choice的一些例子:
print (random.choice( "學習Python" )) #學
print (random.choice([ "JGood" , "is" , "a" , "handsome" , "boy" ]))   #List
print (random.choice(( "Tuple" , "List" , "Dict" )))    #List
print (random.sample([ 1 , 2 , 3 , 4 , 5 ], 3 ))     #[1, 2, 5]
#random.sample的函數原型爲:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片段。sample函數不會修改原有序列。

 

#!/usr/bin/env python
# encoding: utf-8
import  random
import  string
#隨機整數:
print ( random.randint( 0 , 99 ))   #70
 
#隨機選取0到100間的偶數:
print (random.randrange( 0 101 2 ))  #4
 
#隨機浮點數:
print ( random.random())  #0.2746445568079129
print (random.uniform( 1 10 ))  #9.887001463194844
 
#隨機字符:
print (random.choice( 'abcdefg&#%^*f' )) #f
 
#多個字符中選取特定數量的字符:
print (random.sample( 'abcdefghij' , 3 ))  #['f', 'h', 'd']
 
#隨機選取字符串:
print ( random.choice ( [ 'apple' 'pear' 'peach' 'orange' 'lemon' ] ))  #apple
#洗牌#
items  =  [ 1 , 2 , 3 , 4 , 5 , 6 , 7 ]
print (items)  #[1, 2, 3, 4, 5, 6, 7]
random.shuffle(items)
print (items)  #[1, 4, 7, 2, 5, 3, 6]
 
import  random
checkcode  =  ''
for  in  range ( 4 ):
     current  =  random.randrange( 0 , 4 )
     if  current ! =  i:
         temp  =  chr (random.randint( 65 , 90 ))
     else :
         temp  =  random.randint( 0 , 9 )
     checkcode  + =  str (temp)
print  (checkcode)

sys模塊

sys.argv 返回參數的列表,第一個爲函數名

sys.exit(n)  退出程序,正常退出爲sys.exit(0)

sys.version   獲取解釋器的版本

sys.maxint  最的int值

sys.path  python解釋器額度環境變量

sys.platform  返回操做系統平臺名稱

sys.stdout.write('please:')  向屏幕輸出。。

val = sys.stdin.readline()[:-1]  將標準輸入保存到val中

sys.stdin/stdout/stderr 默認行爲文件,能夠write,read操做

相關文章
相關標籤/搜索