Size: a a a

Сообщество Python Программистов

2020 February 28

R3

Rud 356 in Сообщество Python Программистов
Фейл вроде на 12ой строке
источник

l

let45fc in Сообщество Python Программистов
Класс, пикл не умеет сохранять замыкания
источник

GS

Genri Spayer in Сообщество Python Программистов
let45fc
Класс, пикл не умеет сохранять замыкания
замыкания?
о чем речь?
источник

l

let45fc in Сообщество Python Программистов
А pyTelegramBotAPI юзает пикл для сохранения следующего хэндлера
источник

l

let45fc in Сообщество Python Программистов
Genri Spayer
замыкания?
о чем речь?
При использовании декораторов в основном создаются замыкания
источник

l

let45fc in Сообщество Python Программистов
И я как раз их использую, ими и декорирую хэндлеры, которые хочет сохранить pyTelegramBotAPI
источник

НХ

Никита Хмель in Сообщество Python Программистов
Rud 356
Это просто уже какой-то прикол или я не вкуриваю от недосыпа уже
https://pastebin.com/3nV82Em3
а поч ты передаешь аргументы для приватных полей из вне? они разве не предназначены как бы для использования исключительно внутри класса? или у меня проблемы с ооп ещё))
источник

НХ

Никита Хмель in Сообщество Python Программистов
_token, _login, _password
источник

R3

Rud 356 in Сообщество Python Программистов
Никита Хмель
а поч ты передаешь аргументы для приватных полей из вне? они разве не предназначены как бы для использования исключительно внутри класса? или у меня проблемы с ооп ещё))
Двойное подчеркивание - приватные
Одинарное - просто предупреждение что не стоит это трогать. И еще приватные переменные можно передавать в конструктор
источник

ЮЧ

Юрий 👨‍🔬 Чебышев in Сообщество Python Программистов
Никита Хмель
а поч ты передаешь аргументы для приватных полей из вне? они разве не предназначены как бы для использования исключительно внутри класса? или у меня проблемы с ооп ещё))
Приватные и защищённые поля не предназначены для прямой записи и иногда чтения. При этом они все равно откуда-то берутся и чаще всего это параметры инициализатора или методов
источник

AE

A.Krasilnikov Emoteview.ru in Сообщество Python Программистов
list_ = [1, 45, 34, 12, 67]
# list_ = list(input("Введите несколько чисел через пробел: "))
if len(list_) % 2 == 0:
   i = 0
   while i < len(list_):
       element = list_[i]
       list_[i] = list_[i + 1]
       list_[i + 1] = element
       i += 2
else:
   i = 0
   while i < len(list_) - 1:
       element = list_[i]
       list_[i] = list_[i + 1]
       list_[i + 1] = element
       i += 2
print(list_)
источник

AE

A.Krasilnikov Emoteview.ru in Сообщество Python Программистов
Почему когда я итерирую заданный лист - все ок
источник

AE

A.Krasilnikov Emoteview.ru in Сообщество Python Программистов
А когда итерирую лист из input - итерируется посимвольно ?
источник

AE

A.Krasilnikov Emoteview.ru in Сообщество Python Программистов
"все ок" - я имею в виду код работает по задаче: в списке ближайшие цифры должны 1 раз поменяться местами в результате работы кода
источник

MT

Munir Tagarifullin in Сообщество Python Программистов
A.Krasilnikov Emoteview.ru
"все ок" - я имею в виду код работает по задаче: в списке ближайшие цифры должны 1 раз поменяться местами в результате работы кода
Потому что input() считывает строку
источник

MT

Munir Tagarifullin in Сообщество Python Программистов
Используй list(map(int, input().split()))
источник

AE

A.Krasilnikov Emoteview.ru in Сообщество Python Программистов
ох ты ж... спасибо, попробую
источник

AE

A.Krasilnikov Emoteview.ru in Сообщество Python Программистов
Munir Tagarifullin
Потому что input() считывает строку
+
источник

MT

Munir Tagarifullin in Сообщество Python Программистов
Но ты бы и сам это заметил, если бы просто попробовал вывести print(list_)
источник

MT

Munir Tagarifullin in Сообщество Python Программистов
A.Krasilnikov Emoteview.ru
list_ = [1, 45, 34, 12, 67]
# list_ = list(input("Введите несколько чисел через пробел: "))
if len(list_) % 2 == 0:
   i = 0
   while i < len(list_):
       element = list_[i]
       list_[i] = list_[i + 1]
       list_[i + 1] = element
       i += 2
else:
   i = 0
   while i < len(list_) - 1:
       element = list_[i]
       list_[i] = list_[i + 1]
       list_[i + 1] = element
       i += 2
print(list_)
А вообще, у тебя еще и тело цикла 2 раза повторяется
источник