Python 缩短许多if子句

Python 缩短许多if子句,python,if-statement,Python,If Statement,我的代码中有这个小东西,但长度是原来的5倍。。。有可能以任何方式缩短它吗 if counter==1: x1=x+0.1 x-=0.1 x_add=0.01 if counter==2: x1=x+0.01 x-=0.01 x_add=0.001 if counter==3: x1=x+0.001 x-=0.001 x_add=0.0001 使用另一个变量怎么样 factor = 1.0 / (10 ** counter)

我的代码中有这个小东西,但长度是原来的5倍。。。有可能以任何方式缩短它吗

if counter==1:
    x1=x+0.1
    x-=0.1
    x_add=0.01
if counter==2:
    x1=x+0.01
    x-=0.01
    x_add=0.001
if counter==3:
    x1=x+0.001
    x-=0.001
    x_add=0.0001

使用另一个变量怎么样

factor = 1.0 / (10 ** counter) # x=1 -> 0.1 ; x=2 ->0.01 ...
x1 = x + factor
x -= factor
x_add = factor / 10

我没有测试这个,但是想法很清楚。如果需要,则无

看起来像
计数器后面的指数为0.1,如下所示:

x1 = x + 0.1 ** counter
x -= 0.1 ** counter
x_add = 0.1 ** (counter + 1)

谢谢这就是我要找的