У меня есть бот-дискорд, который читает и записывает в текстовый файл. Я набираю:
+add <url>
, и он добавит URL-адрес в новую строку текстового файла.
Мне нужно +remove <url>
, чтобы удалить URL-адрес, который соответствует ему в том же текстовом файле .
@bot.command()
async def add(ctx, args):
url = args.lower() + '\n'
with open('text.txt', 'a') as url_file:
url_file.write(url)
@bot.command()
async def remove(ctx, args):
url = args.lower() + '\n'
with open("text.txt", 'r') as url_file:
urls = url_file.readlines()
replacement_urls = [url for url in urls if url != x]
with open('text.txt', 'w') as url_file:
url_file.truncate()
url_file.write(''.join(replacement_urls))
+ add работает отлично, но когда я запускаю команду удаления, я получаю сообщение об ошибке
replacement_urls = [url for url in urls if url != x] NameError: name 'x' is not defined
Есть предложения?