Python基本語法大全

巴扎黑
發布: 2017-08-02 10:19:32
原創
9419 人瀏覽過

1、Python的對漢字的支持

##!/usr/bin/python
#coding: UTF-8 
print "你好,世界";

2、Python標識符

在python裡,標識符有字母、數字、底線組成。

在python中,所有識別碼可以包含英文、數字以及底線(_),但不能以數字開頭。

python中的識別碼是區分大小寫的。

以下劃線開頭的識別碼是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接存取的類別屬性,需透過類別提供的介面進行訪問,不能用"from xxx import *"而導入;

以雙底線開頭的(__foo)代表類別的私有成員;以雙底線開頭和結尾的(__foo__)代表python里特殊方法專用的標識,如__init__()代表類別的建構子。

3、python的保留關鍵字

###################### ##printraisereturntrywhilewith
and exec not
#assert finally or
break for pass
class
# from
繼續 global
if
del #import
#elif in
#else is
## #####除了######lambda#######產量#############

4、Python的字串的表示形式

#Python 接收單引號(' ),雙引號(" ),三引號(''' """) 來表示字串,引號的開始與結束必須的相同類型的。

其中三引號可以由多行組成,編寫多行文字的快捷語法,常用語文檔字串,在文件的特定地點,被當做註解。

word = 'word'sentence = "这是一个句子。"paragraph = """这是一个段落。
包含了多个语句"""
登入後複製

5、Python的註解主要試用的是

# 或''' ''' 或""  """

6、Python的資料型別:

  • Numbers(數字

    • #int(有符號整數)

    • long(長整數[也可以代表八進位和十六進位])

    • float(浮點型)

    • complex(複數)

  • String(字串) {

  • 加號(+)是字串連接運算符,星號(*)是重複操作。

    !/usr/bin/python

    # -*- coding: UTF-8 -*-

    str = 'Hello World!'


    print str # 輸出完整字符字串
    print str[0] # 輸出字串中的第一個字元
    print str[2:5] # 輸出字串中第三個至第五個之間的字串
    print str[2:] # 輸出從第三個字元開始的字串
    print str * 2 # 輸出字串兩次
    print str + "TEST" # 輸出連接的字串



    }

  • List(列表)

  • #{

  • #!/usr/bin/python

    # -*- coding: UTF-8 -*-

    list = [ 'abcd', 786 , 2.23, 'john' , 70.2 ]

    tinylist = [123, 'john']

    print list # 輸出完整清單
    print list[0] # 輸出清單的第一個元素
    print list[1 :3] # 輸出第二個至第三個的元素 
    print list[2:] # 輸出從第三個開始到清單末端的所有元素
    print tinylist * 2 # 輸出清單兩次
    print list + tinylist # 列印組合的清單

    以上實例輸出結果:



    #['abcd', 786, 2.23, 'john', 70.2]
    abcd
    [786, 2.23]
    [2.23, 'john', 70.2]
    [123, 'john', 123, 'john']
    ['abcd', 786, 2.23, ' john', 70.2, 123, 'john']

  • #}

  • Tuple(元組)

  • #{

  • 元組以"()"標識。內部元素用逗號隔開。但是元組不能二次賦值,相當於只讀列表。


    #!/usr/bin/python
    # -*- coding: UTF-8 -*-

    tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
    tinytuple = (123, 'john')

    print tuple # 輸出完整元組
    print tuple[0] # 輸出元群組的第一個元素
    print tuple[1:3] # 輸出第二個至第三個的元素 
    print tuple[2:] # 輸出從第三個開始到清單末端的所有元素
    print tinytuple * 2 # 輸出元組兩次
    print tuple + tinytuple # 列印組合的元組

    以上實例輸出結果:


    #('abcd', 786, 2.23, 'john', 70.2)
    abcd
    (786, 2.23)
    (2.23, 'john', 70.2)
    (123, ' john', 123, 'john')
    ('abcd', 786, 2.23, 'john', 70.2, 123, 'john')

    以下是元組無效的,因為元組是不允許更新的。而列表是允許更新的:


    #!/usr/bin/python
    # -*- coding: UTF-8 -*-

    #tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
    list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
    tuple[2] = 1000 # 元組中是非法應用
    list[2] = 1000 # 列表中是合法應用程式

  • }

  • ##Dictionary(字典)

  • {

  • 字典用"{ }"來識別。字典由索引(key)和它對應的值value組成。


    #!/usr/bin/python
    # -*- coding: UTF-8 -*-

    dict = {}
    dict['one'] = "This is one "
    dict[2] = "This is two"

    tinydict = {'name': 'john','code':6734, 'dept': 'sales'}


    print dict['one'] # 輸出鍵為'one' 的值
    print dict[2] # 輸出鍵為2 的值
    print tinydict # 輸出完整的字典
    print tinydict .keys() # 輸出所有鍵
    print tinydict.values() # 輸出所有值

    輸出結果為:


    This is one This is two {'dept': 'sales', 'code': 6734, 'name': 'john'} ['dept', 'code', 'name'] ['sales', 6734, 'john ']

  • }

7、Python 資料型別的轉換

# #將x轉換到一個浮點數# #

8、Python的運算子

python的算術運算子

函數 描述
##int(x [ ,base])

將x轉換成一個整數

long(x [,base] )

將x轉換成一個長整數

#float(x)

complex(real [,imag])

#建立一個複數

str(x)

將物件x 轉換為字串

repr(x )

將物件x 轉換為表達式字串

eval(str)

用來計算在字串中的有效Python表達式,並傳回一個物件

tuple(s)

將序列s 轉換為一個元組

#list(s)

將序列s 轉換為一個列表

set(s)

#轉換成可變集合

dict(d)

建立一個字典。 d 必須是一個序列 (key,value)元組。

frozenset(s)

#轉換為不可變集合

chr(x)

將一個整數轉換為一個字元

unichr( x)

將一個整數轉換成Unicode字元

ord(x)

將一個字元轉換為它的整數值

hex(x)

#將一個整數轉換為一個十六進位字串

#oct(x)

將一個整數轉換為一個八進位字串

+加上- 兩個物件相加a + b 輸出結果30
-減- 得到負數或是一個數減去另一個數a - b 輸出結果-10
*乘- 兩個數相乘或是傳回一個重複若干次的字串a * b 輸出結果200
/除- x除以yb / a 輸出結果2
%取模-傳回除法的餘數b % a 輸出結果0
#**
########################## a**b 為10的20次方, 輸出結果100000000000000000000############//####### 取整除- 返回商的整數部分#######9/ /2 輸出結果4 , 9.0//2.0 輸出結果4.0############

python的比較運算子

##描述實例==等於- 比較物件是否相等(a == b) 傳回False。 !=不等於- 比較兩個物件是否不相等(a != b) 傳回true.<>不等於- 比較兩個物件是否不相等(a <> b) 傳回true。這個運算子類似 != 。 >大於 - 傳回x是否大於y(a > b) 傳回 False。 <小於 - 回傳x是否小於y。所有比較運算子回傳1表示真,回傳0表示假。這分別與特殊的變數True和False等價。注意,這些變數名的大寫。 (a < b) 傳回 true。 >=大於等於 - 回傳x是否大於等於y。 (a >= b) 傳回 False。 <=小於等於 - 回傳x是否小於等於y。 (a <= b) 傳回 true。

python的賦值運算子

#運算子
##描述實例=簡單的賦值運算子c = a + b 將a + b 的運算結果賦值為c+=加法賦值運算子c += a 等效於c = c + a-=減法賦值運算子c -= a 等效於c = c - a*=乘法賦值運算子c *= a 等效於c = c * a/=除法賦值運算子c /= a 等效於c = c / a%=取模賦值運算子c %= a等效於c = c % a**=冪賦值運算子c **= a 等效於c = c * * a//=取整除賦值運算子c //= a 等效於c = c // a

python位元運算子

運算子
##描述實例
&位元與運算子:參與運算的兩個值,如果兩個對應位元都為1,則該位的結果為1,否則為0(a & b) 輸出結果12 ,二進位解釋: 0000 1100
|以位元或運算子:只要對應的二個二進位有一個為1時,結果位元就為1。 (a | b) 輸出結果61 ,二進位解釋: 0011 1101
^ 位元異或運算子:當兩對應的二進位相異時,結果為1(a ^ b) 輸出結果49 ,二進位解釋: 0011 0001
~位元取反運算子:對資料的每個二進位位元取反,即把1變為0,把0變為1(~a ) 輸出結果-61 ,二進位解釋: 1100 0011, 在一個有符號二進制數的補碼形式。
<<左移動運算子:運算數的各二進位全部左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。 a << 2 輸出結果240 ,二進位解釋: 1111 0000
>>右移動運算子:把" >>"左邊的運算數的各二進位全部右移若干位,">>"右邊的數指定移動的位數a >> 2 輸出結果15 ,二進制解釋: 0000 1111
#

python邏輯運算子

##邏輯表達式描述實例andx and y1"與" - 如果x為False,x and y 傳回False,否則它會傳回y 的計算值。 (a and b) 回傳 20。 orx or y布林"或" - 如果 x 是 True,它會傳回 True,否則它傳回 y 的計算值。 (a or b) 回傳 10。 notnot x布林"非" - 如果 x 為 True,則傳回 False 。如果 x 為 False,它會傳回 True。 not(a and b) 傳回 False

python的成員運算子

#運算子
##描述實例in如果在指定的序列中找到值傳回True,否則傳回False。 x 在 y 序列中 , 如果 x 在 y 序列中回傳 True。 not in如果在指定的序列中沒有找到值傳回 True,否則傳回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中傳回 True。

python 的優先權

#
#運算子
右移,左移運算子&位'AND'位元運算子比較運算子##<> ; == !=等於運算子= %= /= //= -= += *= **=#賦值運算子is is not身分運算子
**指數(最高優先權)
#~ + -按位翻轉, 一元加號和減號(最後兩個的方法名為+@ 和-@)
#* / % //乘,除,取模和取整除
+ -#加法減法
>> <<
##^ |
<= < > >=
###in not in######成員運算符############not or and######邏輯運算子############

python的數學函數

函数返回值 ( 描述 )
abs(x)返回数字的绝对值,如abs(-10) 返回 10
ceil(x)返回数字的上入整数,如math.ceil(4.1) 返回 5
cmp(x, y)如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x)返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x)返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x)返回数字的下舍整数,如math.floor(4.9)返回 4
log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,...)返回给定参数的最大值,参数可以为序列。
min(x1, x2,...)返回给定参数的最小值,参数可以为序列。
modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y)x**y 運算後的值。
round(x [,n])傳回浮點數x的四捨五入值,如給出n值,則代表舍入到小數點後的位數。
sqrt(x)傳回數字x的平方根,數字可以是負數,傳回型別為實數,如math.sqrt(4)回傳2+0j

python隨即函數

#隨機數字可以用於數學,在遊戲,安全性等領域中,經常被嵌入到演算法中,用以提高演算法效率,並提高程式的安全性。

Python包含以下常用隨機數字函數:

##choice (seq)從序列的元素中隨機挑選一個元素,例如random.choice(range(10)),從0到9中隨機挑選一個整數。 randrange ([start,] stop [,step])從指定範圍內,依指定基數遞增的集合中取得一個隨機數,基數缺省值為1random()隨機產生下一個實數,它在[0,1)範圍內。 seed([x])改變隨機數產生器的種子seed。如果你不了解原理,你不必特別去設定seed,Python會幫你選擇seed。 shuffle(lst)將序列的所有元素隨機排序uniform(x, y)隨機產生下一個實數,它在[x,y]範圍內。

python的三角函數

#
函數描述
數字描述
#acos(x)傳回x的反餘弦弧度值。
asin(x)#傳回x的反正弦弧度值。  
atan(x) 傳回x的反正切弧度值。
atan2(y, x)傳回給定的 X 及 Y 座標值的反正切值。
cos(x)傳回x的弧度的餘弦值。
hypot(x, y)傳回歐幾里德範數sqrt(x*x + y*y) 。
sin(x)傳回的x弧度的正弦值。
tan(x) 傳回x弧度的正切值。
#
degrees(x) 將弧度轉換為角度,如degrees(math.pi/2) , 回傳90.0
#radians(x)將角度轉換為弧度

python的字串內建函數

# #string.decode(encoding='UTF-8', errors='strict')以encoding 指定的編碼格式解碼string,如果出錯預設封包一個ValueError 的異常, 除非errors 指定的是'ignore' 或'replace'#如果string 只包含十進位數字則傳回True 否則回傳False.#如果string 只包含數字則傳回True 否則回傳False.maketrans( ) 方法用於建立字元對映的轉換表,對於接受兩個參數的最簡單的呼叫方式,第一個參數是字串,表示需要轉換的字符,第二個參數也是字串表示轉換的目標。 #傳回字串 str 中最大的字母。 min(str)##在string 上執行lstrip()和rstrip()string.swapcase()#翻轉string 中的大小寫#string.title()#

python的List的函數

##描述

string.capitalize()

##把字串的第一個字元大寫

string.center(width)

傳回一個原始字串居中,並使用空格填充至長度width 的新字串

string.count(str, beg=0, end=len(string))

#傳回str 在string 裡面出現的次數,如果beg 或end 指定則回傳指定範圍內str 出現的次數

string.encode(encoding='UTF-8', errors='strict')

以encoding 指定的編碼格式編碼string,如果出錯預設封包一個ValueError 的例外,除非errors 指定的是'ignore'或'replace'

string.endswith( obj, beg=0, end=len(string))

#檢查字串是否以obj 結束,如果beg 或end 指定則檢查指定的範圍內是否以obj結束,如果是,返回True,否則返回False.

#string.expandtabs(tabsize=8)

把字串string 中的tab 符號轉為空格,tab 符號預設的空格數是8。

string.find(str, beg=0, end=len(string))

偵測str 是否包含在string 中,如果beg 和end 指定範圍,則檢查是否包含在指定範圍內,如果是傳回開始的索引值,否則傳回-1

##string.index(str, beg=0, end=len(string))

跟find()方法一樣,只不過如果str不在string中會報一個異常.

string.isalnum()

#如果string 至少有一個字元並且所有字元都是字母或數字則回傳

回True,否則回傳False

#string.isalpha()

如果string 至少有一個字元且所有字元都是字母則傳回True,

否則傳回False

string.isdecimal()

string.isdigit()

##########string.islower()#############如果string 中包含至少一個區分大小寫的字符,並且所有這些(區分大小寫的)字符都是小寫,則返回True,否則返回False################ #string.isnumeric()###

如果string 中只包含數字字符,則傳回True,否則傳回False

string.isspace()

如果string 中只包含空格,則傳回True,否則傳回False.

string.istitle()

如果string 是標題化的(見title())則傳回True,否則傳回False

string.isupper( )

如果string 中包含至少一個區分大小寫的字符,並且所有這些(區分大小寫的)字符都是大寫,則返回True,否則返回False

#string.join(seq)

#以string 作為分隔符,將seq 中所有的元素(的字串表示)合併為一個新的字串

string.ljust(width)

傳回一個原始字串左對齊,並使用空格填入長度width 的新字串

#string.lower()

轉換string 中所有大寫字元為小寫.

#string.lstrip()

#截掉string 左邊的空格

string.maketrans(intab, outtab])

max(str)

####傳回字串 ###str### 中最小的字母。 #####################string.partition(str)###############有點像find()和split( )的結合體,從str 出現的第一個位置起,把字串string 分成一個3 元素的元組(string_pre_str,str,string_post_str),如果string 中不包含str 則string_pre_str == string.###

string.replace(str1, str2,  num=string.count(str1))

把string 中的str1 替換成str2,如果num 指定,則替換不超過num 次.

#string.rfind(str, beg=0,end= len(string) )

類似find()函數,不過是從右邊開始尋找.

string .rindex( str, beg=0,end=len(string))

類似index(),不過是從右邊開始.

string.rjust(width)

返回一個原始字串右對齊,並使用空格填充至長度width 的新字串

#string.rpartition(str)

#類似partition()函數,不過是從右邊開始找出.

string.rstrip()

#刪除string 字串結尾的空格.

string.split(str="", num=string.count(str))

# #以str 為分隔符號切片string,如果num有指定值,則只分隔num 個子字串

#string.splitlines(num=string.count( '\n'))

依照行分隔,傳回包含各行為元素的列表,如果num 指定則僅切片num 個行.

string.startswith(obj, beg=0,end=len(string))

檢查字串是否以obj 開頭,是則傳回True,否則回傳False。如果beg 和end 指定值,則在指定範圍內檢查.

#string.strip([obj])

返回"標題化"的string,就是說所有單字都是以大寫開​​始,其餘字母均為小寫(見istitle())

string.translate(str, del="")

#根據str 給出的表(包含256 個字元)轉換​​string 的字元,

要過濾掉的字元放到del 參數中

string.upper()

轉換string 中的小寫字母為大寫

string.zfill(width)

##回傳長度為width 的字串,原始字串string 右對齊,前面填入0

#string.isdecimal()

isdecimal()方法檢查字串是否只包含十進位字元。這種方法只存在於unicode物件。

#函數
1cmp(list1, list2)
比較兩個清單的元素
2len(list)
清單元素個數
3#max(list)
傳回清單元素最大值
#4min(list)
傳回清單元素最小值
#5list(seq)
將元組轉換為列表

Python包含以下方法:

#方法1在列表末尾新增新的物件#2統計某個元素在列表中出現的次數3在列表結尾一次追加另一個序列中的多個值(用新列表擴展原來的列表)4從列表中找出某個值第一個匹配項的索引位置5將物件插入清單6移除清單中的一個元素(預設最後一個元素),並且傳回該元素的值7 移除清單中某個值的第一個匹配項#8反向清單中元素
##方法
1

list.append(obj)

list.count(obj)

list.extend(seq)

list.index(obj)

list.insert(index, obj)

list.pop(obj=list[-1])

list.remove(obj)

list.reverse ()
###9######list.sort([func])###對原始清單進行排序##### #######

python元祖的內建函數

#Python元組包含了以下內建函數

序號方法及描述
1#cmp(tuple1, tuple2)
比較兩個元組元素。
2len(tuple)
計算元組元素個數。
3max(tuple)
傳回元組中元素最大值。
4min(tuple)
傳回元組中元素最小值。
5tuple(seq)
將清單轉換為元組。

字典內建函數&方法

Python字典包含了以下內建函數:

##函數及描述1cmp(dict1, dict2)2len(dict)3str(dict)4type(variable)

Python字典包含了以下內建方法:

序號
比較兩個字典元素。
計算字典元素個數,即鍵的總數。
輸出字典可列印的字串表示。
傳回輸入的變數類型,如果變數是字典就回傳字典類型。
##1radiansdict.clear()#2radiansdict.copy()3radiansdict.fromkeys()4radiansdict.get(key, default=None)5radiansdict.has_key(key) 6radiansdict.items()7#radiansdict. keys()8radiansdict.setdefault(key, default=None)#9radiansdict.update(dict2)10radiansdict.values()

Python 日期和时间

thon 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。

Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。

时间间隔是以秒为单位的浮点小数。

每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。

Python 的 time 模块下有很多函数可以转换常见日期格式。如函数time.time()用于获取当前时间戳, 如下实例:


#!/usr/bin/python# -*- coding: UTF-8 -*-import time;  # 引入time模块ticks = time.time()print "当前时间戳为:", ticks
登入後複製

以上实例输出结果:

当前时间戳为: 1459994552.51
登入後複製

时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。


什么是时间元组?

很多Python函数用一个元组装起来的9组数字处理时间:

序號函數及描述
刪除字典內所有元素
傳回一個字典的淺複製
建立一個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值
傳回指定鍵的值,如果值不在字典中傳回default值
如果鍵在字典dict裡傳回true,否則回傳false
以列表傳回可遍歷的(鍵, 值) 元組數組
以列表傳回一個字典所有的鍵
和get()類似, 但如果鍵不存在於字典中,將會加鍵並將值設為default
把字典dict2的鍵/值對更新到dict裡
以列表傳回字典中的所有值
##2日1到3130到234分鐘0到59#51678

上述也就是struct_time元組。這種結構具有如下屬性:

序號欄位
#04位數年2008
11 到12
##0到61 (60或61 是閏秒)
一週的第幾天0到6 (0是星期一)
一年的第幾天1到366 (儒略曆)
夏令時-1, 0, 1, -1是決定是否為夏令時的旗幟
##tm_year20081tm_mon1 到12##23##0 到23#4tm_min0 到59#5tm_sec0 到61 ( 60或61 是閏秒)6tm_wday0到6 (0是星期一)#7tm_yday1 到366(儒略曆)8tm_isdst #-1, 0, 1, -1是決定是否為夏令時的旗幟#

获取当前时间

从返回浮点数的时间辍方式向时间元组转换,只要将浮点数传递给如localtime之类的函数。

#!/usr/bin/python# -*- coding: UTF-8 -*-import time

localtime = time.localtime(time.time())print "本地时间为 :", localtime
登入後複製

以上实例输出结果:

本地时间为 : time.struct_time(tm_year=2016, tm_mon=4, tm_mday=7, tm_hour=10, tm_min=3, tm_sec=27, tm_wday=3, tm_yday=98, tm_isdst=0)
登入後複製

获取格式化的时间

你可以根据需求选取各种格式,但是最简单的获取可读的时间模式的函数是asctime():

#!/usr/bin/python# -*- coding: UTF-8 -*-import time

localtime = time.asctime( time.localtime(time.time()) )print "本地时间为 :", localtime
登入後複製

以上实例输出结果:

本地时间为 : Thu Apr  7 10:05:21 2016
登入後複製

格式化日期

我们可以使用 time 模块的 strftime 方法来格式化日期,:

time.strftime(format[, t])
登入後複製
#!/usr/bin/python# -*- coding: UTF-8 -*-import time# 格式化成2016-03-20 11:45:39形式print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 格式化成Sat Mar 28 22:24:24 2016形式print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()) 
  # 将格式字符串转换为时间戳a = "Sat Mar 28 22:24:24 2016"print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
登入後複製

以上实例输出结果:

2016-04-07 10:25:09Thu Apr 07 10:25:09 20161459175064.0
登入後複製

python中时间日期格式化符号:

  • %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 当前时区的名称

  • %% %号本身


获取某月日历

Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历:

#!/usr/bin/python# -*- coding: UTF-8 -*-import calendar

cal = calendar.month(2016, 1)print "以下输出2016年1月份的日历:"print cal;
登入後複製

以上实例输出结果:

以下输出2016年1月份的日历:
    January 2016Mo Tu We Th Fr Sa Su
             1  2  3
 4  5  6  7  8  9 1011 12 13 14 15 16 1718 19 20 21 22 23 2425 26 27 28 29 30 31
登入後複製

Time 模块

Time 模块包含了以下内置函数,既有时间处理相的,也有转换时间格式的:

序號屬性
#0
#tm_mday1 到31
tm_hour
序號 函數及描述
#1 time.altzone
傳回格林威治西部的夏令時地區的偏移秒數。如果該地區在格林威治東部會返回負值(如西歐,包括英國)。對夏令時啟用地區才能使用。
2 time.asctime([tupletime])
接受時間元組並傳回一個可讀的形式為"Tue Dec 11 18:07: 14 2008"(2008年12月11日 週二18時07分14秒)的24個字元的字串。
3 time.clock( )
以浮點數計算的秒數傳回目前的CPU時間。用來衡量不同程式的耗時,比time.time()更有用。
4 time.ctime([secs])
作用相當於asctime(localtime(secs)),未給予參數相當於asctime()
5 time.gmtime([secs])
接收時間中退出(1970紀元後經過的浮點秒數)並返回格林威治天文時間下的時間元組t。註:t.tm_isdst始終為0
6 #time.localtime([secs])
接收時間輟學(1970紀元後經過的浮點秒數)並傳回當地時間下的時間元組t(t.tm_isdst可取0或1,取決於當地當時是不是夏令時)。
7 time.mktime(tupletime)
接受時間元組並返回時間中移(1970紀元後經過的浮點秒數)。
8 time.sleep(secs)
延遲呼叫執行緒的執行,secs指秒數。
9 time.strftime(fmt[,tupletime])
接收以時間元組,並傳回以可讀字串表示的當地時間,格式由fmt決定。
10 time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')
根據fmt的格式把一個時間字串解析為時間元組。
11 time.time( )
傳回目前時間的時間戳記(1970紀元後經過的浮點秒數)。
12 time.tzset()
根據環境變數TZ重新初始化時間相關設定。

Time模組包含了以下2個非常重要的屬性:

序號 屬性及描述
1 time.timezone
屬性time.timezone是當地時區(未啟動夏令時間)距離格林威治的偏移秒數(>0,美洲;<=0大部分歐洲,亞洲,非洲)。
2 time.tzname
#屬性time.tzname包含一對根據情況的不同而不同的字串,分別是有夏令時的本地時區名稱,不帶的。

日曆(Calendar)模組

此模組的函數都是日曆相關的,例如列印某月的字元月曆。

星期一是預設的每週第一天,星期日是預設的最後一天。更改設定需呼叫calendar.setfirstweekday()函數。模組包含了以下內建函數:

6calendar.monthcalendar(year,month)7calendar.monthrange(year,month)8calendar.prcal(year,w=2,l=1,c=6)9calendar.prmonth(year,month,w=2,l=1)
序號 函數及描述
#1 calendar.calendar(year, w=2,l=1,c=6)
傳回一個多行字串格式的year年年曆,3個月一行,間隔距離為c。 每日寬度間隔為w字元。每行長度為21* W+18+2* C。 l是每星期行數。
2 calendar.firstweekday( )
傳回目前每週起始日期的設定。預設情況下,首次載入caendar模組時回傳0,即星期一。
3 calendar.isleap(year)
是閏年回傳True,否則為false。
4 calendar.leapdays(y1,y2)
返回Y1,Y2兩年之間的閏年總數。
5 格式的year年month月日曆,兩行標題,一週一行。每日寬度間隔為w字元。每行的長度為7* w+6。 l是每星期的行數。
傳回一個整數的單層嵌套清單。每個子列表裝載代表一個星期的整數。 Year年month月外的日期都設為0;範圍內的日子都由該月第幾日表示,從1開始。
傳回兩個整數。第一個是該月的星期幾的日期碼,第二個是該月的日期碼。日從0(星期一)到6(星期日);月從1到12。
相當於print calendar .calendar(year,w,l,c).
相當於 print calendar.calendar(year,w,l,c)。
10 calendar.setfirstweekday(weekday)
設定每週的起始日期碼。 0(星期一)到6(星期日)。
11 calendar.timegm(tupletime)
和time.gmtime相反:接受一個時間元組形式,回傳該時刻的時間輟學(1970紀元後經過的浮點秒數)。
12 calendar.weekday(year,month,day)
傳回給定日期的日期碼。 0(星期一)到6(星期日)。月份為 1(一月) 到 12(12月)。

其他相關模組和函數

在Python中,其他處理日期和時間的模組還有:

  • datetime模組

  • pytz模組

  • #dateutil模組

############################################################################################################################################################################################### ############

以上是Python基本語法大全的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!