python簡單易學,可是往深了學仍是挺難的,關鍵是有些函數接口使用時總是記不住,如下這篇博客即便對python語言知識點的一個梳理也是對一些函數等知識的記錄。python
1.變量與簡單數據類型
(1)變量命名規則和使用
變量只能由字母、數字和下劃線組成,而且不能以字母開頭;不能將python內部的關鍵字和函數名來命名;推薦使用下劃線進行做爲單詞以前的鏈接符,例如:name_nums;儘可能不用小寫字母l和o;推薦使用小寫的變量名;c++
(2)字符串
使用單引號或者雙引號括起來的字符,例如:'hello world',與「hello world" 相同。app
幾個簡單有用的函數,.函數
>>> name="zhou li"ui
#title()函數,把全部單詞的首字母改成大寫
>>> print(name.title())
Zhou Li
>>> print(name.upper())
ZHOU LIspa
#lower()函數,把字符串的全部字母改成小寫
>>> print(name.lower())
zhou li排序
>>> lover="lover fruit"索引
#使用+號來拼接字符串接口
>>> name+lover
'zhou lilover fruit' ip
#使用\t或\n在字符串內隨意添加製表符和換行符
>>> print("\thellow\nworld")
hellow
world
>>> string=" name "
#rstrip()函數,刪除字符串開始的空白
>>> string.rstrip()
' name'
#lstrip()函數,刪除字符串末尾的空白
>>> string.lstrip()
'name '
#strip()函數,刪除字符串兩頭的空白
>>> string.strip()
'name'
(3)數字
數字類型包括整數浮點數,能夠直接進行加(+)、減(-)、乘(*)、除(/)、乘方(**)。
>>> 3+6
9
>>> 6-2
4
>>> 6*3
18
>>> 3/2
1.5
#不須要c++中對數字進行float轉換,獲得的結果就是浮點型數據(僅限python3,python2依然須要對在除運算以前對整數作浮點型處理
>>> 1/3
0.3333333333333333
>>> 2**3
8
#須要使用str()函數將整數轉化爲字符串才能作字符串的加減法
>>> str(23)+"zhouli"
'23zhouli'
2.列表
(1)什麼是列表
由一系列按照特定順序排列的元素(能夠是字母、數字、字符串、甚至能夠是列表等)組成,元素之間沒有任何關係。
>>> a=["zhouli",2,"43",['2',4],3.23]
#列表中放入任何元素都行
>>> a
['zhouli', 2, '43', ['2', 4], 3.23]
#使用[]取值,第一個元素從0開始
>>> a[0]
'zhouli'
#-1表示最後一個元素,一樣的-2表示倒數第二個元素
>>> a[-1]
3.23
#修改列表元素的值
>>> a[-1]=89
>>> a
['zhouli', 2, '43', ['2', 4], 89]
#append()函數,在列表的最後添加一個元素
(2)列表的元素修改
>>> a.append("new")
>>> a
['zhouli', 2, '43', ['2', 4], 89, 'new']
#insert()函數,在列表第一個添加一個元素
>>> a.insert(1,"第二個元素")
>>> a
['zhouli', '第二個元素', 2, '43', ['2', 4], 89, 'new']
#刪除列表的元素,不能使用
>>> del a[0]
>>> a
['第二個元素', 2, '43', ['2', 4], 89, 'new']
#pop()函數,與append()方法相對應,刪除列表的最後一個元素,能夠把參數進行賦值
>>> a.pop()
'new'
>>> a
['第二個元素', 2, '43', ['2', 4], 89]
>>> a=["zhouli",2,"43",['2',4],3.23]
>>> a
['zhouli', 2, '43', ['2', 4], 3.23]
#remove()函數,移除指定列表中的指定變量,若是相同的有多個,只移除第一個。
>>> a.remove(2)
>>> a
['zhouli', '43', ['2', 4], 3.23]
(3)列表的元素順序組織
>>> people=['alinda','liuli','zhouqinag','xuwen','shushan']
>>> people
['alinda', 'liuli', 'zhouqinag', 'xuwen', 'shushan']
#sort函數對列表元素進行排序,從低到高的順序,而且是永久性的改變列表。
>>> people.sort()
>>> people
['alinda', 'liuli', 'shushan', 'xuwen', 'zhouqinag']
>>> num=[1,2,4,90,3,6]
>>> num.sort()
>>> num
[1, 2, 3, 4, 6, 90]
#sort(reverse=True)函數,傳入reverse參數能夠對其進行反向排序
>>> people.sort(reverse=True)
>>> people
['zhouqinag', 'xuwen', 'shushan', 'liuli', 'alinda']
>>> num.sort(reverse=True)
>>> num
[90, 6, 4, 3, 2, 1]
#sorted()函數,對列表進行臨時排序,並不改變列表元素的順序
>>> sorted(num)
[1, 2, 3, 4, 6, 90]
>>> num
[90, 6, 4, 3, 2, 1]
>>> num
[1, 3, 2, 90, 6]
#reverse()函數,調換列表的順序
>>> num.reverse()
>>> num
[6, 90, 2, 3, 1]
#len()函數,肯定列表的長度
>>> len(num)
5
(4)列表的操做
>>> city
['xian', 'tianjin', 'shenzhen', 'dali', 'beijing']
#使用for循環,依次輸出列表的全部元素。
#python與c++最大的不一樣是python採用縮進的方式來獲得程序的組織結構。
>>> for i in city: print(i)
xian
tianjin
shenzhen
dali
beijing
#range(a,b,step)函數,獲得(a,b)範圍內每隔step長的全部整數,不包括b,沒有a的話,默認從0開始,沒有step的話默認爲1。
>>> for i in range(1,5):print(i)
1
2
3
4
#list()函數,把range生成的數據轉換爲列表。
>>> num=list(range(1,5))
>>> num
[1, 2, 3, 4]
>>> num=list(range(2,11,2))
>>> num
[2, 4, 6, 8, 10]
#min()函數、max()函數、sum()函數,這三個函數可以獲得列表的最小值、最大值、列表全部值的和。
>>> min(num)
2
>>> max(num)
10
>>> sum(num)
30
#列表解析,一行代碼能夠代替for循環或者if判斷的多行代碼,把列表開始的元素根據元素後面的要求自動進行。
>>> a=[i**2 for i in range(1,10)]
>>> a
[1, 4, 9, 16, 25, 36, 49, 64, 81]
#切片獲取,經過雙冒號索引獲得對應的元素,索引方式爲,start:end:step。其中start默認爲0,end默認爲-1,step默認爲1,不包括end。
>>> a=[i for i in range(10)]
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[2:5:2]
[2, 4]
>>> a[2:5]
[2, 3, 4]
>>> a[:]#得到全部的數據
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
#列表的等號賦值,並非建立了一個獨立的變量而是把變量給變量添加了一個新的名字。
>>> a=[2,3]
>>> b=a
>>> a.append(4)
>>> a
[2, 3, 4]
>>> b
[2, 3, 4]
#元組tuple,使用圓括號表示,與列表相似,惟一的區別是它的元素不能被修改,
>>> a=(1,2)
>>> a
(1, 2)
>>> a[0]=4
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
#enumerate()函數,能夠獲得列表值、以及值的序號。
>>> for id,value in enumerate(a):print(id,value)
0 2
1 3
3.字典
字典類型包括鍵和值,而且使用大括號表示,鍵值對的添加順序沒有關係,存儲的鍵值對的關聯關係。
#使用{}來建立空的字典,使用[]來進行索引值。
>>> a={}
>>> a['people']='xiaoming'
>>> a['num']=5
>>> a
{'people': 'xiaoming', 'num': 5}
#使用del命令來進行刪除字典中的鍵值對,被刪除的鍵值對永遠的消失了。
>>> del a['people']
>>> a
{'num': 5}
>>> a
{'num': 5, 'school': 'dongchag', 'age': 17, 'love': 'dog'}
#能夠使用items()函數,進行遍歷字典分別獲得鍵值對。
>>> for k,v in a.items(): print(k,v)
num 5
school dongchag
age 17
love dog
#keys()函數能夠得到字典的全部鍵,能夠使用鍵來得到值。
>>> for i in a.keys(): print(a[i])
5
dongchag
17
dog
#也能夠經過keys和values來得到
>>> a.keys()
dict_keys(['num', 'school', 'age', 'love'])
>>> list(a.keys())
['num', 'school', 'age', 'love']
>>> a.values()
dict_values([5, 'dongchag', 17, 'dog'])
>>> list(a.values())
[5, 'dongchag', 17, 'dog']
4.嵌套
能夠在字典中存儲列表還能夠在列表中存儲字典,進行嵌套使用。
#列表中嵌套字典的使用方式
>>> point1={'x':1,'y':2}
>>> point2={'x':6,'y':4}
>>> point3={'x':3,'y':1}
>>> points=[point1,point2,point3]
>>> points
[{'x': 1, 'y': 2}, {'x': 6, 'y': 4}, {'x': 3, 'y': 1}]
#字典中嵌套列表的使用方式
>>> a={}
>>> food1=['apple','banana']
>>> food2=['rice','grape']
>>> a['xiaoming']=food1
>>> a['xiaohong']=food2
>>> a
{'xiaoming': ['apple', 'banana'], 'xiaohong': ['rice', 'grape']}
#在字典中嵌套字典的使用方式
>>> points={}
>>> points['point1']=point1
>>> points['point2']=point2
>>> points['point3']=point3
>>> points
{'point1': {'x': 1, 'y': 2}, 'point2': {'x': 6, 'y': 4}, 'point3': {'x': 3, 'y': 1}}
5.函數的模塊導入
#函數命名注意事項:函數或者模塊的命名儘可能採用描述性的名,這樣方便本身和別人的理解,而且再其中使用小寫字母和下劃線表示。
#從module模塊中導入fun函數,可直接使用fun函數
from module import fun
#導入module模塊,使用模塊中的函數時須要使用module.fun的方式
import module
#導入module模塊而且命名爲md
import module as md
#導入module模塊中的全部函數
from module import *