from operator import itemgetter
aws_string = """eks-user AKIAII4CCN6AA 288 days
eks-user AKIAJFUU2ASII 100 days
Oracle_RMAN AKIAJ4DMBBCEP 847 days
Oracle_RMAN AKIAIAWETFUK 134 days
nb-dev-api AKIAI7OTKONT 199 days
nb-dev-api AKIAICIDXLDU 100 days
text@abc.com AKIAJ4DMBBCEP 120 days"""
def sort_string(string):
string = string.split("\n")
array_of_data = []
for line in string:
array_of_data.append(line.split())
#array_of_data = sorted(array_of_data,key=lambda l:l[2], reverse=True)
array_of_data = sorted(array_of_data, key=itemgetter(2), reverse=True)
return array_of_data
ls = sort_string(aws_string)
for l in ls:
print(l)
OUTPUT:
['Oracle_RMAN', 'AKIAJ4DMBBCEP', '847', 'days']
['eks-user', 'AKIAII4CCN6AA', '288', 'days']
['nb-dev-api', 'AKIAI7OTKONT', '199', 'days']
['Oracle_RMAN', 'AKIAIAWETFUK', '134', 'days']
['text@abc.com', 'AKIAJ4DMBBCEP', '120', 'days']
['eks-user', 'AKIAJFUU2ASII', '100', 'days']
['nb-dev-api', 'AKIAICIDXLDU', '100', 'days']
Return a string
from operator import itemgetter
aws_string = """eks-user AKIAII4CCN6AA 288 days
eks-user AKIAJFUU2ASII 100 days
Oracle_RMAN AKIAJ4DMBBCEP 847 days
Oracle_RMAN AKIAIAWETFUK 134 days
nb-dev-api AKIAI7OTKONT 199 days
nb-dev-api AKIAICIDXLDU 100 days
text@abc.com AKIAJ4DMBBCEP 120 days"""
def sort_string(string):
string = string.split("\n")
array_of_data = []
for line in string:
array_of_data.append(line.split())
#array_of_data = sorted(array_of_data,key=lambda l:l[2], reverse=True)
array_of_data = sorted(array_of_data, key=itemgetter(2), reverse=True)
for l in array_of_data:
array_of_data[array_of_data.index(l)] = " ".join(l)
array_of_data = "\n".join(array_of_data)
return array_of_data
ls = sort_string(aws_string)
print(ls)
OUTPUT:
Oracle_RMAN AKIAJ4DMBBCEP 847 days
eks-user AKIAII4CCN6AA 288 days
nb-dev-api AKIAI7OTKONT 199 days
Oracle_RMAN AKIAIAWETFUK 134 days
text@abc.com AKIAJ4DMBBCEP 120 days
eks-user AKIAJFUU2ASII 100 days
nb-dev-api AKIAICIDXLDU 100 days
This should works
from operator import itemgetter
aws_string = """eks-user AKIAII4CCN6AA 288 days
eks-user AKIAJFUU2ASII 100 days
Oracle_RMAN AKIAJ4DMBBCEP 847 days
Oracle_RMAN AKIAIAWETFUK 134 days
nb-dev-api AKIAI7OTKONT 199 days
nb-dev-api AKIAICIDXLDU 100 days
text@abc.com AKIAJ4DMBBCEP 120 days"""
def sort_string(string):
string = string.split("\n")
array_of_data = []
for line in string:
array_of_data.append(line.split())
#array_of_data = sorted(array_of_data,key=lambda l:l[2], reverse=True)
array_of_data = sorted(array_of_data, key=itemgetter(2), reverse=True)
for l in array_of_data:
array_of_data[array_of_data.index(l)] = " ".join(l)
array_of_data = "\n".join(array_of_data)
return array_of_data
complianceusers = sort_string(aws_string)
print(complianceusers)
output
Oracle_RMAN AKIAJ4DMBBCEP 847 days
eks-user AKIAII4CCN6AA 288 days
nb-dev-api AKIAI7OTKONT 199 days
Oracle_RMAN AKIAIAWETFUK 134 days
text@abc.com AKIAJ4DMBBCEP 120 days
eks-user AKIAJFUU2ASII 100 days
nb-dev-api AKIAICIDXLDU 100 days