所以,这是在我的试卷中,我真的很困惑
def num_input():
num1 = input("num1: ")
num2 = input("num2: ")
num1 = int(num2)*2.5
num2 = int(num1)*1.5
print("num1:", num1, "num2:", num2)
num_input()
说num1 = 60,而num2 = 18,新数字不应该是:
num1: 45
num2: 90
但为什么输出:
num1: 45
num2: 67.5
答案 0 :(得分:1)
好吧,当你计算
num1 = int(num2)*2.5
' int(num2)* 2.5'的值被分配给num1。在这个阶段,num1有一个新值,它是对上述结果的评价,而不再是60。
将代码改为:
def num_input():
num1 = input("num1: ")
num2 = input("num2: ")
value1 = int(num2)*2.5
value2 = int(num1)*1.5
print("num1:", value1, "num2:", value2)
num_input()
答案 1 :(得分:1)
num1 = input("num1: ") # 60
num2 = input("num2: ") # 18
num1 = int(num2)*2.5 # 18 * 2.5 = 45
num2 = int(num1)*1.5 # 45 * 1.5 = 67.5
` print("num1:", num1, "num2:", num2)
答案 2 :(得分:1)
您可以使用就地交换来解决此问题:
contour(xx,yy,zz,add=T,col="black",lwd=2,levels=cumlev1,labels=clev)
contour(xxx,yyy,zzz,add=T,col="grey",lwd=1,levels=cumlev2,drawlabels=F)
答案 3 :(得分:0)
在num2中,你在数学运算之后将num1的结果相乘而不是之前,当你写“num1 =”时,你在“num1”变量记忆位置内分配一个新值。