Почему if работает даже с заведомо не верным условием?

Статус
Закрыто для дальнейших ответов.

LoydVP

Новичок
Пользователь
Фев 8, 2023
5
0
1
Почему if работает в любом случае?

Python:
import pyperclip
import time
import re
a = ''
while True:
  clipboard = pyperclip.paste()
  b = False
  if clipboard != a and b == True:
    with open('monitoring.txt', 'a', encoding='UTF=8') as f:
      f.write(clipboard)
      f.write('\n')
      a = clipboard
  time.sleep(2)
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
вы точно этот код запускаете?
у меня все работает как нужно
 

LoydVP

Новичок
Пользователь
Фев 8, 2023
5
0
1
Я меняю значение b на True или False в ручную но код срабатывает при любых условиях. Это я так пытаюсь решить задачу с одного сайта но вот не могу понять что я не так написал
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
чудеса...
воспользуйтесь дебагером, посмотрите, что идет не так
 

LoydVP

Новичок
Пользователь
Фев 8, 2023
5
0
1
вы точно этот код запускаете?
у меня все работает как нужно
да, именно этот кода уже второй день и перезапусклал. и с терминала и с консоли, и в ручную менял, и условия ставил и в любом случае if работает как будто b он вовсе не видит, будто её нет
 

LoydVP

Новичок
Пользователь
Фев 8, 2023
5
0
1
чудеса...
воспользуйтесь дебагером, посмотрите, что идет не так
сейчас заработало. Попробую вернуть всё как было и перезапущу и проверю ещё раз. Вот прямо перед тем как создавал тему проверял и ничего не работало. После этого ничего не изменил и заработало. Точно чудеса.
я не умею дебагером пользоваться, я только учусь
 

LoydVP

Новичок
Пользователь
Фев 8, 2023
5
0
1
Да не бывает такого что всю ночь не работало и утром заработало когда ничего не менялось. Значения писались при любом значении b

Python:
import pyperclip
import time
import re
a = ''
while True:
  clipboard = pyperclip.paste()
  b = bool(re.match(r'[a-zA-z0-9]', clipboard))
  print(b)
  if clipboard != a and b == True:
    with open('monitoring.txt', 'a', encoding='UTF=8') as f:
      f.write(clipboard)
      f.write('\n')
      a = clipboard
  time.sleep(2)

Вот так вот было, вот так вот и осталось, в консоль видно было значение b, не понимаю.
Спасибо за помощь, закрывать тему?
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
закрыл
 
Статус
Закрыто для дальнейших ответов.

Форум IT Специалистов