python - 如何在文本文件的排序二维列表中打印 3 种不同类型的值?
问题描述
我有一个文本文件,上面写着一个人的名字,num。俯卧撑和数字。引体向上。这是文本文件。
我需要按学生可以分别做的俯卧撑和引体向上的数量对学生进行排序。例如,杰克可以做最多的俯卧撑和引体向上,所以他在这两个类别中都名列前茅。
为了解决这个问题,我认为我应该制作一个 2D 列表,但是我不确定如何排序以按排序方式附加值。这是我到目前为止编写的代码。
opener = open("gymclub.txt", "r")
reader = opener.readline()
listObjects = []
listNames = []
listPressups = []
listPullups = []
while reader!="":
splitting=reader.split(",")
name = splitting[0]
press_ups = splitting[1]
pull_ups = splitting[2]
reader = opener.readline()
print(name)
print(press_ups)
print(pull_ups)
listNames.append(name)
listPressups.append(press_ups)
listPullups.append(pull_ups)
listObjects.append(name)
listObjects.append(press_ups)
listObjects.append(pull_ups)
print(listObjects)
splitting2 = str(listObjects).split("\n")
# print(splitting[1])
# print(splitting[2])
opener.close()
我只想知道一种可以帮助我解决这个问题的方法。
解决方案
使用 pandas 更容易做到这一点
import pandas as pd
df = pd.read_csv("your.csv", columns=["name","pressups", "pullups"])
df.sort(["pressups", "pullups"], ascending=[True, False])
推荐阅读
- javascript - 使用 videojs 播放 youtube,AbortError
- pytorch - Pytorch:Hessian函数的反向微分:“
- android - 如何在 Visual Studio for Mac for Xamarin 中添加更多 android 模拟器设备?
- html - svg子元素上的CSS变换原点问题
- c++ - Qt 如何在幕后共享 OpenGL 上下文?
- python - 如何用不同的序列替换特定的数字序列(连续行)
- azure - Azure 虚拟机计费粒度
- python - 使用 Bitbucket 管道部署到另一个分支的方法
- node.js - 编辑 MongoDB 存储以进行输出
- javascript - 如何删除逗号和命令?