Day03-运算符和表达式

运算符和表达式​

1. 运算符的优先级

  • 尽量不要把一个表达式写的过于复杂,如果遇到复杂的需求,则最好分步运算

  • 不要过多的依赖于运算符的优先级,否则代码的可读性太差,在实际的项目开发中,一般采用()

2 数据类型的转换

python是一种强类型语言:要求运算符两边的操作数必须是同一个类型的,否则必须转换

函数名

函数值

int(x,[基数])

将数字或字符串转换为整数,如果x为浮点数,则自动截断小数部分

float(x)

将x转换成浮点型

str(x)

将x转换成字符串,适合人阅读

bool(x)

转换成bool类型 的True或 False

repr(x)

返回一个对象的String格式,适合机器执行

eval(str)

执行一个字符串表达式,返回计算的结果

tuple(seq)

参数可以是元组、列表或者字典,为字典时,返回字典的key组成的集合

list(s)

将序列转变成一个列表,参数可为元组、字典、列表,为字典时,返回字典的key组成的集合

set(s)

将一个可以迭代对象转变为可变集合,并且去重复,返回结果可以用来计算差集x - y、并集x | y、交集x & y

chr(x)

输入一个ASCII码(0-255),返回一个对应的字符。返回值是当前整数对应的ascii字符。

ord(x)

返回一个字符所对应的码值

数值类型 : int、float、bool

bool -> int -> float

3 编码规范

代码编排

缩进4个空格,不能用tab键和空格混合缩进

所有行限制的最大字符数为79

添加适当的空行

空格

二元运算符两边添加一个空格

逗号、分号、冒号后边留一个空格,前面不留

正确: if x == 4: print(x, y); x, y = y, x
错误:  if x == 4 : print x , y ; x , y = y , x

紧跟在小括号,中括号或者大括号后 不要留空格

正确: spam(ham[1], {eggs: 2})
错误:  spam( ham[ 1 ], { eggs: 2 } )

4 if分支(***)

4.1 单一分支

if 条件表达式:
   【代码块】
【后续代码】
执行流程:如果条件表达式为真,则执行【代码块】。否则不执行,直接执行if语句后面的【后续代码】
注意:
  【代码块】必须缩进
   单if语句可以嵌套

4.2 双向分支

if 条件表达式:
   【语句块A】
else:
   【语句块B】
【后续代码】
执行流程:如果条件表达式为真,执行【语句块A】然后执行【后续代码】,否则执行【语句块B】,然后再执行【后续代码】,二选一,不可能既执行A有执行B
注意:
   【语句块A】和【语句块B】必须缩进
   if-else可以嵌套

4.3 多向条件分支

if 条件1:
   【代码段1】
elif 条件2:
   【代码段2】
............
elif 条件n:
    【代码段n】
else:
  【else语句块】
【后续代码】
执行流程:多选一,如果满足条件1,执行【代码段1】,然后跳出if-elif语句,执行【后续代码】,否则判断是否满足条件2,如果满足执行【代码段2】,然后跳出if-elif语句,执行【后续代码】...。如果所有条件都不满足,执行【else语句块】,然后再执行【后续代码】。
注意:else是可选的,可以写也可以不写。

5 循环(***)

5.1 概念

广义:一个周期现象或者重复出现的情况,这种状态被称为循环

狭义:在满足条件的情况下,反复执行某一段代码,在编程语言中出现的这种现象被称为循环。被反复执行的这段代码被称为循环体

当反复执行某段代码时,需要在合适的时机将循环停止下来,否则会产生死循环

Python中提供的循环语句:while语句,for-in语句

5.2 使用

5.2.1 while语法

while 表达式:
   循环体

工作原理:遇到while语句时,首先计算表达式的值,如果表达式的值为假,则跳过整个while语句,继续执行下面的代码;如果表达式的值为真,则执行循环体

5.2.2 while-else

while 表达式:
    循环体
else:
   【else语句块】

说明:当while语句执行完成之后,执行【else语句块】,如果用break跳出循环则不执行else

5.2.3死循环

在循环语句中,表达式永远为真的循环

while T

while 1:
    #循环体

5.2.4 while语句的嵌套

while 条件1:     #外层循环
     【语句块A】
      while 条件2:   #内存循环
            【语句B】

执行流程:首先判断外层循环的条件1,如果为真,则执行循环体中的【语句块A】,执行内层循环,判断条件2是否成立,如果成立,执行内层循环的【语句块B】,执行完内层循环后,重新判断外层循环条件....

  • 特点:外层循环走一步,内层循环执行一遍

  • 外层循环和内层循环的循环变量必须不同

演示:

打印九九乘法表

5.3. break和continue、exit()

continue 语句用来跳过当前循环的剩余语句,然后重新判断循环条件,开启下一轮循环。continue只能出现在while和for循环中

break用于结束当前循环。只对当前这一重循环起作用。break只能出现在循环中

exit()结束程序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457178.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Eclipse中字母大小写转换快捷键

ctrlshiftx 转为大写 ctrlshifty 转为小写 转载于:https://www.cnblogs.com/stsinghua/p/6418636.html

dedecms代码研究六

今天讲的是dedecms最关键的东西&#xff0c;模板分析啦。也就是dedetag.class.php 里面的ParseTemplet方法 模板解析方法 先看看一个dedecms标签,大家心里有个数&#xff1a; {dede:arclist row10 orderbypubdate typeimage. imgwidth143 imgheight106} <li><a href&q…

Django-session的存放位置

django-session 存放位置 设置session的保存位置&#xff0c;有三种方法&#xff1a; 保存在关系数据库(db)保存在缓存数据库(cache) 或者 关系缓存数据库(cache_db) 保存在文件系统中(file) 第一种 保存在数据库中&#xff1a;需要在 INSTALL_APPS 中添加&#xff1a;djan…

允许多域名跨域 php,PHP设置多域名允许跨域访问

针对 PHP 语言设置多域名允许跨域访问服务器变量&#xff1a;服务器变量存储在 $_SERVER 数组中&#xff0c;在这个数组中有一个特殊的键值&#xff1a;HTTP_ORIGIN。这个键只在跨域的时候才会存在值&#xff0c;同源时为空字符串响应头设置允许某域名访问&#xff1a;access-c…

蚂蚁分类信息系统 5.8 信息浏览量后台自定义设置

mymps 蚂蚁分类信息是一款基于PHPMySQL的建站系统,为在各种服务器上架设分类信息以及地方门户网站提供完美的解决方案. mymps5.8 下载 蚂蚁分类系统 5.8下载 蚂蚁分类系统下载 mymps下载 蚂蚁分类信息系统 5.8 原信息浏览量后台无法自定义&#xff0c;现增加后台自定义浏览量…

MS SQL-Server快捷键

快捷键 功能 CtrlShiftB 生成解决方案 CtrlF7 生成编译 CtrlO 打开文件 CtrlShiftC 显示类视图窗口 CtrlShiftO 打开项目 F4 显示属性窗口 ShiftF4 …

python编写四位数验证码

def verifycode(request):#引入绘图模块from PIL import Image, ImageDraw, ImageFont#引入随机函数模块import random#定义变量&#xff0c;用于画面的背景色、宽、高bgcolor (random.randrange(20, 100), random.randrange(20, 100), random.randrange(20, 100))width 100h…

php 计算数据偏离度,关于偏离度的测算方法

2015年6月技术总结——关于偏离度的测算方法研究院公用事业部 路璐引言《原理》中说“偏离度是指每一种偿债来源与财富创造能力的距离&#xff0c;所体现的是偿债来源对债务安全的保障程度&#xff0c;唯有通过揭示偿债来源与财富创造能力偏离度才能真正区别每一种偿债来源的风…

Django中celery配置总结

情景&#xff1a; 用户发起request&#xff0c;并等待response返回。在本些views中&#xff0c;可能需要执行一段耗时的程序&#xff0c;那么用户就会等待很长时间&#xff0c; 造成不好的用户体验&#xff0c;比如发送邮件、手机验证码等。 使用celery后&#xff0c;情况就不…

AngularJs ng-repeat限制循环次数

重复数组&#xff1a;<ul ng-initname[1,2,3,3]><li ng-repeat"name in name track by $index">{{name}}</li> </ul> 对象&#xff1a; <ul ng-initobj{ a:"aaa", b:"bbb", c:"ccc" }><li ng-repeat…

qml demo分析(customgeometry-贝塞尔曲线)

一、效果展示 本篇文章还是带来一个简单的qt示例分析&#xff0c;且看图1效果。 图1 贝塞尔曲线 二、源码分析 该示例代码所在目录quick\scenegraph\customgeometry&#xff0c;感兴趣的同学可以自己去找&#xff0c;这篇文章我还是主要讲解源码&#xff0c;不涉及其他方面。 废…

php 打包上传的文件,PHP单文件上传原理及上传函数的打包

PHP单文件上传原理及上传函数的封装服务器(临时文件)——>指定目录,当文件进入服务器时它就是临时文件了,这时操作中要用临时文件的名称tmp_name。//在客户端设置上传文件的限制(文件类型和大小)是不安全的&#xff0c;因为客户能通过源代码修改限制&#xff0c;所以在服务端…

celery AttributeError: 'str' object has no attribute 'items'

AttributeError: str object has no attribute items python manage.py celery worker --loglevelinfo 查了好久发现原来是因为以前下的redis版本过高&#xff08; 3.0.1 &#xff09;&#xff0c;重装redis pip install redis2.10.6

equals和==的区别(转)

基本数据类型&#xff0c;也称原始数据类型。byte,short,char,int,long,float,double,boolean&#xff0c;他们之间的比较&#xff0c;应用双等号&#xff08;&#xff09;,比较的是他们的值。 复合数据类型(类) 当他们用&#xff08;&#xff09;进行比较的时候&#xff0c;…

Python 中的range,以及numpy包中的arange函数

range函数函数说明&#xff1a; range(start, stop[, step]) -> range object&#xff0c;根据start与stop指定的范围以及step设定的步长&#xff0c;生成一个序列。  参数含义&#xff1a;start:计数从start开始。默认是从0开始。例如range&#xff08;5&#xff09;等价…

php角色权限安全,php – 安全的chmod权限?

新创建的文件和目录的默认权限由umask环境变量设置.文件的所有者和root可以更改权限.如果您不需要在应用程序中使用chmod,请将其保留在禁用列表中.你应该看看安全性的方式是&#xff1a;现在比我更聪明的人让chmod成为我应用程序中更安全的部分之一.因此,我将花费我的时间使其他…

namespace! 报错

在工程文件中url 定义namespace需要 from django.contrib import admin from django.urls import path,include from django.conf.urls import url urlpatterns [path(admin/, admin.site.urls),url(r^liu/,include(myApp.urls,namespaceapp)), ] 在myApp 的urls中 加这句 a…

test.php.bak,MongoDB热备份工具:解决官方版备份缺陷

贺春旸&#xff0c;凡普金科DBA团队负责人&#xff0c;《MySQL管理之道&#xff1a;性能调优、高可用与监控》第一、二版作者&#xff0c;曾任职于中国移动飞信、安卓机锋网。致力于MariaDB、MongoDB等开源技术的研究&#xff0c;主要负责数据库性能调优、监控和架构设计。工具…

zookeeper工作原理、安装配置、工具命令简介

1 Zookeeper简介Zookeeper 是分布式服务框架&#xff0c;主要是用来解决分布式应用中经常遇到的一些数据管理问题&#xff0c;如&#xff1a;统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等等。 ZooKeeper是一个分布式的&#xff0c;开放源码的分布式应用程序…

流式大数据处理的三种框架:Storm,Spark和Samza

许多分布式计算系统都可以实时或接近实时地处理大数据流。本文将对三种Apache框架分别进行简单介绍&#xff0c;然后尝试快速、高度概述其异同。 Apache Storm 在Storm中&#xff0c;先要设计一个用于实时计算的图状结构&#xff0c;我们称之为拓扑&#xff08;topology&#x…