您好,登錄后才能下訂單哦!
這篇文章主要講解了使用pymysql查詢數據庫,把結果保存為列表并獲取指定元素下標的方法,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
我就廢話不多說了,大家還是直接看代碼吧!
from pymysql import * from qmp.config import * def main(): conn = connect(host=HOST, port=3306, database=DATABASE, user=USER, password=PASSWORD, charset='utf8') cs1 = conn.cursor() sql1 = 'SELECT deal_name from ods_project_crawler_seed WHERE round = "-" order by id' cs1.execute(sql1) pnlist = [] alldata = cs1.fetchall() for singl_company in alldata: pnlist.append(singl_company[0]) print('列表總長度: ', len(pnlist)) cs1.close() conn.close() print('伯肯森自動化在列表中的下標為: ', pnlist.index('伯肯森自動化')) if __name__ == '__main__': main()
運行結果
列表總長度: 271270
伯肯森自動化在列表中的下標為: 1934
補充知識:python讀取sql里面的指定數據列,并將其轉換成列表使用
代碼如下:
import pyodbc import pandas as pd import numpy as np conn = pyodbc.connect(r'DRIVER={SQL Server Native Client 10.0};SERVER=.;DATABASE=數據庫名字;UID=用戶名;PWD=密碼') cur = conn.cursor() sqlcom = 'select 要讀取的列名 from 表名' df = pd.read_sql(sqlcom, con=conn) print(df) print(type(df)) #<class'pandas.core.frame.DataFrame'> df1 = np.array(df) #先使用array()將DataFrame轉換一下 df2 = df1.tolist()#再將轉換后的數據用tolist()轉成列表 # 轉成列表的數據是這樣的[[123],['213'],['sa']],使用的時候稍注意一下 print(df2) for i in range(0, len(df2)): exist_url = df2[i][0] ​​​​​​​ print(exist_url)
使用了pandas和numpy兩個庫,用pandas來讀取數據庫里面的內容,再結合使用numpy庫將DataFrame數據轉換成列表(注意:這里讀取的數據是一列數據)
2、讀取多列數據時:代碼是一樣的,區別在于tolist()后的內容,假設讀取兩列
id | name |
1 | 張三 |
2 | 李四 |
df2 = df1.tolist()得到的內容是:[['1','張三'], ['2','李四']]。然后再根據自己的需求讀取指定內容就可以了。
看完上述內容,是不是對使用pymysql查詢數據庫,把結果保存為列表并獲取指定元素下標的方法有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。