首页 > 解决方案 > 一个接一个地打印数字而不将它们加在一起Python

问题描述

我刚开始学习 Python,我想将我的一个代码转换为这种语言。我有一个小问题我无法解决。我的脚本必须生成随机数并一个接一个地打印它们而不将它们加在一起。

time = random.randint(1000000000,9999999999)
no_hash = time+random.randint(1,100)+random.randint(1,10000)+random.randint(1,10000000)

示例输出 4245200583 但我只需要这样:423694030332415251234。正如您看到的将数字加在一起的代码(因为它们之间有 +),但我不想将数字加在一起只是打印它们。

标签: python

解决方案


您的每个值都是一个int,因此+将实现整数加法。您需要将每个转换intstr第一个。

您可以使用各种字符串格式化操作隐式执行此操作,例如

time = random.randint(1000000000,9999999999)
no_hash = f'{time}{random.randint(1,100)}{random.randint(1,10000)}{random.randint(1,10000000)}'

或明确加入使用''.join

time = random.randint(1000000000,9999999999)
no_hash = ''.join([str(x) for x in [time, random.randint(1, 100), random.randint(1,10000), random.randint(1,1000000)]])

推荐阅读