python常用模組

2022-05-07 03:51:14 字數 3017 閱讀 8047

1、mysqldb,cx_oracle,ibm_db,sqlite3

2、requests,urllib3,hashlib

3、xlrd,xlwt,openpyxl,csv,xml

4、json,yaml

5、os,sys

6、time,datetime

7、re,beautifulsoup,scrapy

8、selenium,unittest,htmltestrunner,ddt

9、pillow

一、資料庫

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

mysql:mysqldb eg:import mysqldb,python2用此模組

pymysql eg:import pymysql,python3用此模組

連線資料庫:

conn = mysqldb.connect(host='10.180.29.100', port=3306, user='mob', passwd='mob123', db='mob', charset='utf8')

conn = pymysql.connect(host='10.180.29.100', port=3306, user='mob', password='mob123', db='mob', charset='utf8mb4')

建立游標:

cur = conn.cursor()

通過游標cur 操作execute()方法可以寫入純sql語句:

cur.execute("insert into student values('2','tom','3 year 2 class','9')")

另一種寫法:

#插入一條資料

sqli="insert into student values(%s,%s,%s,%s)"

cur.execute(sqli,('3','huhu','2 year 1 class','7'))

#一次插入多條記錄

#executemany()方法可以一次插入多條值,執行單挑sql語句,但是重複執行引數列表裡的引數,返回值為受影響的行數。

sqli="insert into student values(%s,%s,%s,%s)"

cur.executemany(sqli,[

('3','tom','1 year 1 class','6'),

('3','jack','2 year 1 class','7'),

('3','yaheng','2 year 2 class','7'),

])#查詢記錄

#cur.fetchone()、cur.scroll()、cur.fetchmany()、cur.fetchall()

fetchone()方法獲得表中一條資料,每執行一次,游標會從表中的第一條資料移動到下一條資料的位置,再次執行的時候得到的第二條資料,以此類推…

scroll()方法可以移動游標,eg:scroll(0,'absolute') 方法可以將游標定位到表中的第一條資料。

fetchmany(size=n) #可以加引數n,接收返回的n行資料,fetchall接收返回的所有資料

關閉游標:

cur.close()

commit方法:

conn.commit()

關閉資料庫連線:

conn.close()

oracle:cx_oracle eg:import cx_oracle

連線資料庫:

#3個引數分開寫

conn = cx_oracle.connect('test', 'test', '10.180.29.23:1521/orcl')

#3個引數連起來寫

conn = cx_oracle.connect('test/[email protected]:1521/orcl')

建立游標:

cur = conn.cursor()

通過游標cur 操作execute()方法可以寫入純sql語句:

cur.execute("insert into student values('2','tom','3 year 2 class','9')")

#cur.fetchone()、cur.fetchall()

fetchall接收返回的所有資料,fetchone()方法獲得表中一條資料。

db2:ibm_db eg: import ibm_db_dbi

連線資料庫

conn = ibm_db_dbi.connect('port = 50000;protocol = tcpip;', host='10.180.22.17',database='testdb', user='test', password='test@2018')

conn = ibm_db_dbi.connect(「port=50000;protocol=tcpip;」, host=db[「host」], database=db[「database」], user=db[「user」],password=db[「passwd」])

設定自動提交

conn.set_autocommit(true)

建立游標:

cur = conn.cursor()

剩下基本和mysql、oracle一樣

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

sqlite3 eg:import sqlite3

連線資料庫

#資料庫檔案是test.db,如果檔案不存在,會自動在當前目錄建立:

conn = sqlite3.connect('test.db')

建立游標:

cur = conn.cursor()

剩下基本和mysql、oracle一樣

python 常用模組

1.告訴直譯器 找模組 import sysunix要絕度路徑 只有第一次匯入執行。name main 2.當做包,必須包含乙個命名為 init py的檔案 模組 3.dir看模組裡有什麼 下劃線開始,不是給模組外部用的。過濾 import copy n for n in dir copy if n...

python常用模組

logging 日誌是我們排查問題的關鍵利器,寫好日誌記錄,當我們發生問題時,可以快速定位 範圍進行修改 logging將日誌列印到螢幕,日誌級別大小關係為 critical error warning info debug notset,當然也可以自己定義日誌級別 預設logging預設的日誌級別...

python常用模組

collections提供了幾個便於使用的資料型別。1 namedtuple 這個資料型別生成可以使用呼叫屬性的方法來訪問元素內容的元祖 import collections cc collections.namedtuple sha x y get cc 1,2 print get.x,get.y...