Sort Rows

import pandas as pd
data = {
    'language' : [80, 67, 90],
    'maths' : [100, 78, 98],
    'science' : [98, 77, 56],
    'programming': [100, 100, 90]
}

index = ['chris', 'kevin', 'peter']
df = pd.DataFrame(data, index = index)
df
language maths science programming
chris 80 100 98 100
kevin 67 78 77 100
peter 90 98 56 90
df.sort_values(by='maths')
language maths science programming
kevin 67 78 77 100
peter 90 98 56 90
chris 80 100 98 100
df.sort_values(by='science', ascending=False)
language maths science programming
chris 80 100 98 100
kevin 67 78 77 100
peter 90 98 56 90
df.sort_values(by=['maths', 'science'])
language maths science programming
kevin 67 78 77 100
peter 90 98 56 90
chris 80 100 98 100
df.sort_values(by=['maths', 'science'], ascending=False)
language maths science programming
chris 80 100 98 100
peter 90 98 56 90
kevin 67 78 77 100
df.sort_values(by=['science', 'maths'], ascending=False)
language maths science programming
chris 80 100 98 100
kevin 67 78 77 100
peter 90 98 56 90
df['max_score'] = df.max(axis=1)
df
language maths science programming max_score
chris 80 100 98 100 100
kevin 67 78 77 100 100
peter 90 98 56 90 98
df['min_score'] = df.min(axis=1)
df
language maths science programming max_score min_score
chris 80 100 98 100 100 80
kevin 67 78 77 100 100 67
peter 90 98 56 90 98 56