Day6 python之遞迴、 內建函式等(4)
阿新 • • 發佈:2018-12-15
一、操作mysql
連線資料庫
import pymysql conn = pymysql.connect(host='118.24.3.40',user='jxz', password='123456',port=3306, db='jxz',charset='utf8',autocommit=True)
建立遊標
cur = conn.cursor(pymysql.cursors.DictCursor) #建立遊標
查詢語句
# sql='select * from app_myuser;'
插入資料後要提交奧妮
# sql='insert into app_myuser (username,passwd,is_admin) values ("nhy123","456789",1);'
conn.commit()
執行sql,並不會返回資料
cur.execute(sql)
獲取到所有返回的資料
print(cur.fetchall())
只取一條資料
print(cur.fetchone())
二、遞迴
遞迴就是函式自己呼叫自己
count = 0 def abc(): pass abc()
三、內建函式
sorted
map
filter
max
sum
round
chr
ord
dir
bool
eval
exec
zip
檢視某個物件裡面有哪些方法
import random print(dir(random))
# print(bool(None)) #轉布林型別的 True False
# print(bool('')) #轉布林型別的 True False
# print(bool([])) #轉布林型別的 True False
# print(bool({})) #轉布林型別的 True False
# print(bool(())) #轉布林型別的 True False
# print(bool(0)) #轉布林型別的 True False
# print(bool(123)) #轉布林型別的 True False
# print(bool([1,3,4])) #轉布林型別的 True False
# print(bool([1.5])) #轉布林型別的 True False
zip:能把多個list揉到一起,把兩個list變成一個二維陣列
# a=1,2,3 # b=['a','b','c'] # name = ['nhy','lyl','qml'] # money=[50,100,1000] # for n,m in zip(name,money): #zip:能把多個list揉到一起,把兩個list變成一個二維陣列 # print('%s==>%s'%(n,m))
map:幫你迴圈呼叫函式的,儲存返回值
filter:幫你迴圈呼叫函式的,如果函式返回fasle,就過濾掉,就過濾掉這個值,是指從你傳入的這個list裡面過慮
def intToStr(num): # return str(num).zfill(2) # l=range(1,34) # map(intToStr,l) # res = map(intToStr,l) #map:自動迴圈呼叫函式,然後儲存返回值 # print(list(res)) #不轉list看不到結果
res = list(map(abc,range(1,11))) res2 = list(filter(abc,range(1,11))) # filter #幫你迴圈呼叫函式的,如果函式返回fasle,就過濾掉,就過濾掉這個值 print(res) print(res2)
lambda:匿名函式,功能很簡單的一個函式,用完一次就拉倒
排序
s='3456128' print(sorted({"k1":"v1","k2":"v2"},reverse=True)
反轉
print(list(reversed(s)))
四、加密
md5加密:不可逆,沒法解密
import hashlib s='123456' m=hashlib.md5(s.encode()) #md5 是不可逆的,就是沒辦法解密的 print(m.hexdigest())
def my_md5(s):
news = str(s).encode()
m=hashlib.md5(news)
return m.hexdigest()
加鹽 salt
def my_md5(s,salt=''): #salt:自己又加字串,更安全 news = str(s).encode() s=s+salt m=hashlib.md5(news) return m.hexdigest() m=hashlib.sha3_224 #加密的更長,更安全
默默加油,堅持,不要放棄,學得慢就慢慢學.