Size: a a a

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

2021 January 04

E

Eagint in Сообщество Python Программистов
Александр Алексюк
Найти все нули в списке и убрать их в конец списка

А где нули то потерял?)
array += [array.pop(i)]
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Eagint
array += [array.pop(i)]
Не справится со строковыми значениями в списке
источник

E

Eagint in Сообщество Python Программистов
Александр Алексюк
Не справится со строковыми значениями в списке
В смысле?
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Eagint
В смысле?
Если в цикл загнать «а» — вернет none
источник

E

Eagint in Сообщество Python Программистов
Александр Алексюк
Если в цикл загнать «а» — вернет none
У тебя какая версия питона?
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Eagint
У тебя какая версия питона?
3.8
источник

А

Айван in Сообщество Python Программистов
Теперь вроде работает :/
res = [i for i in arr if not (i == 0 and not isinstance(i, bool))]
res += [0] * (len(arr) - len(res))
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Айван
Теперь вроде работает :/
res = [i for i in arr if not (i == 0 and not isinstance(i, bool))]
res += [0] * (len(arr) - len(res))
+ пашет
источник

K

KarmaBot in Сообщество Python Программистов
Вы увеличили карму Айван до 846.34 (+11.85)
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Айван
Теперь вроде работает :/
res = [i for i in arr if not (i == 0 and not isinstance(i, bool))]
res += [0] * (len(arr) - len(res))
Еще оказывается так можно)

return sorted(array, key=lambda x: x==0 and type(x) is not bool)
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
Александр Алексюк
Найти все нули в списке и убрать их в конец списка

А где нули то потерял?)
count = array.count(0)
array.remove(0)
array.extend([0 for _ in range(count)])
источник

E

Eagint in Сообщество Python Программистов
Александр Алексюк
Если в цикл загнать «а» — вернет none
Language:
python3


Source:
array = [0, 'a', 1, None, "string", False, "string", 1, 0]
for i, el in enumerate(array):
   if el in (0, 0.0) and not isinstance(el, bool):
       array += [array.pop(i)]
print(array)


Result:
['a', 1, None, 'string', False, 'string', 1, 0, 0]
источник

А

Айван in Сообщество Python Программистов
𝕬𝖗𝖙𝖊𝖒
count = array.count(0)
array.remove(0)
array.extend([0 for _ in range(count)])
remove False удалит
источник

E

Eagint in Сообщество Python Программистов
Eagint
Language:
python3


Source:
array = [0, 'a', 1, None, "string", False, "string", 1, 0]
for i, el in enumerate(array):
   if el in (0, 0.0) and not isinstance(el, bool):
       array += [array.pop(i)]
print(array)


Result:
['a', 1, None, 'string', False, 'string', 1, 0, 0]
ЧЯДНТ?
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
Айван
remove False удалит
А, вот в чём прикол
источник

А

Айван in Сообщество Python Программистов
Да и изменять переданный массив как-то не очень :/
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Александр Алексюк
Еще оказывается так можно)

return sorted(array, key=lambda x: x==0 and type(x) is not bool)
Я сперва пытался как-то чете ключ, но не. Понял как его задать
источник

А

Айван in Сообщество Python Программистов
Александр Алексюк
Еще оказывается так можно)

return sorted(array, key=lambda x: x==0 and type(x) is not bool)
До меня только дошло в чём прикол. Забыл что он результат key сортирует, а не само значение. Круто. Только с isinstance всё-таки было бы правильнее:
sorted(array, key=lambda x: x==0 and not isinstance(x, bool))
источник

АА

Александр Алексюк... in Сообщество Python Программистов
Айван
До меня только дошло в чём прикол. Забыл что он результат key сортирует, а не само значение. Круто. Только с isinstance всё-таки было бы правильнее:
sorted(array, key=lambda x: x==0 and not isinstance(x, bool))
Согласен
источник

R3

Rud 356 in Сообщество Python Программистов
Айван
Теперь вроде работает :/
res = [i for i in arr if not (i == 0 and not isinstance(i, bool))]
res += [0] * (len(arr) - len(res))
Выглядит словно кто-то изобретает filter
источник