求python 中if 里如何设定一个值的范围
if number == "105": # add ""
print "Right! However you eat too much apple! GAME OEVER. you killed by: apple."
elif number in range (100, 110):
print "Gass again! you are near the right answer!"
again = raw_input (">")
if again == "105":
print "Right! However you eat too much apple! GAME OEVER. you killed by: apple."
else:
print "Wrong! GAME OVER. you killed by: droping apple!"
else:
print "Wrong! GAME OVER. you killed by: droping apple!"
我输入了106 但是它没有进到number in range (100, 110),而是直接显示else里的内容了 展开
number = raw_input (">")。
变量名没办法返回,因为变量名程序不知道,也没有意义。如果你想让程序记住变量名,那就把变量名当做一个变量,但拥有一个变量名你拿不到。
将简单的条件写在前面罗。
if i>3 and sqrt(i)==int(sqrt(i)):
if 的表达式如果可以拆分为多个以and/or子表达式,会按顺序进行计算,and连接的情况下,得到一个False即不计算后面的表达式了,or连接的情况下,得到一个True就不计算后面的了。所以这可以提高一点速度。
扩展资料:
1、如果是函数定义中参数前的*表示的是将调用时的多个参数放入元组中,**则表示将调用函数时的关键字参数放入一个字典中。
1)如定义以下函数
def func(*args):print(args)
当用func(1,2,3)调用函数时,参数args就是元组(1,2,3)
2)如定义以下函数
def func(**args):print(args)
当用func(a=1,b=2)调用函数时,参数args将会是字典{'a':1,'b':2}
2、如果是在函数调用中,*args表示将可迭代对象扩展为函数的参数列表。
1)args=(1,2,3)
func=(*args)
等价于函数调用func(1,2,3)
函数调用的**表示将字典扩展为关键字参数
2)args={'a':1,'b':2}
func(**args)
等价于函数调用 func(a=1,b=2)