1. 程式人生 > 資料庫 >使用pymysql查詢資料庫,把結果儲存為列表並獲取指定元素下標例項

使用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查詢資料庫,把結果儲存為列表並獲取指定元素下標例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。