Python學習推薦
1.python教程:
https://www.runoob.com/python/python-command-line-arguments.html
2.廖雪峰Python:
https://www.liaoxuefeng.com/wiki/1016959663602400
3.Python資料分析與挖掘實戰:
https://www.cnblogs.com/chen8023miss/p/11855536.html
Python基礎:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5SN4ADZ3YmNyEzNyEzN3EjMlF2YmhTM2kDZ3czMxcDO58CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
以下轉載:https://zhuanlan.zhihu.com/p/35997114
一、類型
1、Python是無類型的語言。
2、變量可以存儲4種基礎類型:數字、字元串、清單、元祖、字典、None。
3、清單、字典是引用指派的,數字、字元串是傳值指派的。
資料類型轉換函數:
二、順序語句
1、沒有行結束符号。
2、通過Tab字元識别語句段落。
3、通過【#】注釋語句。
三、運算符
1、字元串運算符:
通過【+】連結,
2、算數運算符
3、比較運算符
4、指派運算符
5、位運輸符
6、邏輯運算符
7、成員運算符
8、身份運算符
四、判斷語句
if 判斷條件1:
執行語句1……
elif 判斷條件2:
執行語句2……
elif 判斷條件3:
執行語句3……
else:
執行語句4……
五、循環語句
1、While循環
while 判斷條件:
執行語句……
2、For循環 2、For循環
for iterating_var in sequence:
statements(s)
for i in range(0,5):
pass
3、else循環
在 python 中,for … else 表示這樣的意思,for 中的語句和普通的沒有差別,else 中的語句會在循環正常執行完(即 for 不是通過 break 跳出而中斷的)的情況下執行,while … else 也是一樣。
4、其他關鍵字break、continue、pass、range(1, 50, 2)
六、清單、元祖、字典操作
1、清單
aa = [1,2,3,5]
aa = list(range(1,6))
aa[1] = 6
aa.append(7)
aa.insert(0,8)
del aa[0]
aa.pop()
aa.pop(1)
aa.remove(3)
2 in aa
for i in aa:
print(i)
for i in aa[:3] #切片周遊
print(i)
bb = aa[:] #複制清單
2、元祖
aa = (1,2)
aa[0] = 3
3、字典
aa = {'color' : 'red', 'point': 2}
aa['color'] = 'green'
del aa['point']
aa.get('color','black') #查找Key,沒有傳回'black'
aa.setdefault('age', 18) #設定新Key,預設值是18
'color' in aa.keys()
'red' in aa.values()
for key,value in aa.itmes():
print(key)
print(value)
for key in aa.keys():
print(key)
for value in aa.values():
print(value)
使用字典計算字元串中字元出現數量的統計
import pprint
message = 'It was a bright cold day in April, and the clocks were striking
thirteen.'
count = {}
for character in message:
count.setdefault(character, 0)
count[character] = count[character] + 1
pprint.pprint(count)
4、字元串
用 strip()、 rstrip()和 lstrip()删除空白字元
切片操作:[0:5] 取得從0到5的字元 ,[-1,2]取得-1到2的字元
三重引号,多行注釋的用法
print('''Dear Alice,
Eve's cat has been arrested for catnapping, cat burglary, and extortion.
Sincerely,
Bob''')
5、拷貝資料
import copy
spam = ['A', 'B', 'C', 'D']
cheese = copy.copy(spam)
copy.copy(), 可以用來複制清單或字典這樣的可變值
copy.deepcopy(),複制的清單中包含了清單
七、函數的使用
def fun_name(value):
print(value)
#帶預設值的參數
def fun_name1(value='dog'):
print(value)
fun_name('aaa') #函數調用
fun_name(value= 'aaa') #指定參數Key調用
funname(listname[:]) #建立清單副本,然後作為參數傳遞
#傳遞任意數量的實參,參數作為清單類型傳遞
def make_pizza(*topings):
print(topings)
make_pizza('aaaa')
make_pizza('aaaa','bbbb','cccc')
def make_pizza(size, *topings):
print(str(size))
for toping in topings:
print(toping)
make_pizza(16,'aaaa')
make_pizza(12, 'aaaa', 'bbbb')
#使用任意數量的關鍵字實參,參數作為字典類型傳遞
def buildprofile(**userinfo):
profile = {}
for key, value in userinfo.items():
profile[key] = value
#導入函數
import module_name #導入整個子產品
from modulename import function_name #導入特定函數
from pizza import make_pizza as mp #使用as 給函數起别名
from pizza import * 導入子產品所有函數
八、類的使用
#普通類
class Dog():
def _init_(self,name,age):
self.name = name
self.age = age
def sit(self):
print('sit')
my_dog = Dog('aaaa', 6)
print(my_dog.name)
my_dog.sit()
#繼承子類
class Huskie(Dog):
def _init_(self, name, age, zone):
#Python 3.5
super().__init__(name, age)
#Python 2.7
#super(Dog,self).__init___(name, age)
#導入類
from dog import Dog
import dog 導入整個子產品
九、異常處理
try:
return 42 / divideBy
except ZeroDivisionError:
print('Error: Invalid argument.')
十、yield的用法
yield是生成的意思,但是在python中則是作為生成器了解,生成器的用處主要可以疊代,這樣優化運算資料集,比如Range(10000),需要生成1000個資料集,但是用yield方式可以計算出下一個數值,就節省了空間。
當一個函數中含有yield時,它不再是一個普通的函數,而是一個疊代函數.當該函數被調用時不會自動執行,而是暫停,見第一個例子:
#encoding:UTF-8
def yield_test(n):
for i in range(n):
yield call(i)
print("i=",i)
#做一些其它的事情
print("do something.")
print("end.")
def call(i):
return i*2
#使用for循環
for i in yield_test(5):
print(i,",")
十一、參考官網文法與标準庫介紹
庫參考 https://yiyibooks.cn/xx/python_352/library/index.html
語言參考 https://yiyibooks.cn/xx/python_