0

TrueまたはFalseブール値に小さな問題があります。

weekend入力として文字列を受け取り、ブール値などを返すプロシージャをTrue if 'Saturday' or 'Sunday'定義しましたFalse

これが私のweekend機能です:

def weekend(day):
    if day == 'Saturday' or day == 'Sunday':
        return "True"
    else:
        return "False"

ここに私の出力があります:

>>>print weekend('Monday')
False
>>>print weekend('Saturday')
True
>>>print weekend('July')
False

しかし、私のコードでわかるように、文字列を返していますが、 Boolean を返したいですTrue or False

どうやってやるの?

ありがとう。

4

5 に答える 5

6

これを試して:

def weekend(day):
    if day == 'Saturday' or day == 'Sunday':
        return True
    else:
        return False

またはこれ:

def weekend(day):
    return day == 'Saturday' or day == 'Sunday'

またはさらに簡単です:

def weekend(day):
    return day in ('Saturday', 'Sunday')

とにかく: Python では、ブール値は引用符なしのTrueandです。ただし、いくつかの偽のFalseが存在することも知っています。つまり、条件で使用された場合とまったく同じように動作する値です。例: 、、、、。False""[]None{}0()

于 2013-08-15T15:33:32.573 に答える
0
def weekend(day):
    if day == 'Saturday' or day == 'Sunday':
        return True
    else:
        return False

return "True" と return "False" を実行しているため、ブール値ではなく文字列になります

于 2013-08-15T15:35:02.440 に答える
0

String の代わりに Boolean を返したい場合は、''True と False を囲んでいる引用符を取り除きます。

これを試して:

def weekend(day):
    """ Return True if day is Saturday or Sunday otherwise False."""

    return day in ('saturday', 'sunday'):

または私の前に他の人が言ったように:

def weekend(day):
    """ Return True if day is Saturday or Sunday otherwise False."""

    return day == 'Saturday' or day == 'Sunday' 
于 2015-07-12T18:31:15.470 に答える