“&” 、“|”的if条件句易错点

错误代码1:

list if city ==""
replace city ="涪陵市" if stkcd ==688 & year==1997|1998

条件.png

知道错误原因吗?

replace city_office="涪陵市" if stkcd ==688 & year==1997|year==1998

错误代码2

|year==1998也补充完整呢?

5CL0aR.png

还是不行(•́へ•́╬) Why???

代码其他部分没有问题,问题可能出现在了年份的书写上。
每个&和|都是平级,所以它把stkcd 688 & year1997 1997年这支股票、year==1998 1998年所有股票的给replace了!??

正确做法

replace city_office="涪陵市" if stkcd ==688 & (year==1997|year==1998)

不是同级的条件,记得加括号以区分。

成功.png

posted @ 2021-10-08 16:08  将军练码  阅读(507)  评论(0)    收藏  举报