Я не понимаю как доставать по одной строке из text.txt, вот код:
def admin(chatid, userid, text):
print(2)
if isadmin(chatid, userid):
print(8)
text[5:]
if len(text.split()) > 1:
candidat = text.split()[1].strip().lower()
print(4)
if candidat[:3] == '[id' and '|' in candidat:
print(5)
nid = candidat.split('|')[0][3:]
if nid.isdigit():
print(6)
nid = int(nid)
hwid=('id'+str(nid))
print(hwid)
if hwid in open('text.txt').read():
send_message_to_chat(chatid, 'Айди уже существует в базе данных.')
return True
print('true')
f=open('text.txt', 'a')
f.write(hwid + '\n' )
send_message_to_chat(chatid, 'Айди записан в базу администраторов')
else:
send_message_to_chat(chatid, 'Вы должны быть админом')
все записывается как вы поняли в text.txt в формате id + \n. когда там 1 айди, это понятно, все хорошечно, и отлично, но суть в том, что у меня проверка на админа. В данном случае:
def isadmin(chatid, userid,):
members_data = vk.messages.getConversationMembers(peer_id=2000000000 + chatid)
for i in members_data['items']:
if userid == i['member_id']:
with open('text.txt', 'r') as file:
#ids=file.readlines()
while True:
id=file.read()
print(id)
print(id)
if not id:
break
print(id)
send_message_to_chat(chatid, 'id')
if 'is_admin' in i or userid == id:
print('true')
return True
else:
print('false')
return False
Этот код сканирует на админа, и если все ок, он отправляет. А в нем есть фишка, что можно добавить левый id. Так вот, когда 1 айди, он вписывается, и зашибись. Но когда их 2+, они не вмещаются