作者ides13 (juso)
看板Python
标题Re: [问题] 请问要如何针对学生某一科作成绩排序?
时间Thu Jun 21 15:00:44 2018
※ 引述《ironmanstock (钢铁人史塔克)》之铭言:
: 大家好,
: 如果现在有多个学生四科成绩如下
: TOM 成绩 80,45,74,87,
: KIM 成绩 69,87,61,58
: LAW成绩 89,84,71,51
: .............
: 用PYTHON要怎样作,才能针对学生们第一科的成绩(譬如 80 69 89....)
: 去排序学生?
: 我原先的做法是想用dic作
: *************************************************
: A=[TOM,KIM,LAW]
: B=["80,45,74,87", "69,87,61,58","89,84,71,5"]
: dic=zip(A,B)
: sorted( dic ,key=lambda x:x[1][0])
: *************************************************
: 用X[1][0] 是想依照第一科成绩排序,结果没成功,
: 请问在python要怎样写,才能对某一科成绩去做排序?
: 谢谢大家
应该是资料出了问题。B应该是用list,而不是用字串。
A应该要用字串,否则文字会被视为变数。
A=["TOM", "KIM", "LAW"]
B=[[80,45,74,87], [69,87,61,58],[89,84,71,5]]
dic=zip(A,B)
sortedy = sorted( dic ,key=lambda x:x[1][0])
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.133.32.131
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1529564447.A.51B.html
※ 编辑: ides13 (220.133.32.131), 06/21/2018 15:05:50
※ 编辑: ides13 (220.133.32.131), 06/21/2018 15:18:09
1F:推 ironmanstock: 谢谢ides13,的确这样做解决了问题!!!! 06/21 18:33