我有一个包含以下内容的文件,我在Sage中导入。
James,4626544,56565656
Julian,4646463,346346364
Perez,4626544,56565656
Paul,7658568,56565656
Ronaldo,4626544,8468568
Zlatan,4626544,56565656
现在从一个Sage工作表(.sagews),我想恢复对应于以P到R的字母开头的名字的行(恢复:Perez,Paul和Ronaldo)。
我试过了
for x in THEFILE
print from x[0][0]='P' to x[0][0]='R'
并得到一个错误。我是怎么做到的(我已经在Sage工作表中导入了该文件以使用它)。
根据文件读入Sage的方式,THEFILE
可能是与文件中的行对应的字符串列表,即
['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