它们应该是不相等的

时间:2017-08-14 14:38:00

标签: python-3.x

这是一段要求用户输入的代码片段。问题是对当月的评估。如果输入当前月份,则gooddate应为= 0.由于某种原因,他们的评估不相同。我尝试使变量整数和字符串,但由于某种原因08当前月份不等于08。如果不够清楚,请告诉我。

#include <Rcpp.h>
using namespace Rcpp;

// [[Rcpp::export]]
IntegerVector toInt(RObject x) {
  return as<IntegerVector>(x);
}


> toInt(c(1.5, 2.4))  # I would like a warning
[1] 1 2

> toInt(1:2 + 1)      # No need of warning
[1] 2 3

2 个答案:

答案 0 :(得分:0)

Python中的字符串比较并不像您所做的那样简单(if month == x[0])。但您可以使用关键字in作为解决方法来执行此操作:

if month in x[0]:
    gooddate1 = 0

(并且您必须为gooddate1编制索引,否则它不在else的情况下,而gooddate将始终为1.)

答案 1 :(得分:0)

问题似乎是你忘了缩进倒数第二行:gooddate1 = 1。所以现在gooddate1将会是1而不是0。

您可以使用==if month == x[0]是比较字符串的好方法。