【发布时间】:2010-01-13 18:14:58
【问题描述】:
if (message.value[0] == "/" or message.value[0] == "\"):
do stuff.
我确定这是一个简单的语法错误,但这个 if 语句有问题。
【问题讨论】:
if (message.value[0] == "/" or message.value[0] == "\"):
do stuff.
我确定这是一个简单的语法错误,但这个 if 语句有问题。
【问题讨论】:
当您只需要检查是否相等时,您还可以简单地使用in 运算符对一系列接受的元素进行成员资格测试:
if message.value[0] in ('/', '\\'):
do_stuff()
【讨论】:
message.value[0] in "/\\":,因为字符串是可迭代的。
message.value[0] 是一个长度为 1 的字符串(是的,我知道,我知道...)。
message 成为空字符串,则成语应为if message.value[:1] in ('/', '\\')。
转义反斜杠:
if message.value[0] == "/" or message.value[0] == "\\":
反斜杠 (\) 字符用于 转义字符,否则有 特殊含义,例如换行符, 反斜杠本身,或引号 字符。
【讨论】:
试试这样:
if message.value[0] == "/" or message.value[0] == "\\":
do_stuff
【讨论】:
如果 message.value[] 是字符串:
if message.value[0] in ('/', '\'):
do_stuff()
如果不是str
【讨论】:
使用以下代码在 python 中执行 if-else 条件: 在这里,我正在检查字符串的长度。如果长度小于 3,则什么也不做,如果大于 3,则检查最后 3 个字符。如果最后 3 个字符是“ing”,则在末尾添加“ly”,否则在末尾添加“ing”。
代码-
if (len(s)<=3):
return s
elif s[-3:]=="ing":
return s+"ly"
else: return s + "ing"
【讨论】: