第二节 Python基础之变量,运算符,if语句,while和for循环语句
我们在上一节中,我们发现当我们用字符串进行一些功能处理的时候,我们都是把整个字符串写下来的,比如"jasonhy".startwith("j"),如果我们在程序中,很多地方用到"jasonhy"的时候,每个都这样写的话,代码看起来就很low了,而且你有时候还有可能写错,再有一个就是,如果现在需求改变了,不再是"jasonhy"里,变成了"Jasonhy",那这个时候你是不是得每个地方都要改呢?这个工作量就可想而知。为了方便我们代码的可读性,可维护性,我们引入了变量和运算符。
变量,只能由字,数字以及下划线组成,而且不能用数字开头,不能使用Python里面的关键字,最好也不要和Python里的内置函数重复。
运算符,包括:
算术运算符
比较运算符
赋值运算符
逻辑运算符
位运算符
成员运算符
身份运算符
我们先来看算术运算符,简单说就是我们熟悉的加减乘除:+ - × /,除了这些,Python里边还有取模运算(%),幂运算(××),取商运算(//),这里只示范后面三个:
取模(%):也就是余数
print(10%3)
输出结果是:
1
幂运算(××):也就是我们说的次方
print(2**3)
输出结果是:
8
取商(//):
print(10 // 3)
输出结果是:
3
比较运算符,就是我们常见的大于(或大于等于)(>/>=),小于(或小于等于)(</<=),不等于(!=),等于(==),返回结果是True和False,示范一个 == :
print(10 == 3)
输出结果是:
False
赋值运算符,简单的赋值运算符就是 = ,还有就是:加法赋值(+=),减法赋值(-=),乘法赋值(×=),除法赋值(/=),取模赋值(%=),幂赋值(××=),取商赋值(//=),=的话,就直接将右边的值赋给左边的变量,比如var = 18,将18赋给了var,结果如下:
var = 18
print(var)
输出结果是;
18
其他赋值运算符,先进行左边的运算,再=运算,比如 var = 18,var += 1(先进行18 + 1算术运算,再进行=运算),结果如下:
var = 18;
var += 1
print(var)
输出结果是:
19
逻辑运算符,与运算(and),或运算(or),非运算(not),判断的结果也是True和False,and运算的时候,所有的是True才返回True,or运算只要有一个True就会返回True,not运算取反。示例如下:
va = 18
vb = 19
print(va == 18 and vb == 19)
输出结果是:
True
print(va == 1 and vb == 19)
输出结果是:
False
va = 18
vb = 19
print(va == 18 or vb == 19)
输出结果是:
True
print(va == 1 or vb == 19)
输出结果是:
True
print(va == 1 or vb == 1)
输出结果是:
False
位运算符,就是把数字按照二进制来进行运算的:
位与(&):两个相应位都是1,结果是1,否则是0
位或(|):两个相应位只要有一个是1,结果就是1,否则是0
位异(^):两个相应位只要不相同结果就是1,否则是0
位取反(-):就是对每个为进行取反,1变成0,0变成1
左移动(<<):各二进制位向左移动若干位,移动之后,高位丢弃,低位补0
右移动(>>):各二进制位向右移动若干位
成员运算符,就是用来测试一系列成员是否包含在内,比如字符串,列表(后面将),元组(后面讲):
in:如果在指定的序列中找到就返回True
not in:反着取
案例:
vstr = "jasonhy"
print("j" in vstr)
print("J" in vstr)
输出结果是:
①True
②False
身份运算符,比较两个对象是否相同:
is:判断两个标识符是不是引用同一个对象,是的话,返回True
is not:反着取
案例
vstrA = "jasonhy"
vstrB = "jasonhy"
print(vstrA is vstrB)
vstrB = "Jasonhy"
print(vstrA is vstrB)
输出结果是:
①True
②False
if语句,格式如下:
第一种:
if 条件:
代码块
else:
代码块
第二种:
if 条件:
代码块
elif 条件:
代码块
else:
代码块
案例:
nameA = "jasonhy"
nameB = "jasonhy"
if (nameA is nameB):
print("名字一样,同一个人")
else:
print("名字不一样,不是同一个人")
nameA = "jasonhy"
nameB = "Jasonhy"
nameC = "jasonhy"
if (nameA is nameB):
print("nameB和nameA是同一个人")
elif (nameA is nameC):
print("nameC和nameA是同一个人")
else:
print("他们看着都像是一样的,但是名字不一样,不是同一个人")
while循环语句:
格式:
while 条件:
代码块
案例:
time = 5
while time > 0:
print("开始倒计时==>%d"%time)
time -= 1
print("欢迎您来到jasonhy的Python博客")
for循环语句:
格式:
for 子元素 in 序列:
代码块
案例:
name = "ABC123Jasonhy"
count = 1
for vn in name:
if("" == vn):
print("你终于猜对了,是2")
break
else:
print("你已经猜了%d次"%count)
count += 1
print("游戏结束")
注:在循环语句中,break表示停止循环,continue表示跳过本次循环,执行下次循环
第二节 Python基础之变量,运算符,if语句,while和for循环语句的更多相关文章
- 第二章 python基础(一)
第一节 Python文件类型 源代码 Python源代码的文件以“py”为扩展名,由Python程序解释,不需要编译 字节代码 Python源文件经编译后生成的扩展名为“pyc”的文件 编译方法 im ...
- python基础语法(运算符及优先级)
python基础语法(运算符及优先级) python语言支持的运算符类型 算数运算符 假设变量a为10,变量b为21 算数符 描述 实例 + 加-两个对象相加 a+b结果31 - 减-得到一个负数或者 ...
- Python学习笔记(二):条件控制语句与循环语句及常用函数的用法
总结的内容: 1.条件控制语句 2.while循环语句 3.for循环语句 4.函数的用法 一.条件控制语句 1.介绍 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决 ...
- javascript基础入门之js中的结构分支与循环语句
javascript基础入门之js中的结构分支与循环语句 程序的结构①顺序结构:自上而下:②选择(分支)结构:多条路径,根据不同的条件,只执行其中一个:③循环结构:重复某些代码④配合特定的语句实现选择 ...
- python基础之七种运算符
废话不多说,上节说的是数据类型,本篇讲讲数据运算. 在算式"1+2"中,"1"和"2"被称为操作数,"+"被称为运算符 ...
- 第二章----python基础
概要:python是一种计算机编程语言,有自己的一套语法,编译器或者解释器负责把符合语法的程序代码翻译成CPU能识别的机器码,然后执行.python使用缩进来组织代码块,Python程序中大小写是敏感 ...
- python基础--数据类型、运算符、流程控制
原文地址:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143165862 ...
- Python基础 之 变量、用户交互、if条件语句、while循环语句、编码、逻辑运算
一.Python介绍 Python 崇尚优美.清晰.简单 Python是一门动态解释型的强制性定义的语言. 二.编译型和解释型的区别 编译型:一次性将所有与程序编译成二进制文件. 缺点:开发效率低,不 ...
- 第二章 python基础(二)
第九节 函数 函数就是完成特定功能的一个语句组,这组语句可以作为一个单位使用,并且给它取一个名字. 可以通过函数名在程序的不同地方多次执行(这通常叫做函数调用),却不需要在所有地方都重复编写这些语句. ...
随机推荐
- bom与dom的区别
文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口.Document Object Model的历史可以追溯至1990年代后期微 ...
- Openresty 操作Cookie
Openresty 操作cookie共有两种方法: 1.直接操作 1.1 获取Cookie 获取所有cookie: ngx.var.http_cookie, 这里获取的是一个字符串,如果不存在则返回n ...
- React 组件框架
- 设置Delphi默认按utf8格式保存单元文件
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Embarcadero\BDS\19.0\Editor] " ...
- 2019-04-28-day042-HTML初识
GET / HTTP/1.1 Host: 127.0.0.1:9001 Upgrade-Insecure-Requests: 1 Accept: text/html,application/xhtml ...
- wpf binging(三) 绑定方法的返回值
有时候我们不能绑定对象的属性或者成员,我们需要绑定一个对象的方法时 可以用 ObjectDataProvider 比如先声明一个类 含有加法 ObjectDataProvider 的简单使用 以下为综 ...
- 关于cordova+vue打包apk文件无法访问数据接口
作为一个cordova小白,我按照官方文档和网上资料完成了讲vue文件打包到cordova中并打包成apk文件,完成了一个简单app的制作,当我正陶醉于可以自己完成一个app的时候突然发现,我的app ...
- easyui Tree模拟级联勾选cascadeCheck,节点选择,父节点自动选中,节点取消,父节点自动取消选择,节点选择,所有子节点全部选择,节点取消,所有子节点全部取消勾选
最近项目中用到easyui tree,发现tree控件的cascadeCheck有些坑,不像miniui 的tree控件,级联勾选符合业务需求,所以就自己重新改写了onCheck事件,符合业务需求.网 ...
- 工具提高效率 - iterm2
快捷键 command + d, command + shift +d 显示所有记录 ITERM默认设置了终端能保留的历史输出行数,在进行调试时特别不方便,一旦输出过多就无法看到完整的历史记录. 在P ...
- python矩阵的切片(或截取)
矩阵一般有行也有列,所以矩阵的截取也需要包含行和列两个参数. 假设a是一个矩阵,a的截取就可写成:a[起始行:终止行,起始列:终止列],中括号中有一个逗号,逗号前的是为了分割行的,逗号后的是为了分割列 ...