NaName: запутался я и ничего не получилось, мне еще посоветовали делать с помощью setshortcut , self.convertBtn = QPushButton('Перевести', self) кнопка есть ее сигнал self.convertBtn.clicked.connect(self.onClick) , в который передается функция с необходмыми действиями, на каком шаге мне надо добавить этот код ? и что принимает E в вашем примере что вы посоветовали приспособить ?
NaName: мне нужно как бы сделать так что бы по нажатию на ентер выполнилось действие и то же самое делала бы и экранная кнопка. обычную кнопку я сделал и все работает а вот как прикрутить нажатие с клавиатуры не разобрался
Алексей Черемисин: тут кусок кода что с кинул отвечает за создание и вызов клавиатуры и за закрытие ее. она на экране телефона по команде заменяет обычную. например можно сделать такую клавиатуру как стандартный калькулятор и с ее помощью вводить нужные значения а не искать их на стандартной клаве
Igor Nikolaev: да, передается строка, сначала ее перебираю в список а потом проверяю что число а что знак и загоняю в стек по правилам польской нотации. до этого у меня было вот так ( 1 + 1 ) * 2 между каждым элементом пробел это был ориентир для split() но такая запись не удобна особенно если человек со стороны вводит
Igor Nikolaev: я делаю стековый калькулятор через префиксную форму записи, у меня есть два класса, стек и нотация
c= PoskaNotation()
c.notation("4+5.1*63") - вот такую строку на вход он не понимает и вот такую тоже "-4+5*63
Алексей Черемисин: да тут тоже похоже такая проблема встречается. потому что команда старт и стоп отрабатывается а команда на вызов клавиатуры почему то нет
Алексей Черемисин: Вот есть еще проблемка что бы не плодить темы может вы сможете помочь ? хочу вызвать клавиатуру но она не вызывается есть ли тут ошибка ?
@bot.message_handler(commands=['st'])
def handle_start (message):
user_markup = telebot.types.ReplyKeyboardMarkup(True, False)
user_markup.row('start','help','calc')
bot.send_message(message.from_user.id,'', reply_markup=user_markup)
Алексей Черемисин: пробовал, но она появляется всегда, может сразу а может и не сразу. это может быть связано со слишком долгим ответом программы ? если например вводишь 2 ** 10000 в чат то в ответ приходит ошибка, не обработал. мне кажется может какой то тайм аут есть или то время что он ожидает подсчета ?
Спасибо за помощь ! я и не знал что такое условие можно добавить после except ! Только вот это строчка в таком виде в третьем питоне работать не будет if lower(inp) == 'q':
Нет, мне необходимо случайным способом перемешать элементы списка что бы они не повторялись. я решил это вот таким способом sorted(words, key=lambda *args: random.random()) , а есть еще какие ни будь способы ?