目錄
1. 類(lèi)型匯總
2.數(shù)據(jù)類(lèi)型轉(zhuǎn)換
3.列表
4.元組
5.日期和時(shí)間
6.字典
-
一捏膨、 類(lèi)型匯總
-
1.字符串
str1 = '字符串 '
str2 = "字符串"
這2種用法完全相同str3 = '''多行的字符串 '''
經(jīng)常用于方法咨油、類(lèi)的說(shuō)明中-
2.布爾類(lèi)型
bool=False print bool bool=True print bool
-
3.整數(shù)
int=20 print int;
-
4.浮點(diǎn)數(shù)
float=2.3 print float;
-
二茂装、 數(shù)據(jù)類(lèi)型轉(zhuǎn)換
-
1.數(shù)字
包括整數(shù)脑豹、浮點(diǎn)數(shù)
- 1.1 刪除數(shù)字對(duì)象引用掏秩,例如:
a=1
b=2
c=3
del a
del b, c
#print a; #刪除a變量后丛晌,再調(diào)用a變量會(huì)報(bào)錯(cuò)
- 1.1 刪除數(shù)字對(duì)象引用掏秩,例如:
1.2 數(shù)據(jù)類(lèi)型轉(zhuǎn)換
函數(shù) | 描述 |
---|---|
int(x [,base]) | 將x轉(zhuǎn)換為一個(gè)整數(shù) |
long(x [,base] ) | 將x轉(zhuǎn)換為一個(gè)長(zhǎng)整數(shù) |
float(x) | 將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù) |
complex(real [,imag]) | 創(chuàng)建一個(gè)復(fù)數(shù) |
str(x) | 將對(duì)象 x 轉(zhuǎn)換為字符串 |
repr(x) | 將對(duì)象 x 轉(zhuǎn)換為表達(dá)式字符串 |
eval(str) | 用來(lái)計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對(duì)象 |
tuple(s) | 將序列 s 轉(zhuǎn)換為一個(gè)元組 |
list(s) | 將序列 s 轉(zhuǎn)換為一個(gè)列表 |
set(s) | 轉(zhuǎn)換為可變集合 |
dict(d) | 創(chuàng)建一個(gè)字典镜廉。d 必須是一個(gè)序列 (key,value)元組。 |
frozenset(s) | 轉(zhuǎn)換為不可變集合 |
chr(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符 |
unichr(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為Unicode字符 |
ord(x) | 將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值 |
hex(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串 |
oct(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串 |
- 1.3 數(shù)學(xué)函數(shù)
函數(shù) | 返回值 ( 描述 ) |
---|---|
abs(x) | 返回?cái)?shù)字的絕對(duì)值寓涨,如abs(-10) 返回 10 |
ceil(x) | 返回?cái)?shù)字的上入整數(shù)盯串,如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) | 返回?cái)?shù)字的絕對(duì)值,如math.fabs(-10) 返回10.0 |
floor(x) | 返回?cái)?shù)字的下舍整數(shù)戒良,如math.floor(4.9)返回 4 |
log(x) | 如math.log(math.e)返回1.0,math.log(100,10)返回2.0 |
log10(x) | 返回以10為基數(shù)的x的對(duì)數(shù)体捏,如math.log10(100)返回 2.0 |
max(x1, x2,...) | 返回給定參數(shù)的最大值,參數(shù)可以為序列糯崎。 |
min(x1, x2,...) | 返回給定參數(shù)的最小值几缭,參數(shù)可以為序列。 |
modf(x) | 返回x的整數(shù)部分與小數(shù)部分沃呢,兩部分的數(shù)值符號(hào)與x相同年栓,整數(shù)部分以浮點(diǎn)型表示。 |
pow(x, y) | x**y 運(yùn)算后的值薄霜。 |
round(x [,n]) | 返回浮點(diǎn)數(shù)x的四舍五入值某抓,如給出n值,則代表舍入到小數(shù)點(diǎn)后的位數(shù)惰瓜。 |
sqrt(x) | 返回?cái)?shù)字x的平方根否副,數(shù)字可以為負(fù)數(shù),返回類(lèi)型為實(shí)數(shù)崎坊,如math.sqrt(4)返回 2+0j |
- 1.4 隨機(jī)函數(shù)
函數(shù) | 描述 |
---|---|
choice(seq) | 從序列的元素中隨機(jī)挑選一個(gè)元素备禀,比如random.choice(range(10)),從0到9中隨機(jī)挑選一個(gè)整數(shù)奈揍。 |
randrange ([start,] stop [,step]) | 從指定范圍內(nèi)曲尸,按指定基數(shù)遞增的集合中獲取一個(gè)隨機(jī)數(shù),基數(shù)缺省值為1 |
random() | 隨機(jī)生成下一個(gè)實(shí)數(shù)男翰,它在[0,1)范圍內(nèi)另患。 |
seed([x]) | 改變隨機(jī)數(shù)生成器的種子seed。如果你不了解其原理奏篙,你不必特別去設(shè)定seed柴淘,Python會(huì)幫你選擇seed。 |
shuffle(lst) | 將序列的所有元素隨機(jī)排序 |
uniform(x, y) | 隨機(jī)生成下一個(gè)實(shí)數(shù)秘通,它在[x,y]范圍內(nèi)为严。 |
-
三、列表
- 1.列表切片
list[2:5] - 2.更新列表
nums[0]="ljq" - 3.刪除列表元素
del nums[0] - 4.列表腳本操作符列表對(duì)+和??的操作符與字符串相似肺稀。+號(hào)用于組合列表第股,***號(hào)用于重復(fù)列表,例如
print len([1, 2, 3])
#3
print [1, 2, 3] + [4, 5, 6]
#[1, 2, 3, 4, 5, 6]
print ['Hi!'] * 4
#['Hi!', 'Hi!', 'Hi!', 'Hi!']
print 3 in [1, 2, 3]
#True
for x in [1, 2, 3]
print x, #1 2 3 - 5.列表截取
L=['spam', 'Spam', 'SPAM!']
print L[2]
#'SPAM!'
print L[-2]
#'Spam'print
L[1:]
#['Spam', 'SPAM!'] - 6.列表函數(shù)&方法
函數(shù)名 | 說(shuō)明 |
---|---|
list.append(obj) | 在列表末尾添加新的對(duì)象 |
list.count(obj) | 統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù) |
list.extend(seq) | 在列表末尾一次性追加另一個(gè)序列中的多個(gè)值(用新列表擴(kuò)展原來(lái)的列表) |
list.index(obj) | 從列表中找出某個(gè)值第一個(gè)匹配項(xiàng)的索引位置话原,索引從0開(kāi)始 |
list.insert(index, obj) | 將對(duì)象插入列表 |
list.pop(obj=list[-1]) | 移除列表中的一個(gè)元素(默認(rèn)最后一個(gè)元素)夕吻,并且返回該元素的值 |
list.remove(obj) | 移除列表中某個(gè)值的第一個(gè)匹配項(xiàng) |
list.reverse() | 反向列表中元素,倒轉(zhuǎn) |
list.sort([func]) | 對(duì)原列表進(jìn)行排序 |
-
四繁仁、元組(tuple)
-
1.Python的元組與列表類(lèi)似涉馅,不同之處在于
- 元組的元素不能修改;
元組使用小括號(hào)()黄虱,列表使用方括號(hào)[]稚矿;
元組創(chuàng)建很簡(jiǎn)單,只需要在括號(hào)中添加元素捻浦,并使用逗號(hào)(,)隔開(kāi)即可晤揣,例如:
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 );tup3 = "a", "b", "c", "d";創(chuàng)建空元組,例如:tup = ();
元組中只有一個(gè)元素時(shí)朱灿,需要在元素后面添加逗號(hào)昧识,例如:tup1 = (50,);
元組與字符串類(lèi)似,下標(biāo)索引從0開(kāi)始盗扒,可以進(jìn)行截取跪楞,組合等。
-
1.1环疼、訪(fǎng)問(wèn)元組
tup1 = ('physics', 'chemistry', 1997, 2000)tup1[0]: physics
print "tup1[0]: ", tup1[0] #tup1[1:5]: ('chemistry', 1997) print "tup1[1:5]: ", tup1[1:3]
1.2习霹、修改元組元組中的元素值是不允許修改的,但我們可以對(duì)元組進(jìn)行連接組合炫隶,例如:
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz');
# 以下修改元組元素操作是非法的淋叶。# tup1[0] = 100;
# 創(chuàng)建一個(gè)新的元組
tup3 = tup1 + tup2
print tup3; #(12, 34.56, 'abc', 'xyz')1.3、刪除元組元組中的元素值是不允許刪除的伪阶,可以使用del語(yǔ)句來(lái)刪除整個(gè)元組煞檩,例如:
tup = ('physics', 'chemistry', 1997, 2000)
print tup
del tup-
1.4、元組運(yùn)算符與字符串一樣栅贴,元組之間可以使用+號(hào)和*號(hào)進(jìn)行運(yùn)算斟湃。這就意味著他們可以組合和復(fù)制,運(yùn)算后會(huì)生成一個(gè)新的元組檐薯。
1.5凝赛、元組索引&截取
L = ('spam', 'Spam', 'SPAM!')
print L[2]
#'SPAM!'print L[-2]; #'Spam'
print L[1:]
#['Spam', 'SPAM!']1.6注暗、元組內(nèi)置函數(shù)
函數(shù)名 | 說(shuō)明 |
---|---|
cmp(tuple1, tuple2) | 比較兩個(gè)元組元素。 |
len(tuple) | 計(jì)算元組元素個(gè)數(shù)墓猎。 |
max(tuple) | 返回元組中元素最大值捆昏。 |
min(tuple) | 返回元組中元素最小值。tuple(seq) 將列表轉(zhuǎn)換為元組毙沾。 |
-
五骗卜、日期和時(shí)間
-
1、獲取當(dāng)前時(shí)間左胞,例如:
import time, datetime; localtime = time.localtime(time.time()) #Local current time : time.struct_time(tm_year=2014, tm_mon=3, tm_mday=21, tm_hour=15, tm_min=13, tm_sec=56, tm_wday=4, tm_yday=80, tm_isdst=0) print "Local current time :", localtime
1.1、獲取格式化的時(shí)間可以根據(jù)需求選取各種格式烤宙,但是最簡(jiǎn)單的獲取可讀的時(shí)間模式的函數(shù)是asctime():
1遍烦、日期轉(zhuǎn)換為字符串
首選:
print time.strftime('%Y-%m-%d %H:%M:%S')
其次:
print datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
最后:
print str(datetime.datetime.now())[:19]2、字符串轉(zhuǎn)換為日期
expire_time = "2013-05-21 09:50:35"
d = datetime.datetime.strptime(expire_time,"%Y-%m-%d %H:%M:%S")
print d;1.2躺枕、獲取日期差
oneday = datetime.timedelta(days=1)
#今天
today = datetime.date.today()
#昨天
yesterday = datetime.date.today() - oneday
#明天
tomorrow = datetime.date.today() + oneday
#獲取今天零點(diǎn)的時(shí)間
today_zero_time = datetime.datetime.strftime(today, '%Y-%m-%d %H:%M:%S')
#0:00:00.001000
print datetime.timedelta(milliseconds=1)#1毫秒
#0:00:01
print datetime.timedelta(seconds=1)#1秒
#0:01:00 print datetime.timedelta(minutes=1) #1分鐘
#1:00:00
print datetime.timedelta(hours=1)#1小時(shí)
#1 day, 0:00:00
print datetime.timedelta(days=1)#1天
#7 days, 0:00:00
print datetime.timedelta(weeks=1)1.3乳愉、獲取時(shí)間差
#1 day, 0:00:00
oneday = datetime.timedelta(days=1)
#今天,2014-03-21 16:07:23.943000
today_time = datetime.datetime.now ()
#昨天屯远,2014-03-20 16:07:23.943000
yesterday_time = datetime.datetime.now() - oneday
#明天蔓姚,2014-03-22 16:07:23.943000
tomorrow_time = datetime.datetime.now() + oneday
注意時(shí)間是浮點(diǎn)數(shù),帶毫秒慨丐。那么要獲取當(dāng)前時(shí)間坡脐,需要格式化一下:
print datetime.datetime.strftime(today_time, '%Y-%m-%d %H:%M:%S')
print datetime.datetime.strftime(yesterday_time, '%Y-%m-%d %H:%M:%S')
print datetime.datetime.strftime(tomorrow_time, '%Y-%m-%d %H:%M:%S')1.4、獲取上個(gè)月最后一天
last_month_last_day = datetime.date(datetime.date.today().year,datetime.date.today().month,1)-datetime.timedelta(1)1.5房揭、字符串日期格式化為秒數(shù)备闲,返回浮點(diǎn)類(lèi)型:
expire_time = "2013-05-21 09:50:35"
d = datetime.datetime.strptime(expire_time,"%Y-%m-%d %H:%M:%S")
time_sec_float = time.mktime(d.timetuple())
print time_sec_float1.6、日期格式化為秒數(shù)捅暴,返回浮點(diǎn)類(lèi)型:
d = datetime.date.today()
time_sec_float = time.mktime(d.timetuple())
print time_sec_float1.7恬砂、秒數(shù)轉(zhuǎn)字符串
time_sec = time.time()
print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time_sec))