← 返回题库
初级

实现设备列表排序

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve():
    from pyodide.http import open_url
    from io import StringIO
    import pandas as pd
    devs_csv = open_url("https://data.zuihe.com/dbd/ms-iot/state_00/devices.csv").read()
    devs = pd.read_csv(StringIO(devs_csv))
    def sort_devices(df, sort_by='device_id', order='asc'):
        asc = order == 'asc'
        if sort_by not in df.columns: return df
        return df.sort_values(sort_by, ascending=asc)
    for field, order in [('device_type','asc'),('firmware_version','desc'),('location_id','asc')]:
        result = sort_devices(devs, field, order)
        print(f"sort={field} {order}: {list(result['device_id'])}")

示例

输入
solve()
期望输出
sort=device_type asc: ['DEV006', 'DEV010', 'DEV003', 'DEV008', 'DEV001', 'DEV002', 'DEV007', 'DEV009', 'DEV004', 'DEV005']
sort=firmware_version desc: ['DEV010', 'DEV006', 'DEV003', 'DEV008', 'DEV001', 'DEV002', 'DEV007', 'DEV009', 'DEV004', 'DEV005']
sort=location_id asc: ['DEV001', 'DEV002', 'DEV003', 'DEV004', 'DEV005', 'DEV006', 'DEV007', 'DEV008', 'DEV009', 'DEV010']
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码