我希望在python中操作一个字符串,定义为:
bin = 5000
通过将while
循环的每次运行减半。
我能想到的唯一解决方案是将while
循环的数量定义为n
并将字符串用作bin*(1/2)**n
如何定义n
或者我应该寻找其他方法?
答案 0 :(得分:1)
我不确定你要问的是什么,但这些是我提出的两个解决方案。如果你想在while循环的每次迭代中将字符串剪成一半,我会这样做:
string = 'x' * 5000
while len(string) != 1: # can't be cut into whole number anymore
string = string[:len(string)/2]
如果你试图简单地使用while循环将每个迭代的数字减半,我会这样做:
number = 5000
while number != 1: #again, can't be cut into a whole number anymore
number /= 2
答案 1 :(得分:0)
如果我正确理解你的问题,你只是希望while循环的条件是每次迭代都是一半的数字?如果是这样,我发布了一个如何做到这一点的例子。如果没有,请尝试重新解释您的问题。
while bin > 1:
bin = bin * .5