目錄
字典內建函數&方法
日期和时间" >Python 日期和时间
什么是时间元组?
获取当前时间
获取格式化的时间
格式化日期
获取某月日历
Time 模块
日曆(Calendar)模組
其他相關模組和函數
首頁 後端開發 Python教學 Python基本語法大全

Python基本語法大全

Aug 02, 2017 am 10:19 AM
python 基本 大全

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中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1323
25
PHP教程
1272
29
C# 教程
1251
24
PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

sublime怎麼運行代碼python sublime怎麼運行代碼python Apr 16, 2025 am 08:48 AM

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Golang vs. Python:性能和可伸縮性 Golang vs. Python:性能和可伸縮性 Apr 19, 2025 am 12:18 AM

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

vscode在哪寫代碼 vscode在哪寫代碼 Apr 15, 2025 pm 09:54 PM

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

notepad 怎麼運行python notepad 怎麼運行python Apr 16, 2025 pm 07:33 PM

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。

See all articles