假设我有一个数字 x,使得 x.length = 500。假设在位置 5 和 8,从左边开始,我想插入一个数字。但我想插入一个数字,使其遍历所有数字。所以本质上它经历了所有 10^2 种可能性。
然后我想遍历所有可能性并执行“if 语句”以返回正确的语句。
我考虑过将其更改为字符串,将其插入到我想要的位置,然后将其更改回数字。但我认为这可能效率很低。然后如果我想检查所有的数字,那就更加低效了。
我非常关心效率,因为我的目标是插入 2 个以上的数字。我想要 7 或 8 号,位置 125、315 等等。这是很大的 (10^8)。我也想再次检查所有这些数字。
我还没有编写代码,因为我不知道如何正确地执行此操作。
对不起我的英语
最佳答案
将 500 位数字转换为字符串,然后转换为列表,最后转换回数字
# Here's an example of a long number
big_number = 1111111111111111111111111111111111111111111111111
# Make it a string
big_number_string = str(big_number)
# Add each char to a list
big_num_list = [y for y in big_number_string]
# ['1','1','1','1','1',...]
# Insert '0' at index 10
big_num_list.insert(10, '0')
# [...'1','1','1','0','1',...]
# Join everything together and make it a number again
big_num_new = int(''.join(big_num_list))
print(big_num_new)
>> 11111111110111111111111111111111111111111111111111
关于python - 如何高效地在一个数字中插入大量数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55645722/