python - 数字序列的代码 10^8 种可能性
问题描述
如何制作 python 代码,使其打印所有 8 位长的数字序列?(对于 10^8 种可能性)一个例子是 56789504。我尝试了一些 for 循环,但没有奏效:
def my_range(10000000, 99999999, 1):
while start <= end:
yield start
start += step
for x in my_range(1, 10, 0.5):
print(x)
解决方案
range(n,m)
给你整数>=n
和<m
,所以理论上这会给你你想要的:
print(list(range(10_000_000,100_000_000)))
然而,实际上列出每一个数字是行不通的,因为有大量的数字。作为参考,运行这个:
print(list(range(10_000_000,11_000_000)))
我的电脑运行了大约一分钟。您的计算机实际上不太可能打印出 (10_000_000,100_000_000) 中的每个数字
帮助解决此问题的一种方法是建立索引。你可以像这样设置一个范围:
gen = range(10_000_000,100_000_000)
其中,当您编制索引时,您可以提取特定值:
print(gen[345])
结果10_000_345
。您可以像使用范围一样使用范围list
推荐阅读
- python - 计算数据框中的多个值
- javascript - 如何使 Spring、Ajax、Jquery 中的“编辑后结果”位于顶部(第一)?
- java - 想要编写一个类,以便在该类中声明的变量和方法在多个类中使用
- java - 循环依赖迫使我根据状态拆分服务和工厂。可以吗?
- html - XPATH - 在页面下方抓取 div 的内容
- javascript - 如何在加载时删除一个类?
- db2 - 为什么在 DB2 中运行选择查询会抛出字符串“DECFLOAT”错误?
- git - 重新定位不相关分支的一部分
- android - 如何删除对话框的白角(不是 AlertDialog 或 DialogFragment)?
- c# - How to configure cascade delete where there are cycles and multiple cascade paths