从Sag上的列表中查找元素

2024-04-19 15:38:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含以下内容的文件,在Sage中导入

James,4626544,56565656
Julian,4646463,346346364
Perez,4626544,56565656
Paul,7658568,56565656
Ronaldo,4626544,8468568
Zlatan,4626544,56565656

现在从Sage工作表(.sagews)中,我想恢复以字母p到R开头的姓名对应的行(恢复:佩雷斯、保罗和罗纳尔多)

我试过了

for x in THEFILE
    print from x[0][0]='P' to x[0][0]='R'

然后出错了。我怎么做到的(我已经导入了Sage工作表中的文件来处理它)


Tags: 文件infor字母姓名printsagejulian
1条回答
网友
1楼 · 发布于 2024-04-19 15:38:49

根据文件如何读入Sage,THEFILE 可能是与文件中的行对应的字符串列表, ie公司

['James,4626544,56565656',
 'Julian,4646463,346346364',
 'Perez,4626544,56565656',
 'Paul,7658568,56565656',
 'Ronaldo,4626544,8468568',
 'Zlatan,4626544,56565656']

或字符串列表:

[['James', '4626544', '56565656'],
 ['Julian', '4646463', '346346364'],
 ['Perez', '4626544', '56565656'],
 ['Paul', '7658568', '56565656'],
 ['Ronaldo', '4626544', '8468568'],
 ['Zlatan', '4626544', '56565656']]

在下面相应地使用x[0]或x[0][0]

要打印:

for x in THEFILE:
    if 'P' <= x[0] <= 'R':
        print(x)

要获取提取的列表:

P_to_R = [x for x in THEFILE if 'P' <= x[0] <= 'R']

Python csv模块或pandas包可能会有所帮助 对于这样的数据处理:

要在Sage中安装pandas,请在终端中运行以下命令:

sage  pip install pandas

相关问题 更多 >