如何从在 bool 中转换的字符串返回 false

我无法False从 docker(.env) 中返回 settings.py


DEBUG = os.environ.get('DEBUG_MODE')

 DEBUG_MODE=False


蟒蛇返回:


x = False

bool(x)

False

print(bool(x))

False

x = 'False'

print(bool(x))

True

如何返回假?


人到中年有点甜
浏览 176回答 4
4回答

收到一只叮咚

试试看嘛print(eval('False'))看看它在文档eval()中的用法

qq_花开花谢_0

eval一般来说是个坏主意我会用b = False if x == 'False' else True

繁花如伊

任何非空字符串都是真实的,因此bool('False')返回 True。您可以使用一个简单的比较:print(x == 'True')或者你可以ast.literal_eval()用来解析任何 Python 文字。import ast print(ast.literal_eval(x))

白板的微信

任何字符串都是用 ascii 二进制编码的。所以代码x = ' ' ; print(bool(x))    | >>> True   |因为它不是零,即使 x=" " | 其中[“”=空格]如果你想按照你说的做:方法1:[ 类型(x)== str ]:如果 x= "anyString" 则返回 BOOLEAN True ;如果其他类型则返回False方法 2:[ isinstance ( x , str ) ]如果为 true 则返回 BOOLEAN True,用 str(Your_test) 包装它以获取字符串比较方法 3:互补逻辑最初我们给 | x='假'boolean_value = x != '假'打印(布尔值)| >>> 错误双重恭维:boolean_value = x == 'True'打印(布尔值)| >>> 错误
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python