以下简短python
脚本:
var1 = '7f0000000000000000000000000000000000000000000000000000000000000002'
var2 = '01'
output = 'evm --code ' + var1 + var1 + var2 + ' run'
print(output)
能够生成以下字符串:
evm --code 7f00000000000000000000000000000000000000000000000000000000000000027f000000000000000000000000000000000000000000000000000000000000000201 run
但是,我想生成字符串,其中var1
可以附加到输出字符串的最左侧,以获得预先指定的(参数化)次数。对应于每次我们将var1
添加到最左侧时,我想将var2
添加到最右侧相同的次数。
因此,以上述输出字符串作为基线,如果我们选择3
作为参数,我们的新output
字符串应呈现如下:
evm --debug --code 7f00000000000000000000000000000000000000000000000000000000000000027f00000000000000000000000000000000000000000000000000000000000000027f00000000000000000000000000000000000000000000000000000000000000027f00000000000000000000000000000000000000000000000000000000000000027f000000000000000000000000000000000000000000000000000000000000000201010101 run
我如何控制这些字符串的重复,如上所述将它们附加到该基本字符串,并带有变量?
答案 0 :(得分:3)
您可以在字符串上使用乘数运算符,例如:
repeat = 3
output = 'evm --code ' + var1 * repeat + var2 * repeat + ' run'
答案 1 :(得分:1)
在python中,你可以将一个字符串乘以一个int,重复它给定的次数:
someString = "01"
someInt = 3
someString * someInt
将输出:
'010101'
知道这一点,你的问题解决起来应该是微不足道的。例如:
output = "evm --code %s%s run" % (var1 * n, var2 * n)
n
为正整数。
注意:上面,我使用了一个字符串格式,这在很多方面(并且不易出错)比简单连接更好。