python自動化測試筆記6-python基礎。遞歸函數、os模塊walk方法、匿名函數、map函數和filter函數、MD5加密、安裝python第三方模塊方法、連接mysql

python自動化測試筆記6-python基礎
越來越不想上了,作業做的我想吐血。
今天學習的內容
1遞歸函數
就是函數自己調用自己。示例如下:

count =0
def abc():
    global count
    print(count)
    count += 1
    if count>20:
        return
    abc()
abc()

2、os模塊中的walk方法:

import os
for q,w,a in os.walk('/Users/liuchang/Desktop/zuoye'):#循環打印,直到最後一層文件夾
     print(q)#打印目錄
     print(w)#打印當前目錄下文件夾
     print(a)#打印當前目錄下的文件。

3、匿名函數。

#冒號前面是入參,冒號後面是返回值
lambda num:(num+1).zfill(2)

4、map函數和filter函數

def abc(num):
    if num%2==0:
        return True
res=list(map(abc,range(1,11)))#map,多次循環輸入參數執行函數。分別得到返回結果
res2=list(filter(abc,range(1,11)))#filter.目的是過濾參數中的不符合條件的。
print(res)
print(res2)

5、哈希加密 翻譯爲散列。哈希加密是把任意長度的輸入(又叫做預映射pre-image)通過散列算法變換成固定長度的輸出,該輸出就是散列值。不可逆。常見的hash算法有MD5加密和SHA加密。一下是明天5的。

import hashlib
s='a123456'
m= hashlib.md5(s.encode())
print(m.hexdigest())
#md5加密過的,不能解密
def my_md5(s,salt=''):
    s=s+salt#salt是鹽
    new=str(s).encode()#需要將字符串編碼,編譯成二進制串
    m=hashlib.md5(new)#加密
    return m.hexdigest()#獲取十六進制輸出值

6、安裝python第三方模塊的三種方法

在命令行中執行語句
#pip install pymysql
# pip install /Users/liuchang/Desktop/PyMySQL-0.9.2-py2.py3-none-any.whl 下載下來的安裝包目錄,whl格式的安裝包
# python3 setup.py install#壓縮包格式的

7、python連接mysql

import pymysql
conn=pymysql.connect(host='118.24.3.40',user='jxz',password='123456',port=3306,db='jxz',charset='utf8')
cur =conn.cursor(pymysql.cursors.DictCursor)#建立遊標
sql='select * from app_myuser'
cur.execute(sql)
#print(cur.fetchall())
print(type(cur.fetchone()))
#sql2='insert into app_myuser (username,passwd,is_admin) values ("你是豬","123456",1)'
#cur.execute(sql2)#執行sql
#conn.commit()#提交sql。插入、更新、刪除操作需要執行。查詢不需要
cur.close()#關閉遊標
conn.close()#關閉連接


或者
import pymysql
MY_SQL_INFO  = {
    'host':'127.0.0.1',
    'port':3306,
    'password':"123456",
    'db':'mytest',
    'user':'root',
    'charset':'utf8',
    'autocommit':True
}
def my_db(sql):
    conn = pymysql.connect(**MY_SQL_INFO)#加兩個星號是啥意思?兩個星號表示接受字典。一個星號表示接受元組。定義函數的時候,參數可以這樣寫。這是引用變量也這樣?
    cur = conn.cursor(pymysql.cursors.DictCursor)
    cur.execute(sql)
    res = cur.fetchone()
    cur.close()
    conn.close()
    return res
sql='select * from sys_account'

res=my_db(sql)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章