Size: a a a

2019 December 02

C

Combot in SPb Python
형원 정 has been banned! Reason: CAS ban.
источник

SM

Serge Matveenko in SPb Python
Danil Ivanov
Это разве имеет какое-либо отношение к  Python?

(короткий ответ - нет, посмотри на @combot)
И вот у них даже есть API, чтобы в своих ботов встраивать.
https://cas.chat/
источник

DS

David Shiko in SPb Python
SQLite3:
Кто нибудь знает, если у меня ячейка ссылается на таблицу, то нужно использовать  Foreign Key? Например страна - города.
источник

SP

Stepan Potapov in SPb Python
привет всем!
Есть ли среди нас те, кто знает и python и java ?
я не очень хорошо знаю python, поэтому у меня возник вопрос
итак, есть структура данных:
params = ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('h', 'i')]
 задание: развернуть этот список так, чтобы элементы tuple превратились в часть списка без tuple
наивно, я пишу вот это (с проверочками):
for i in params:
   print(i)
   if type(i) is tuple:
       print(i)
       for j in range(len(i)):
           params.append(i[j])
       params.remove(i)

 Однако, я немного знаю джаву и понимаю, что на стримах джавы это было бы красиво и быстрее, чем в цикле
но я не достаточно хорошо знаю python, чтобы сыммитировать джавовое поведение в нем

итак, вопрос
можно ли написать решение задачи на python функциональных операторах? - и как, если можно?
источник

SO

Simon Osipov in SPb Python
Stepan Potapov
привет всем!
Есть ли среди нас те, кто знает и python и java ?
я не очень хорошо знаю python, поэтому у меня возник вопрос
итак, есть структура данных:
params = ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('h', 'i')]
 задание: развернуть этот список так, чтобы элементы tuple превратились в часть списка без tuple
наивно, я пишу вот это (с проверочками):
for i in params:
   print(i)
   if type(i) is tuple:
       print(i)
       for j in range(len(i)):
           params.append(i[j])
       params.remove(i)

 Однако, я немного знаю джаву и понимаю, что на стримах джавы это было бы красиво и быстрее, чем в цикле
но я не достаточно хорошо знаю python, чтобы сыммитировать джавовое поведение в нем

итак, вопрос
можно ли написать решение задачи на python функциональных операторах? - и как, если можно?
А вопрос такой, есть шанс того, что элементы в кортеже могут повторяться и надо сделать проверку? Или надо просто распаковать в один большой список?
источник

SP

Stepan Potapov in SPb Python
нет, повторяться вообще не могут
источник

SP

Stepan Potapov in SPb Python
вот та структура, что я описал,
источник

SP

Stepan Potapov in SPb Python
она может добавляяться новыми элементами
источник

YU

Yaroslav Ulanovich in SPb Python
Stepan Potapov
привет всем!
Есть ли среди нас те, кто знает и python и java ?
я не очень хорошо знаю python, поэтому у меня возник вопрос
итак, есть структура данных:
params = ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('h', 'i')]
 задание: развернуть этот список так, чтобы элементы tuple превратились в часть списка без tuple
наивно, я пишу вот это (с проверочками):
for i in params:
   print(i)
   if type(i) is tuple:
       print(i)
       for j in range(len(i)):
           params.append(i[j])
       params.remove(i)

 Однако, я немного знаю джаву и понимаю, что на стримах джавы это было бы красиво и быстрее, чем в цикле
но я не достаточно хорошо знаю python, чтобы сыммитировать джавовое поведение в нем

итак, вопрос
можно ли написать решение задачи на python функциональных операторах? - и как, если можно?
так себе решение, но на вскидку:
for i, el in enumerate(params):
   if type(el) is tuple:
      params.pop(i)
      params.extend(list(el))
источник

SP

Stepan Potapov in SPb Python
хм, а почему так себе? - а как лучше ?
источник

YV

Yuliya Volkova in SPb Python
результат будет не тот
источник

YV

Yuliya Volkova in SPb Python
params = ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('h', 'i'),  ('b', 'h', 'i')]
for i, el in enumerate(params):
   if type(el) is tuple:
      params.pop(i)
      params.extend(list(el))

print(params)
источник

YV

Yuliya Volkova in SPb Python
выдаст ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('b', 'h', 'i'), 'h', 'i']
источник

YV

Yuliya Volkova in SPb Python
а надо ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'b', 'h', 'i']
источник

YV

Yuliya Volkova in SPb Python
верно?
источник

SP

Stepan Potapov in SPb Python
Верно, Юля
источник

YV

Yuliya Volkova in SPb Python
можно так
источник

YV

Yuliya Volkova in SPb Python
params = ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('h', 'i'),  ('b', 'h', 'i')]
for num, elem in enumerate(params):
   if isinstance(elem, tuple):
       tuple_elem = params.pop(num)
       [params.insert(num+i, elem[i]) for i in range(len(elem))]
источник

YV

Yuliya Volkova in SPb Python
можно упростить
источник

SO

Simon Osipov in SPb Python
>>> params = ['a', 'b', 'c', 'd', 'e', 'f', 'g', ('h', 'i')]
>>> new_param = [item for sublist in params for item in sublist]
>>> new_param
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
источник