gpt4 book ai didi

python - 当 IF 语句为假时为变量赋值会导致 Python 出错

转载 作者:行者123 更新时间:2023-12-05 08:45:23 25 4
gpt4 key购买 nike

我正在用 Python 编写一个函数,它应该在字符串中搜索子字符串,然后将子字符串的索引分配给变量。如果未找到子字符串,我想将 -1 分配给变量以在其他地方用作停止代码。但是我得到一个我不明白的错误。这是代码的简化版本:

test = "abc"
search_str = "z"
index_search_str = test.index(search_str) if search_str in test else index_search_str = -1

如果我运行这段代码,index_search_str 的值应该是 -1,但我却得到了这个错误(使用 PyCharm):

 index_search_str = test.index(search_str) if search_str in test else index_search_str = -1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='?

但是如果我把= -1改成:= -1,还是报错。我错过了什么?

最佳答案

我认为,在使用三元运算符时,应该返回值。

test = "azbc"
search_str = "z"
index_search_str = test.index(search_str) if search_str in test else -1

print(index_search_str) # print value maybe "1"

关于python - 当 IF 语句为假时为变量赋值会导致 Python 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73008579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com