rackev
@rackev

Как не отправлять сообщение, если переменная будет равна 0?

Как сделать так, чтобы если рандом выберет 0, то сообщение не отправиться. А если выберет 'провода',то сообщение отправится.

word = ["0", "0", "0", "0", 'провода']

              elif word == 'да':
                if event.from_user: #Если написали в ЛС
                    vk.messages.send( #Отправляем сообщение
                            user_id=event.message.from_id,
                            random_id=get_random_id(),
                            message=random.choice(word) r
                    )
                if event.from_chat:#Если написали в Беседе
                    vk.messages.send( #Отправляем сообщение
                            chat_id=event.chat_id, #Здесь chat_id
                            random_id=get_random_id(),
                            message=random.choice(word) 
                    )
  • Вопрос задан
  • 112 просмотров
Решения вопроса 1
WolfInChains
@WolfInChains
Что-то вроде этого? Если выпал 0, то просто выводит сообщение в консоль, но пользователю не отправляет, если провода, то оправляет сообщение. Капсом обозначил что куда вставлять
import vk_api
import random
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType

vk = vk_api.VkApi(token="ВАШ ТОКЕН")
vk._auth_token()
vk.get_api()
longpoll = VkBotLongPoll(vk, АЙДИ ГРУППЫ) 


def send_msg(peer_id: int, message: str, attachment: str = ""):
    return vk.method("messages.send", {**locals(), "random_id": 0})

while True:
    try:
       for event in longpoll.listen():
           if event.type == VkBotEventType.MESSAGE_NEW:
               if event.object.peer_id == event.object.from_id:   #Только для лс с группой, чтобы работало в беседе == замените на !=
                   if event.object.text == "Рандом":
                       word = "0", "0", "0", "0", 'провода'
                       choice = random.choice(word)
                       if choice == "провода":
                           send_msg(event.obj.peer_id,  f'{choice}')
                       else:
                           print ("Сообщение не отправлено")
    except Exception as e:
        print(repr(e))

5ec7ecf84e7ff543875675.png5ec7ed0b4f5c4379270149.png
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@zexer
import random

word = ["0", "0", "0", "0", 'провода']

if random.choice(word) == '0':
    print('Ноль')
else:
    print('Не ноль')
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы