91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于python實現在excel中讀取與生成隨機數寫入excel中

發布時間:2020-09-21 19:41:47 來源:腳本之家 閱讀:424 作者:jie_chen 欄目:開發技術

具體要求是:在一份已知的excel表格中讀取學生的學號與姓名,再將這些數據放到新的excel表中的第一列與第二列,最后再生成隨機數作為學生的考試成績。

首先要用到的數據庫有:xlwt,xlrd,random這三個數據庫。

命令如下:

import xlwt

import xlrd

import random

現有一份表格內容如下圖:

基于python實現在excel中讀取與生成隨機數寫入excel中

現在我們需要提取這其中的B1—C14。

(提示:在對這份電子表格進行操作的時候,要使用到這個電子表格的地址,即表格的儲存位置。)
excel=xlrd.open_workbook(G:\python\新建文件夾\表1.xlsx')          #打開并讀取表格
sheet=excel.sheets()[0]                         #在原表1中提取第一頁中的數據。對excel進行處理時,行列頁都是從0開始進行計算
wb=xlwt.Workbook()                          #創立一個新的excel表格
ws =wb.add_sheet('成績單')                      #第一頁命名為成績單
(如果要進行多頁操作,要將學號姓名放到兩頁excel表格中的話可以如下操作:
ws1=wb.add_sheet('1班成績單')
ws2=wb.add_sheet('2班成績單')
)

創建兩個list:

a=[]
b=[]
(這兩個list是用來臨時存放學號與姓名的)
for i in range (1,14):           #在大二下學期15級成績匯總.xlsx表中提取出姓名與學號
a .append(sheet.row_values(i,1,2))    #提取第i行的第1個數,即這個命令抽取的是表中的學號列
b .append(sheet.row_values(i,2,3))    #提取第i行的第2個數,即這個命令抽取的是表中的姓名列

在此特比注意:excel中行與列均是從0開始計算的,即表中第1行第1列在進行處理運行時為第0行第0列,表中第2行第2列在進行處理運行時為第1行第1列。表中sheet也是從0開始算起。

解釋一下: a .append(sheet.row_values(i,1,2))在經過幾次錯誤后我發現,i是指第i行, 1,2 這兩個是一段范圍。即取的是第1個值,按照上面注意的說,就是表中第二個框格的值。

如果對此有疑問可以試一下將 1,2 修改一個值進行嘗試。

for n in range(13):              #將學號與姓名寫入新建的表格中,并寫在第1頁,人數為13人。
ws.write(n,0,a[n][0])
ws.write(n,1,b[n][0])

提醒:為什么這里要用a[n][0]而不是a[n]?這個是我自己水平有限制的原因。因為在提取表中數據放入a,b兩個list中他們的形式是:a=[[111],[112],[113]……]的形式,對于這一點的解決方法我還沒想出來,因此只能靠a[n][0]這樣的形式來解決。因為在寫入新的表格過程中不能將list整個放入框格中,只能放入文本或者其他框格允許的格式。如果你們有什么比較好的方法可以提出來我們一起交流學習,感激不盡。

for q in range(13):               #對1班所有人的成績進行隨機抽取數據
ran=random.randint(60,91)
if ran<=70:
ws1.write(q,2,'及格({0})'.format(ran))
if ran>70 and ran<=80:
ws1.write(q,2,'中等({0})'.format(ran))
if ran>80 and ran<=90:
ws1.write(q,2,'良好({0})'.format(ran))
wb.save('15資環1,2班地理信息系統實習成績.xls')      #將新建的表格保存為'15資環1,2班地理信息系統實習成績.xls'文件

以下代碼是由兩個班的數據進行運算。

原來的表格為:

基于python實現在excel中讀取與生成隨機數寫入excel中

 import xlwt    #引入xlwt數據庫用來將數據寫入excel文檔中
 import xlrd    #引入xlrd數據庫用來從excel中讀取數據
 import random    #引入random數據庫給出隨機數
 excel=xlrd.open_workbook('G:\python\新建文件夾\表1.xlsx')     #從一個已有學號與姓名的excel表格中提取出對應的學號和姓名
 sheet=excel.sheets()[0]
 wb=xlwt.Workbook()         #創立一個新的excel表格
 ws1=wb.add_sheet('1班成績單')       #第一頁命名為1班成績單
 ws2=wb.add_sheet('2班成績單')       #第一頁命名為2班成績單
 a1=[]             #表1中的學號列
 a2=[]             #表2中的學號列
 b1=[]             #表1中的姓名列
 b2=[]             #表2中的姓名列
 for i in range (1,14):        #表1.xlsx表中提取出1班的姓名與學號
  a1.append(sheet.row_values(i,1,2))
  b1.append(sheet.row_values(i,2,3))
 for j in range (14,33):        #在表1.xlsx表中提取出1班的姓名與學號
  a2.append(sheet.row_values(j,1,2))
  b2.append(sheet.row_values(j,2,3))
 for n in range(13):         #將1班學號與姓名寫入新建的表格中,并寫在第1頁.1班人數為13人
  ws1.write(n,0,a1[n][0])
  ws1.write(n,1,b1[n][0])
 for m in range(19):         #將2班學號與姓名寫入新建的表格中,并寫在第2頁.2班人數為19人
  ws2.write(m,0,a2[m][0])
  ws2.write(m,1,b2[m][0])
 for q in range(13):         #對1班所有人的成績進行隨機抽取數據
  ran=random.randint(60,91)      #分數為60-90之間
  if ran<=70:
    ws1.write(q,2,'及格({0})'.format(ran))  #以下表示在各分數段的等級
  if ran>70 and ran<=80:
    ws1.write(q,2,'中等({0})'.format(ran))
  if ran>80 and ran<=90:
    ws1.write(q,2,'良好({0})'.format(ran))
 for d in range(19):         #對2班所有人的成績進行隨機抽取數據
  ran=random.randint(60,91)
  if ran<=70:
    ws2.write(d,2,'及格({0})'.format(ran))
  if ran>70 and ran<=80:
    ws2.write(d,2,'中等({0})'.format(ran))
  if ran>80 and ran<=90:
    ws2.write(d,2,'良好({0})'.format(ran))

wb.save('15資環1,2班地理信息系統實習成績.xls')            #將新建的表格保存為'15資環1,2班地理信息系統實習成績.xls'文件 

結果如下:

基于python實現在excel中讀取與生成隨機數寫入excel中

總結

以上所述是小編給大家介紹的基于python實現在excel中讀取與生成隨機數寫入excel中,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巫山县| 固阳县| 文山县| 壶关县| 东乡县| 涞水县| 巧家县| 林甸县| 宜良县| 福鼎市| 南江县| 龙海市| 壤塘县| 长白| 霍山县| 宣恩县| 循化| 宁南县| 哈密市| 吐鲁番市| 芮城县| 鄄城县| 德州市| 廉江市| 周口市| 肇东市| 通州区| 鄂尔多斯市| 沧州市| 尼玛县| 清远市| 扎赉特旗| 通辽市| 安顺市| 大石桥市| 湟源县| 芜湖县| 米脂县| 余江县| 德江县| 利辛县|