本文是第一篇,機器學習_(python數據類型詳解)python
一、字符串
二、布爾類型
三、整數
四、浮點數
五、數字
六、列表
七、元組
八、字典
九、日期算法
a、使用單引號(’)
用單引號括起來表示字符串,例如:
str=‘this is string’;
print str;數組
b、使用雙引號(")
雙引號中的字符串與單引號中的字符串用法徹底相同,例如:
str=「this is string」;
print str;數據結構
c、使用三引號(’’’)
利用三引號,表示多行的字符串,能夠在三引號中自由的使用單引號和雙引號,例如:
str=’’‘this is string
this is pythod string
this is string’’’
print str;app
bool=False;
print bool;
bool=True;
print bool;機器學習
int=20;
print int;函數
float=2.3;
print float;學習
包括整數、浮點數。
5.一、刪除數字對象引用,例如:
a=1;
b=2;
c=3;
del a;
del b, c;
*#print a; 刪除a變量後,再調用a變量會報錯this
int(x [,base]) 將x轉換爲一個整數
float(x ) 將x轉換到一個浮點數
complex(real [,imag]) 建立一個複數
str(x) 將對象x轉換爲字符串
repr(x) 將對象x轉換爲表達式字符串
eval(str) 用來計算在字符串中的有效Python表達式,並返回一個對象
tuple(s) 將序列s轉換爲一個元組
list(s) 將序列s轉換爲一個列表
chr(x) 將一個整數轉換爲一個字符
unichr(x) 將一個整數轉換爲Unicode字符
ord(x) 將一個字符轉換爲它的整數值
hex(x) 將一個整數轉換爲一個十六進制字符串
oct(x) 將一個整數轉換爲一個八進制字符串spa
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
list=[‘physics’, ‘chemistry’, 1997, 2000];
nums=[1, 3, 5, 7, 8, 13, 20];
‘’‘nums[0]: 1’’’
print 「nums[0]:」, nums[0]
‘’‘nums[2:5]: [5, 7, 8] 從下標爲2的元素切割到下標爲5的元素,但不包含下標爲5的元素’’’
print 「nums[2:5]:」, nums[2:5]
‘’‘nums[1:]: [3, 5, 7, 8, 13, 20] 從下標爲1切割到最後一個元素’’’
print 「nums[1:]:」, nums[1:]
‘’‘nums[:-3]: [1, 3, 5, 7] 從最開始的元素一直切割到倒數第3個元素,但不包含倒數第三個元素’’’
print 「nums[:-3]:」, nums[:-3]
‘’‘nums[:]: [1, 3, 5, 7, 8, 13, 20] 返回全部元素’’’
print 「nums[:]:」, nums[:]
nums[0]=「ljq」;
print nums[0];
del nums[0];’’‘nums[:]: [3, 5, 7, 8, 13, 20]’’’
print 「nums[:]:」, nums[:];
列表對+和
號用於重複列表,例如:
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] #Truefor x in [1, 2, 3]: print x, #1 2 3
6.六、列表截取
L=[‘spam’, ‘Spam’, ‘SPAM!’];
print L[2]; #‘SPAM!’
print L[-2]; #‘Spam’
print L[1:]; #[‘Spam’, ‘SPAM!’]
list.append(obj) 在列表末尾添加新的對象
list.count(obj) 統計某個元素在列表中出現的次數
list.extend(seq) 在列表末尾一次性追加另外一個序列中的多個值(用新列表擴展原來的列表)
list.index(obj) 從列表中找出某個值第一個匹配項的索引位置,索引從0開始
list.insert(index, obj) 將對象插入列表
list.pop(obj=list[-1]) 移除列表中的一個元素(默認最後一個元素),而且返回該元素的值
list.remove(obj) 移除列表中某個值的第一個匹配項
list.reverse() 反向列表中元素,倒轉
list.sort([func]) 對原列表進行排序
Python的元組與列表相似,不一樣之處在於元組的元素不能修改;元組使用小括號(),列表使用方括號[];元組建立很簡單,只須要在括號中添加元素,並使用逗號(,)隔開便可,例如:
tup1 = (‘physics’, ‘chemistry’, 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = 「a」, 「b」, 「c」, 「d」;
建立空元組,例如:tup = ();
元組中只有一個元素時,須要在元素後面添加逗號,例如:tup1 = (50,);
元組與字符串相似,下標索引從0開始,能夠進行截取,組合等。
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]
元組中的元素值是不容許修改的,但咱們能夠對元組進行鏈接組合,例如:
tup1 = (12, 34.56);
tup2= (‘abc’, ‘xyz’);
如下修改元組元素操做是非法的。
tup1[0] = 100;
建立一個新的元組
tup3 = tup1 + tup2;
print tup3; #(12, 34.56, ‘abc’, ‘xyz’)
元組中的元素值是不容許刪除的,可使用del語句來刪除整個元組,例如:
tup = (‘physics’, ‘chemistry’, 1997, 2000);
print tup;
del tup;
與字符串同樣,元組之間可使用+號和*號進行運算。這就意味着他們能夠組合和複製,運算後會生成一個新的元組。
L = (‘spam’, ‘Spam’, ‘SPAM!’);
print L[2]; #‘SPAM!’
print L[-2]; #‘Spam’
print L[1:]; #[‘Spam’, ‘SPAM!’]
cmp(tuple1, tuple2) 比較兩個元組元素。
len(tuple) 計算元組元素個數。
max(tuple) 返回元組中元素最大值。
min(tuple) 返回元組中元素最小值。
(seq) 將列表轉換爲元組。
字典(dictionary)是除列表以外python中最靈活的內置數據結構類型。列表是有序的對象結合,字典是無序的對象集合。二者之間的區別在於:字典當中的元素是經過鍵來存取的,而不是經過偏移存取。
字典由鍵和對應的值組成。字典也被稱做關聯數組或哈希表。基本語法以下:
dict = {‘Alice’: ‘2341’, ‘Beth’: ‘9102’, ‘Cecil’: ‘3258’};
也可如此建立字典:
dict1 = { ‘abc’: 456 };
dict2 = { ‘abc’: 123, 98.6: 37 };
每一個鍵與值必須用冒號隔開(😃,每對用逗號分割,總體放在花括號中({})。鍵必須獨一無二,但值則沒必要;值能夠取任何數據類型。
dict = {‘name’: ‘Zara’, ‘age’: 7, ‘class’: ‘First’};
print "dict[‘name’]: ", dict[‘name’];
print "dict[‘age’]: ", dict[‘age’];
向字典添加新內容的方法是增長新的鍵/值對,修改或刪除已有鍵/值對以下實例:
!/usr/bin/python
dict = {‘name’: ‘Zara’, ‘age’: 7, ‘class’: ‘First’};
dict[「age」]=27; #修改已有鍵的值
dict[「school」]=「wutong」; #增長新的鍵/值對
print "dict[‘age’]: ", dict[‘age’];
print "dict[‘school’]: ", dict[‘school’];
del dict[‘name’]; # 刪除鍵是’name’的條目
dict.clear(); # 清空詞典全部條目
del dict ; # 刪除詞典
例如:
!/usr/bin/python
dict = {‘name’: ‘Zara’, ‘age’: 7, ‘class’: ‘First’};
del dict[‘name’];
dict {‘age’: 7, ‘class’: ‘First’}
print 「dict」, dict;
注意:字典不存在,del會引起一個異常
cmp(dict1, dict2) 比較兩個字典元素。
len(dict) 計算字典元素個數,即鍵的總數。
str(dict) 輸出字典可打印的字符串表示。
type(variable) 返回輸入的變量類型,若是變量是字典就返回字典類型。
radiansdict.clear() 刪除字典內全部元素
radiansdict.copy() 返回一個字典的淺複製
radiansdict.fromkeys() 建立一個新字典,以序列seq中元素作字典的鍵,val爲字典全部鍵對應的初始值
radiansdict.get(key, None) 返回指定鍵的值,若是值不在字典中返回default值
radiansdict.has_key(key) 若是鍵在字典dict裏返回true,不然返回false
radiansdict.items() 以列表返回可遍歷的(鍵, 值) 元組數組
radiansdict.keys() 以列表返回一個字典全部的鍵
radiansdict.setdefault(key, default=None) 和get()相似, 但若是鍵不已經存在於字典中,將會添加鍵並將值設爲default
radiansdict.update(dict2) 把字典dict2的鍵/值對更新到dict裏
radiansdict.values() 以列表返回字典中的全部值
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
說明: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)屬於struct_time元組,struct_time元組具備以下屬性:
能夠根據需求選取各類格式,可是最簡單的獲取可讀的時間模式的函數是asctime():
首選: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]
expire_time = 「2013-05-21 09:50:35」
d = datetime.datetime.strptime(expire_time,"%Y-%m-%d %H:%M:%S")
print d;
oneday = datetime.timedelta(days=1)
今天,2014-03-21
today = datetime.date.today()
昨天,2014-03-20
yesterday = datetime.date.today() - oneday
明天,2014-03-22
tomorrow = datetime.date.today() + oneday
獲取今天零點的時間,2014-03-21 00:00:00
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小時
1 day, 0:00:00
print datetime.timedelta(days=1), #1天
7 days, 0:00:00
print datetime.timedelta(weeks=1)
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
注意時間是浮點數,帶毫秒。
那麼要獲取當前時間,須要格式化一下:
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’)
last_month_last_day = datetime.date(datetime.date.today().year,datetime.date.today().month,1)-datetime.timedelta(1)
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_float
d = datetime.date.today()
time_sec_float = time.mktime(d.timetuple())
print time_sec_float
time_sec = time.time()
print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time_sec))
更多機器學習免費學習資源、視頻等可勾搭weixin:BT474849 獲取。加入咱們一塊兒學習機器學習哦~