Untitled

 avatar
unknown
plain_text
2 years ago
2.3 kB
3
Indexable
import pandas as pd
pd.options.mode.chained_assignment = None
df = pd.read_csv('skating.txt',delimiter = ', ' ,names=['Место - Имя партнерши / Имя партнера', 'Страна']) #читаем файлик
tempdf = df['Место - Имя партнерши / Имя партнера'].str.split(' ',expand=True) #режем длинную строчку на нужные нам колонки
tempdf.columns=['Место','Место 2','remove1','Имя партнерши', 'Фамилия партнерши', 'remove2', 'Имя партнера', 'Фамилия партнера']
tempdf.pop('remove1') #удаляем мусор и объединяем нужное
tempdf.pop('remove2')
tempdf['Место']
tempdf.pop("Место 2")
tempdf['Имя партнерши'] += " " + tempdf['Фамилия партнерши']
tempdf['Имя партнера'] += " " + tempdf['Фамилия партнера']
tempdf.pop('Фамилия партнера')
tempdf.pop('Фамилия партнерши')
df.pop('Место - Имя партнерши / Имя партнера')
otvet = pd.concat([df,tempdf],axis=1) # объединяем изначальные данные с разрезанными на колонки
strana = input() #получаем страну
realnootvet = otvet[otvet['Страна']==strana] #делаем фрэйм с фильтром
realnootvet['Место'] = realnootvet['Место'].astype(int, copy = 'True') #делаем место интом, чтобы сортировка работала корректно
realnootvet = realnootvet.sort_values(by='Место', ascending=True) #сортируем дф
realnootvet.reset_index(drop= True , inplace= True ) #ресетим индексы, чтобы фор работал правильно
print(strana) #выводим название выбранной страны
for i in range(realnootvet['Страна'].count()): #выводим в строчку место и партнеров по выбранной стране в порядке убывания мест(с высоких до низких)
  print(realnootvet['Место'][i]," место - ",realnootvet['Имя партнерши'][i]," / " , realnootvet['Имя партнера'][i], sep = '')
Editor is loading...