python - 使用 python 创建自己的数字系统
问题描述
我正在制作一个猜测密码的小程序。
我制作这个程序只是为了学习,我想通过制作一个真正有意义的程序来提高我的python技能。
例如:
using_characts = "abcdefghijklmnopqrstuvwxyz" # I have other characters in my alphabetic system
我想做的是这样的:
for char in myCharacters:
print(char)
for char_1 in myCharacters:
print(char + char_1)
for char_2 in myCharacters:
print(char + char_1 + char_2)
...etc
这使得这种方法是非动态的,同时也很难。输出应该是这样的:
a
b
c
d
e
f
..etc
aa
ab
ac
..etc
ba
bb
bc
..etc
解决方案
您可以使用itertools.product
,但您应该真正限制自己使用少量。为更大的数字生成笛卡尔积可能需要很长时间:
from itertools import chain, product
chars = "abcdefghijklmnopqrstuvwxyz"
limit = 2
for perm in chain.from_iterable(product(chars, repeat=i) for i in range(1, limit+1)):
print("".join(perm))
一个 b C . . . 啊 抗体 交流 . . . 齐 Z Z
推荐阅读
- angular - 无法使用反应形式的自定义验证器来确认更改密码页面中的密码
- javascript - 如何从回调函数返回
- math - 我需要将秒的 int 值转换为依赖于原始值的 % 值的字节
- bash - GI 想用 inotify 修复
- javascript - 将 Youtube 视频置于全屏 owl-carousel 的中心
- javascript - Axios - 查询和存储分页响应数据的简单方法
- python - 如何在 Pyspark 数据框中的轴 = 1 上连接 ArrayType 的 2 列?
- python - TextBlob 情绪分析:nan 值
- java - 如何在不影响标题栏的情况下设置 JavaFX 窗口/舞台的不透明度?
- python - 为什么 any() 函数返回 False?