xz2cs4641-n231-x512-9sv5-bs1s41o2853x
上面 37 个字符 每个字符从 0-9,a-z 每个字符都组一遍
一开始用 for 嵌套遍历弄,然而 python 嵌套限制 20 个。
嵌套到最后面运行的时候,就提示: SyntaxError: too many statically nested blocks 太多静态嵌套的块 python 限制 20 个嵌套
有什么方式能解决么 QAQ
1
0ZXYDDu796nVCFxq 2018-11-06 13:20:19 +08:00 via Android
是我没看明白题目
这不是两个 for 搞定了吗? |
3
loryyang 2018-11-06 13:28:31 +08:00
|
4
laike9m 2018-11-06 13:29:02 +08:00
|
5
ClutchBear 2018-11-06 13:30:34 +08:00
搜索 python
uuid |
6
dapengzhao 2018-11-06 13:32:03 +08:00
楼下把题目解释一下吧
|
7
rabbbit 2018-11-06 13:33:26 +08:00
arr = [str(i) for i in range(0, 10)] + [chr(i) for i in range(ord('a'), ord('z') + 1)]
def gen(value): if len(value) == 37: print(value) return for i in arr: gen(value + i) for i in arr: gen(i) |
8
WEIHUANJIHE 2018-11-06 13:33:54 +08:00
没看懂
s = 'xz2cs4641-n231-x512-9sv5-bs1s41o2853x' ss = sorted(s) def _filter_func(item): return ('0' <= item <= 'z') def combine(s): return ''.join(sorted(filter(_filter_func, s))) print(combine(s)) |
9
Ken999 2018-11-06 13:34:21 +08:00
你的意思是,26 个字母加 10 个数字有多少种排列组合?
|
10
rabbbit 2018-11-06 13:34:49 +08:00
|
11
recall704 2018-11-06 13:45:13 +08:00
如果要生成这样的字符串,可以用 uuid,
如果要判断字符串是否满足这样的规则,可以用正则表达式。 |
12
necomancer 2018-11-06 15:11:17 +08:00
import uuid
print('%s' % (uuid.uuid4())) 试试。有其他要求请看 help(uuid.uuid1) help(uuid.uuid3) help(uuid.uuid4) help(uuid.uuid5) |
13
rocketman13 2018-11-06 18:35:39 +08:00
你不会写了 37 个 for 循环嵌套在一起吧。。。。
|
14
Sanko 2018-11-06 20:24:08 +08:00 via Android
37 层 for 循环怕不怕要被打死
|
15
ruoruodetouzizhe 2018-11-06 21:02:32 +08:00 1
看样子是准备写 37 层嵌套,结果 python 只让写 20 个
|
16
lihongjie0209 2018-11-06 21:13:54 +08:00
佩服佩服
|
17
0ZXYDDu796nVCFxq 2018-11-06 21:20:04 +08:00 via Android
37 个嵌套,每次循环 36 个元素?
一共跑 36 ** 37 次…… |
18
tuding 2018-11-06 21:23:59 +08:00
楼下好心人帮忙解释一下, 没有读懂
|
19
duoguo 2018-11-06 22:30:54 +08:00 via Android
我对不起我的语文老师。。。
|
20
JCZ2MkKb5S8ZX9pq 2018-11-06 23:04:51 +08:00
itertools 好像带排列组合的
|
21
ankelo 2018-11-06 23:32:37 +08:00
我只能说,这个属于新手问题
|
22
AX5N 2018-11-06 23:44:36 +08:00
高中知识,排列组合....
|
23
freakxx 2018-11-07 00:01:00 +08:00
|
24
wizardoz 2018-11-07 00:21:21 +08:00
递归或栈
|
25
wizardoz 2018-11-07 00:22:11 +08:00
另外,任何一种语言都不要手写 37 层嵌套循环
|
26
epleone 2018-11-07 09:05:53 +08:00
```python
from itertools import permutations _str = 'xz2cs4641-n231-x512-9sv5-bs1s41o2853x' for i in permutations(_str , len(_str )): print(i) ``` |