Python如何在bool函数中取值

bool是Boolean的缩写,只有真(True)和假(False)两种取值

bool函数只有一个参数,并根据这个参数的值返回真或者假。

1.当对数字使用bool函数时,0返回假(False),任何其他值都返回真。

>>> bool(0)
False
>>> bool(1)
True
>>> bool(-1)
True
>>> bool(21334)
True

2.当对字符串使用bool函数时,对于没有值的字符串(也就是None或者空字符串)返回False,否则返回True。

>>> bool('')
False
>>> bool(None)
False
>>> bool('asd')
True
>>> bool('hello')
True

3.bool函数对于空的列表,字典和元祖返回False,否则返回True。

>>> a = []
>>> bool(a)
False
>>> a.append(1)
>>> bool(a)
True

4.用bool函数来判断一个值是否已经被设置。

>>> x = raw_input('Please enter a number :')
Please enter a number :
>>> bool(x.strip())
False
>>> x = raw_input('Please enter a number :')
Please enter a number :4
>>> bool(x.strip())
True

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java中Boolean与字符串或者数字1和0的转换实例

    mysql有个字段是bit,只存储1和0,是二进制存储,那么在java的dao层如何映射成boolean呢 @Column(name="is_standard") private boolean isStandard; public void setIsStandard(boolean isStandard){ this.isStandard = isStandard; } public boolean getIsStandard(){ return isStandard; } 其实就

  • 对Python2与Python3中__bool__方法的差异详解

    学习Python面向对象编程的时候,遇到了一个很有意思的小问题.Python的__bool__方法不起作用的问题. 我反复读了我手中的教程,确认了我写的代码应该管用.可是在测试的时候却一直不通过,后来发现我实现的__bool__方法似乎并不是Python本身的接口. 代码如下: class Demo(): def __init__(self,value = 0): self.value = value def __bool__(self): return bool(self.value > 5)

  • Django错误:TypeError at / 'bool' object is not callable解决

    使用 Django自带的 auth 用户验证功能,编写函数,使用 is_authenticated 检查用户是否登录,结果报错: TypeError at / 'bool' object is not callable 编写函数如下: def index(request, pid=None, del_pass=None): if request.user.is_authenticated(): username = request.user.username useremail = reques

  • JS字符串false转boolean的方法(推荐)

    大家都知道在JS的世界里, 0.-0.null."".false.undefined 或 NaN,这些都可以自动转化为布尔的 false,那么字符串的"false"是不是false呢,答案是否定的,if("false") 来判断的话,是等于true的 所以今天遇到个SB问题,就是后台velocity往前台传参,大家一般都是这么写. 0.背景 var hasAuth = $!auth ; // 这个auth就是利用velocity传到前台的 这么写

  • js中bool值的转换及“&&”、“||”、 “!!”详解

    前言 首先需要知道的是,js中有6个值为false,分别是: 0, '', null, undefined, NaN 和 false, 其他(包括{}, [], Infinity)为true. 可以使用Boolean()函数或是两次取非就能获得对象的布尔值,例如Boolean(undefined)和!!undefined同样能取得布尔值false, 对于0, '', null, undefined, NaN,{}, [], Infinity求布尔值,分别是false false false fa

  • Python中使用Boolean操作符做真值测试实例

    在Python中,任何类型的对象都可以做真值测试,并且保证返回True或者False. 以下几种值(不论类型)在真值测试中返回False: 1.None 2.False 3.任何类型的数字0,包括0,0.0,0L,0j 4.空的序列(sequence)或者映射(mapping)类型对象 5.对于用户自定义类型的对象,如果其类定义了__nonzero__() 或者 __len__()特殊方法并且返回False或者0 对于最后一条规则,有几点需要说明: 1.如果类没有定义这两个方法中的任何一个,则这

  • 在python中bool函数的取值方法

    bool是Boolean的缩写,只有真(True)和假(False)两种取值 bool函数只有一个参数,并根据这个参数的值返回真或者假. 1.当对数字使用bool函数时,0返回假(False),任何其他值都返回真. >>> bool(0) False >>> bool(1) True >>> bool(-1) True >>> bool(21334) True 2.当对字符串使用bool函数时,对于没有值的字符串(也就是None或者空

  • 让Django的BooleanField支持字符串形式的输入方式

    再Django中,你可以把字符串形式的数值赋值给IntegerField,然后Django会默认把字符串转换成int. 但是BooleanField则不行,BooleanField只能接受True和False,或者0和1(BTW:在python中True即是1,False即是0). 这对于很多网络参数上传的场景很不利,因为很多时候我们处于方便会将布尔型参数转换成字符串形式来上传. 一个典型的场景是在使用Swfit的Alamofire框架中的upload来上传Multipartform时,由于fo

  • Python如何在bool函数中取值

    bool是Boolean的缩写,只有真(True)和假(False)两种取值 bool函数只有一个参数,并根据这个参数的值返回真或者假. 1.当对数字使用bool函数时,0返回假(False),任何其他值都返回真. >>> bool(0) False >>> bool(1) True >>> bool(-1) True >>> bool(21334) True 2.当对字符串使用bool函数时,对于没有值的字符串(也就是None或者空

  • Python 从列表中取值和取索引的方法

    如下所示: name_list["zhangsan","lisi","wangwu"] #1.取值 print(name_list[0]) print(name_list[1]) print(name_list[2]) #2.取索引 print(name_list.index("lisi")) #3.修改 name_list[1]="李四" #4.增加数据 name_list.append("王小

  • python 字典中取值的两种方法小结

    如下所示: a={'name':'tony','sex':'male'} 获得name的值的方式有两种 print a['name'],type(a['name']) print a.get('name'),type(a.get('name')) 发现这两个结果完全一致,并没有任何的差异. 怎么选择这两个不同的字典取值方式呢? 如果字典已知,我们可以任选一个,而当我们不确定字典中是否存在某个键时,我之前的做法如下 if 'age' in a.keys(): print a['age'] 因为不先

  • Python开启线程,在函数中开线程的实例

    逻辑处理上分成了多个模块,为了提高效率,前一个模块处理完调用后一个模块操作时使用多线程 我这里遇到的情形是前面取数据后面存到mysql,发现单线程效率很低,改为取数据后开线程存到mysql 开启线程之后性能提升一倍,同时用信号量做线程同步,控制数据库同时连接数 这里只是简单的一个demo,主要是开线程的处理方式,在自己类里面的函数中开启线程,并用自己类的成员函数做线程运行函数. #coding=utf-8 import threading class Test: __init = 1 def _

  • python列表切片和嵌套列表取值操作详解

    给出列表切片的格式: [开头元素::步长] # 输出直到最后一个元素,(最后一个冒号和步长可以省略,下同) [开头元素:结尾元素(不含):步长] # 其中,-1表示list最后一个元素 首先来看最简单的单一列表: a = [1,2,3,4] a[:] a[::] a[:3] a[1:3:2] a[3] 输出依次为: [1,2,3,4] [1,2,3,4] [1,2,3] [2] 4 注意,这里只有最后一个输出是不带[]的,表明只有最后一个输出是元素,其他在切片中只用了:符号的输出均为list,不

  • Python 实现过滤掉列表中唯一值

    目录 1.filter_unique 2.collections.Counter 3.列表推导式 4.filter_non_unique 1.filter_unique from collections import Counter def filter_unique(lst): return [item for item, count in Counter(lst).items() if count > 1] # EXAMPLES filter_unique([1, 2, 2, 3, 4, 4

  • python接口测试返回数据为字典取值方式

    目录 接口测试返回数据为字典取值 实例 python接口测试--sign签名 接口签名规范 实现代码 接口测试返回数据为字典取值 接口测试通常需要校验返回数据跟预期结果是否一致,这个时候如果返回数据为字典,那么我们要拿到我们想要的key对应的values时,需巧妙的运用dict.keys().dict.values()和for循环,以及列表相关知识点. 实例 这是我调接口返回的数据,该数据为dict类型,我的目标是要拿到account. #接口返回的数据: api_result = {'code

  • 百度编辑器从Json对象中取值,完成初次渲染,在编辑器内画表格

    第一次做企业级应用,感觉一点:对逻辑必须要非常明确,而且有了很多与之前不一样的概念. 在百度编辑器中,如何完成从服务器取值,来渲染出表格?这里需要先console.log(editor);在官方API中已经告诉我们写入的方法是setContent(),这里只要能传入我们最终拼好的的字符串,即可以在初始化中,绘制出我们想要的任何节点. 再send()完成之后,onreadystatechange = function(){},先上一段AJAX的代码.这段AJAX是消除游览器兼容,从尼古拉斯的书中学

  • python dataframe实现统计行列中零值的个数

    目录 dataframe统计行列中零值的个数 按行统计,返回为一个series: 找出列表中小于0的数 1.列表推导式 2.filte()函数 dataframe统计行列中零值的个数 按行统计,返回为一个series: (df == 0).astype(int).sum(axis=1) 找出列表中小于0的数 1.列表推导式 lst = [2,4,-7,19,-2,-1,45] lst_1 = [i for i in lst if i <0] print(lst_1) 2.filte()函数 ls

随机推荐