隨機分數生成即csv檔案

2021-07-05 07:56:58 字數 1410 閱讀 7906

最近有一項工作只注重總體分數,但是要求小項也要有分數。共有100分,5個小項,每個小項20分。比如,如果總分是91分的話,那麼需要隨機生成5個20分以內的數字,它們的和為91分,同時,為了使分數的方差不太大,規定每個分數至少為15分。

先看一下最終的結果如何吧:

先建立乙個excel**,裡面保證第一列是已經評好的分數:

(這裡使用函式randbetween模擬了)

然後再將檔案儲存為csv格式:

接著將這個檔案拖到python檔案上:

然後再開啟檔案之後就是想要的結果啦!

為了方便處理,使用csv檔案,即逗號分隔檔案。這種檔案中,每一行的各個資料以逗號分隔,第一行對於就資料的一行。雖然python中有專門的csv模組,但是由於此問題比較簡單,就直接手工操作了。

現在看一下源**……其實很簡單啦:

#!/usr/bin/python

#coding=utf8

from random import randint

from sys import argv

cols = 5

def getscore(score):

if score < 15 * cols:

return [0] * cols

scs = [20] * cols

while sum(scs) > score:

index = randint(0, cols - 1)

if scs[index] <= 15:

continue

scs[index] -= 1

return scs

scores =

with open(argv[1], "r") as sf:

for line in sf:

sf.close()

with open(argv[1], "w") as sf:

for score in scores:

sf.write("%d,"%score)

sf.write("%s\n"%(str(getscore(score)).strip('')))

sf.close()

**在python2即python3中均測試通過。

php 生成csv檔案

廢話不多說,上乾貨 方法一 匯出excel csv data 匯出資料 headlist 第一行,列名 filename 輸出excel檔名 functioncsv export data array headlist array filename 將資料通過fputcsv寫到檔案控制代碼 fput...

Java生成CSV檔案

pm要求在資料庫查出資料在瀏覽器匯出為csv的檔案,一接手沒多想直接用poi存進hssfworkbook物件,最後把檔案字尾名弄csv用流直接輸出到客戶端,三下五除二就搞定了,並且能用正常開啟。後來測試發現根本不是那麼回事。其實,csv是逗號分隔的 b 純文字 b 而xls是二進位制的,顯然這種低階...

sqlplus 生成csv 檔案

set echo off 非表示 set linesize 1000 列數 set pagesize 0 不分頁 set trimspool on spool 行末 無効 set pause off 相當於自動回車 set termout off 出力 畫面表示 set feedback off 行...