我正在尝试在传递一行代码后进行变量更新。我遇到的问题是,一旦传递了该行代码然后再次打印,该变量就是默认值,在本例中为 10。 我不知道我是不是做错了什么,但我就是看不出我失败的地方,也许是因为我是初学者。在寻求帮助之前尝试了我能想到的一切,但此时我很绝望。谢谢。
$currentMonth = '04';
$firstDate = new DateTime('2021-03-28');
$secondDate = new DateTime('2021-04-15');
$firstDateMonth = $firstDate->format('m');
$secondDateMonth = $secondDate->format('m');
if ($currentMonth === $firstDateMonth && $currentMonth === $secondDateMonth) {
$diff = $secondDate->format('j') - $firstDate->format('j');
} else {
$diff = $currentMonth === $secondDateMonth
? $secondDate->format('j')
: null;
}
答案 0 :(得分:0)
注意我是如何在你执行输出的地方执行计算的。我将输出移到计算下方。
number = 10
def numberFun(question,valid=("ADD","REM")):
while (answer := input(question)) and answer not in valid:
print(f"Please, choose between {valid}.")
return answer
print(f"{number}: before updating.")
numberAction = numberFun("You want to add or remove one?\n")
if numberAction == "ADD":
number = number + 1
elif numberAction == "REM":
number = number - 1
print(number)
print(f"{number} : after updating.")
答案 1 :(得分:0)
这是因为您没有更新存储在 number
中的值。我的猜测是您试图在 if
/elif
子句中这样做;如果是这种情况,这应该有效:
number = 10
def numberFun(question,valid=("ADD","REM")):
while (answer := input(question)) and answer not in valid:
print(f"Please, choose between {valid}.")
return answer
print(f"{number}: before updating.")
numberAction = numberFun("You want to add or remove one?\n")
if numberAction == "ADD":
number += 1 # equivalent to 'number = number + 1'
elif numberAction == "REM":
number -= 1 # equivalent to 'number = number - 1'
print(number)
print(f"{number} : after updating.")
最初,您只是在某些操作后打印 number
。要更改 number
中的值,您需要为变量重新分配一些值。
答案 2 :(得分:0)
要从变量 num
中加或减 1,您需要对值进行加法或减法运算,并将其存储在同一变量中以“更新”它。
在您的代码中,在第 12 行和第 14 行,您分别执行加法和减法,但您打印结果而不是将结果存储在变量 number
中,变量 print(number + 1)
将“更新”预存储值,在此案例是10。
因此,将第 12 行中的 number += 1
替换为 print(number - 1)
以将前一个值加 1,并将第 14 行中的 number -= 1
替换为 number
以减 1 以“更新”根据用户的选择存储的值。
然后,在最后一行打印数字变量时,它将显示变量 number = 10
def numberFun(question,valid=("ADD","REM")):
while (answer := input(question)) and answer not in valid:
print(f"Please, choose between {valid}.")
return answer
print(f"{number}: before updating.")
numberAction = numberFun("You want to add or remove one?\n")
if numberAction == "ADD":
number += 1
elif numberAction == "REM":
number -= 1
print(f"{number} : after updating.")
的“更新”值
[{"id":"2698","psp":"Paypal"},{"id":"2699","psp":"Unknown"},{"id":"2677","psp":"Stripe"},{"id":"2678","psp":"AmazonPay"}]