Форум сайта python.su
import random import subprocess from threading import Thread results = [] start_processes = 6 def run_command(count, result_storage): cmd = subprocess.check_output(['ping', '-c', 5, str(choice) + '.com'], text=True) result_storage.append(cmd) threads = [] for _ in range(start_processes): x = random.randint(3, 4) print(x) choice = random.choice(list('1234567890abcdefghigklmnopqrstuvyxwz', k=x)) print(choice) t = Thread(target=run_command, args=[count, results]) t.start() threads.append(t) for t in threads: t.join()
3 Traceback (most recent call last): File "/media/sf_soft/vsc/thread.py", line 17, in <module> choice = random.choice(list('1234567890abcdefghigklmnopqrstuvyxwz', k=x)) TypeError: list() takes no keyword arguments
Отредактировано gelius (Дек. 21, 2022 12:23:18)
Офлайн
gelius
Как написать?
>>> import random >>> >>> choice = random.choice('1234567890abcdefghigklmnopqrstuvyxwz') >>> choice '8' >>>
>>> import random >>> >>> lst = [random.choice('1234567890abcdefghigklmnopqrstuvyxwz') for _ in range(3)] >>> lst ['g', 'h', '8'] >>>
Отредактировано py.user.next (Дек. 21, 2022 12:56:59)
Офлайн
Да, но результат такой необходим:
lst ['gh8']
Офлайн
используйте choices
import random ch = random.choices('1234567890abcdefghigklmnopqrstuvyxwz', k=3) print(''.join(ch))
Отредактировано xam1816 (Дек. 21, 2022 15:34:50)
Офлайн
gelius
Да, но результат такой необходим:lst ['gh8']
>>> import random >>> >>> lst = [''.join(random.choice('1234567890abcdefghigklmnopqrstuvyxwz') for _ in range(3))] >>> lst ['a67'] >>>
>>> import random >>> >>> text = ''.join(random.choice('1234567890abcdefghigklmnopqrstuvyxwz') for _ in range(3)) >>> text 'vaz' >>>
Отредактировано py.user.next (Дек. 21, 2022 21:54:22)
Офлайн