@Alex_888

Как записать из txt файла в словарь и вывести в алфавитном порядке?

Вывожу inline клавиатуру таким образом -
stringList = {"1": "Один", "2": "Два", "3": "Три"}

def makeKeyboard():
    markup = types.InlineKeyboardMarkup()
    for key, value in stringList.items():
        markup.add(types.InlineKeyboardButton(text=value,callback_data="['value', '" + value + "', '" + key + "']"))
    return markup

@bot.message_handler(commands=['/start'])
def handle_command_adminwindow(message):
    bot.send_message(chat_id=message.chat.id,
                     text="Here are the values of stringList",
                     reply_markup=makeKeyboard(),
                     parse_mode='HTML')


Но проблема в том, что выводится она беспорядочно, необходимо вывести в алфавитном порядке.
И как прочитать из обычного текстового файла такого вида :
1 Один
2 Два
3 Три

в словарь stringList
  • Вопрос задан
  • 886 просмотров
Решения вопроса 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Прочитать txt вы можете так:
stringList = {}
with open("файл.txt") as f:
    for line in f:
        key, value = line.split()
        stringList[key] = value

До версии Python 3.7.3 словари были неупорядоченными и необходимо было использовать OrderedDict. Обновите версию Python до актуальной, или используйте OrderedDict
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
28 нояб. 2024, в 05:21
2000 руб./за проект
28 нояб. 2024, в 05:18
500 руб./за проект
28 нояб. 2024, в 03:51
3500 руб./за проект