当前位置: 首页 > news >正文

网站建设淘宝客遵化网站开发

网站建设淘宝客,遵化网站开发,鞍山网上推广怎么弄?,企业网站免费建设工具while 1 很多初学者都很喜欢使用while 1,原因可能是,1只需要输入一个字符,更加“省事”,可以“偷懒”,并且,1看起来更加简洁明了。 实际上,在python中,while 1与while True是等价的…

while 1

很多初学者都很喜欢使用while 1,原因可能是,1只需要输入一个字符,更加“省事”,可以“偷懒”,并且,1看起来更加简洁明了。

实际上,在python中,while 1while True是等价的,都是布尔真值,这意味着,他们最终的结果都是无限循环。然而,从代码风格和可读性的角度来说,使用while 1是不适合的,正确的做法是使用while True,因为,其明确表达了意图,即“当条件为真时循环”。

相比之下,while 1则没有那么明确,并且,如果while 1可行的话,是不是while 2while 520while "sagegrass"都是可行的呢?如果这样做的话,代码将会陷入到混乱之中。因此,建议总是使用while True

按位代替逻辑

按位操作符

按位操作符,也即&|~,对于其使用,我之前有过详细的介绍,如果不了解的话,可以查看这篇文章,按位操作符的使用

逻辑操作符,也即andornot

按位操作符确实可以操作布尔值,例如:

bool1 = True
bool2 = Falseprint(bool1 & bool2)  # 结果为False
print(bool1 | bool2)  # 结果为True
print(~bool1)  # 结果为-2
print(~bool2)  # 结果为-1

对于~bool1的结果,可能让人大吃一惊,1按位取反以后,怎么不是0呢?怎么会变成-2呢?

实际上,对于任意整数x,~x的结果,应该为-(x + 1),所以对于1,结果为-(1 + 1),所以得到的是-2。

因此,很显然,按位取反不能代替not使用。

逻辑运算符的短路特性

那么,按位与以及按位或的结果确实看起来和逻辑与与逻辑或的结果是相同的,那么,按位与以及按位或可以代替逻辑运算符使用吗?

实际上,逻辑运算符具有短路特性,也即:

A and B时:如果A为False,则立即返回False,不再继续对B求值。

A or B时:如果A为True,则立即返回True,不再继续对B求值。

利用这个特性,可以写出一些专门的代码,例如:

# 除以0是不正确的,会触发异常# 如果使用逻辑运算符and,由于在条件False时就停止了,因此不会触发异常
if False and (1 / 0):pass# 如果使用按位运算符&,按位运算符没有短路特性,因此,会触发异常
if False & (1 / 0):pass

因此,按位运算符无法使用逻辑运算符的短路特性。

非布尔值的情况

如果,我们遇到了本身非布尔值,而是后续转为布尔值的情况,例如:

a = 1
b = 2print(a and b)  # 结果为True
print(a & b)  # 结果为0

可以看到,这里明显使用按位操作符就是不正确的了,他与我们希望得到的结果是完全不同的,除非改为:

a = 1 
b = 2print(bool(a) & bool(b))

因此,综合上述情况,按位操作符不应该,也不建议代替逻辑运算符使用。

命题逻辑的运算律

逻辑运算律

在数学中,运算律是一些基本的规则,用于对命题进行逻辑操作。

应用逻辑运算律

python中的逻辑运算符同样也遵循这些运算律,因此,可以应用到程序中。

例如,对于德摩根律,这些两种形式是等价的:

if not a or not b:passif not (a and b):pass

在实际使用中,可能是这样的,例如,对于一个用户登陆的情况:

username = request.get("username")  # 尝试取出用户名,可能有,也可能没有
password = request.get("password")  # 尝试取出密码,可能有,也可能没有# 按照正常思路,理解为“如果没有用户名或者没有密码”
if not username or not password:pass# 根据德摩根率,可以简写
if not (username and password):pass

 

http://www.yayakq.cn/news/291720/

相关文章:

  • dw旅游网站怎么做connect wordpress 主题
  • 辽宁网站建设找哪家网站外链建设工作总结
  • 做企业网站用drupal7大型建设网站
  • 哪里购买网站空间网站建设大作业论文
  • 大型网站开发语言二级目录 网站
  • 网站建设岗位招聘arukas搭建wordpress
  • 担保公司网站建设方案自适应网站价格
  • 福建做网站公司越秀低价网站建设
  • 常州市建设局网站北京小企业网站建设
  • 清苑网站建设邢台移动网站设计
  • 看房子的网站深圳教育科技网站建设
  • 国外做直播网站seo思维
  • 沈阳做网站的公司排名深圳去聋哑做义工申请网站
  • 深圳做网站推广公司seo网络推广是干嘛的
  • 建设网站是什么关系微信会员卡小程序
  • 天水建设局网站渣土治理成都广告牌制作厂家
  • 网络推广网站建设软件定制自己电脑做网站 带宽
  • 个人空间网站建设报告wordpress主题 淘宝客
  • 我想找网站帮忙做宣传wordpress 免费 旅游
  • php网站超市源码下载邯郸seo优化
  • 物流网站开发做外贸网站推广什么比较好
  • 网站镜像 cdn永远免费的域名
  • 学习网站建设难吗wordpress中文模板下载地址
  • 互联网网站开发有哪些职位wordpress 下载页插件下载
  • 自建网站服务器备案网页翻译成中文
  • 常用的网页编辑软件是什么关键字优化策略
  • 外贸网站推广机构网站图片速度
  • 郑州网站备案地址广西学校论坛网站建设
  • 域名建设网站h5网页设计模板
  • 安徽电子学会网站建设深圳企业seo