判断语句 、 while循环 、 for循环
判断语句
语法结构
if 条件1:
如果条件1为真,执行语句块
elif 条件2:
如果条件2为真,执行语句块
elif 条件3:
如果条件2为真,执行语句块
elif 条件n:
如果条件n为真,执行语句块
else:
如果上述条件都为假,执行语句块
判断条件是一个分支结构,只会执行一个分支
数据类型也可以作为判断条件。对于数字,任何值为0的数字都是假,非0为真;其他数据类型,非空为真,空为假
if -0.0:
print('值为0,假') # 不打印
if ' ':
print('空格也是一个字符,为真')
if '':
print('空字符串,假') # 不打印
if [10, 20]:
print('非空列表,为真')
if (10, 20):
print('非空元组,为真')
a = 10
b = 20
if a < b:
s = a
else:
s = b
print(s)
#以上判断可以简写为
s1 =a if a < b else b
print(s)
在python中,有非常多的功能,不是直接加载,而是放到了不同的模块文件中,使用模块时,
先通过import导入,然后使用【模块.功能】的方式使用 1.模拟用户登录
vim login.py import getpass
username = input("请输入用户名: ")
passwd = getpass.getpass("请输入密码:") #能够获取用户的输入不在屏幕中显示
if username == "bob" and passwd == '123456':
print("登录成功")
else:
print("登录失败")
2.分数测试
num = int(input('分数:'))
if num >= 60 and num < 70:
print('及格')
elif 70 <= num < 80:
print('良')
elif 80 <= num < 90:
print("好")
elif num >= 90:
print("优秀")
else:
print('你要努力了')
random模块
>>> import random
>>> random.randint(1.100) #随机取出1-100之间的数字
77
>>>random.choice('abcd') #在字符串中取出一项
'd'
>>>random.choice(['aaa', 'bbb', 'ccc']) #在列表中随机取出一项
'bbb'
3.编写石头剪刀布小游戏
import random
win_list = [['石头', '剪刀'],['剪刀', '布'],['布', '石头']]
xuan_xiang = ['石头', '剪刀', '布']
computer = random.choice(xuan_xiang)
player = input('请出拳(石头/剪刀/布): ')
print('player: %s, computer: %s' % (player, computer))
if player == computer:
print("平局")
elif [player, computer] in win_list:
print("你赢了")
else:
print("你输了")
循环语句
如果循环次数未知,使用while循环
如果循环次数已知,使用for循环 语法结构
while 条件:
如果条件为真,执行语句块
语句块执行完毕后,返回到while条件
while后面得条件,也和if的条件完全一样 3.优化石头剪刀布脚本,三局两胜
import random
win_list = [['石头', '剪刀'],['剪刀', '布'],['布', '石头']]
xuan_xiang = ['石头', '剪刀', '布']
#为人机创建计数器
pwin = 0
cwin = 0
while pwin < 2 and cwin < 2:
computer = random.choice(xuan_xiang)
player = input('请出拳(石头/剪刀/布): ')
print('player: %s, computer: %s' % (player, computer))
if player == computer:
print("\033[32;1m平局\033[0m") 颜色:\033[32;1m常量\033[0m
elif [player, computer] in win_list:
print("\033[31;1m你赢了\033[0m")
pwin += 1
else:
print("\033[31;1m你输了\033[0m")
cwin += 1
while循环中还可以包含break子句,循环遇到break将会结束循环
continue语句用于跳过本次循环,回到判断条件处
python的循环语句也有else,当循环被break时,else语句不执行,否则执行 for循环
for循环也有continue/break/else,用法与while完全一样
for循环经常和renge连用
s1 = 'abc'
l1 = ['tom', 'jerry', 'jack', 'rose']
t1 = (10, 20, 30)
d1 = {'name': 'nb', 'age': 20}
for zifu in s1:
print(zifu)
a
b
c
for name in l1:
print(name)
tom
jerry
jack
rose
for i in t1:
print(i)
10
20
30
for key in d1:
print(key, d1[key])
name nb
age 20
for循环经常和renge连用
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(0,10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list(range(10)) #将range转成列表
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>>for i in range(10): #实际使用时,不需要转列表
... print(i)
...
>>> list(range(10)) #10是结束数字,起始值默认为0,结束数字不包含
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list(range(6,11)) #6是起始数字,包含
[6, 7, 8, 9, 10]
>>> list(range(1,11,2)) #步长为2
[1, 3, 5, 7, 9]
>>> list(range(10,0,-1)) #步长为-1
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
列表解析
用于快捷便捷地生成列表解析
>>> [10]
[10]
>>> [10 + 1] #将表达式的结果存入列表
[11]
>>> [10 + 1 for i in range(1,11)] #通过循环控制表达式的计算次数
[11, 11, 11, 11, 11, 11, 11, 11, 11, 11
>>> [10 + i for i in range(1,11)] #表达式可以用循环的变量
[11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
>>> [10 + i for i in range(1,11) if i % 2 == 1] #if作为过滤条件,满足条件的放到列表
[11, 13, 15, 17, 19]
>>>['192.168.4.%s' % i for i in range(255)] #打印1..254的ip
>>>['192.168.4.' +str(i) for i in range(255)]
fib=[0, 1]
n = int(input("请用户输入长度: "))
for i in range(n - 2):
fib.append(fib[-1] + fib[-2])
print(fib)
for i in range(1,4):
print('hello', end='\t')
#打印3个hello,print接受一个end的参数,可以指定使用什么替换\n
print() #打印回车
for a in range(1, 4): #将上面的内容作为一个主体,再运行3遍
for i in range(1,4):
print('hello', end='\t')
#打印3个hello,print接受一个end的参数,可以指定使用什么替换\n
print() #打印回车
99乘法表
for i in range(1,10):
for j in range(1, i + 1):
print('%s * %s = %s' % (j, i, i * j), end= '\t' )
print()
判断语句 、 while循环 、 for循环的更多相关文章
- 1.3if判断语句+while和for循环语句+购物车作业
1.if 语句 if userame=_usename and password=_password: print("welcome user {name} login..."). ...
- VB的判断语句和循环语句
判断语句 •If语句 if语句共有4种写法: 第一种语法: If 条件判断语句 then 程序代码 第二种语法:If 条件判断语句 then 程序代码 else 程式代码 第三种语法: If 条件 ...
- 求1+2+…+n,要求不能使用乘除法、for、while、if、else、s witch、case 等关键字以及条件判断语句(A?B:C)和不用循环/goto/递归输出1~100的10种写法
来源:据说是某一年某个公司的面试题 题目:求1+2+…+n, 要求不能使用乘除法.for.while.if.else.s witch.case 等关键字以及条件判断语句(A?B:C) 分析:这题本来很 ...
- Swift流程控制之循环语句和判断语句详解
Swift提供了所有c类语言的控制流结构.包括for和while循环来执行一个任务多次:if和switch语句来执行确定的条件下不同的分支的代码:break和continue关键字能将运行流程转到你代 ...
- python中的判断语句与循环语句
if语句 每条if语句的核心都是一个值为Ture或False的表达式,这种表达式被称为为条件测试.if语句检查程序当前状态,并据此采取相应的措施.如果条件测试的值为Ture,Python就执行紧跟在i ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- java 判断语句和循环语句
一.判断语句:if和switch if(关系表达式1) { 语句体1; }else if (关系表达式2) { 语句体2; }…else { 语句体n+; } switch(表达式) { case 值 ...
- 前端笔记知识点整合之JavaScript(三)关于条件判断语句、循环语句那点事
一.条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句. JS中有三种语法是可以表示条件分支的 1.1 if……else…… 条件分支的主力语法,这个主力 ...
- 前端笔记之JavaScript(三)关于条件判断语句、循环语句那点事
一.条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句. JS中有三种语法是可以表示条件分支的 1.1 if……else…… 条件分支的主力语法,这个主力语法 ...
- shell脚本判断语句和循环语句
if判断语句 exit跳出判读语句 不加exit的结果 read -n(不换行) 判断是否输入的是数字 read age[[ $age =~ ^[0-9]+$ ]]if [ $? -ne 0 ]; t ...
随机推荐
- C#LeetCode刷题之#617-合并二叉树(Merge Two Binary Trees)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4096 访问. 给定两个二叉树,想象当你将它们中的一个覆盖到另一个 ...
- Broken 2020: 1 靶机
这个靶机的作者脑洞太大了 扫描下端口,就普通的ssh http服务 扫描下目录,发现了一个2个cms目录 进来cms发现是个安装界面,但是后面安装失败,无意返回cms发现出现了一个flag 进入/cm ...
- L1-006 连续因子 天梯
思路: 素数只有1和本身 合数 暴力枚举 把连续因子最大的记录下来 注意: AC代码 //思路: //素数只有1和本身 //合数 暴力枚举 把连续因子最大的记录下来 #include<iostr ...
- 「完整案例」基于Socket开发TCP传输客户端
1 程序界面设计 TCP客户端在上位机开发中应用很广,大多数情况下,上位机软件都是作为一个TCP客户端来与PLC或其他服务器进行通信的.TCP客户端的主要功能就是连接服务器.发送数据.接收数据.断开 ...
- 正则表达式截取xml
$str = '<Ips><GateWayRsp><head><ReferenceID>123</ReferenceID><RspCo ...
- 认证授权:学习OAuth协议
1.什么是OAuth协议? OAUTH协议为用户资源的授权提供了一个安全的.开放而又简易的标准.同时,任何第三方都可以使用OAuth认证服务,任何服务提供商都可以实现自身的OAuth认证服务,因而OA ...
- python字典的概念与基本操作
字典是非常常用的一种数据结构,它与json格式的数据非常相似,核心就是以键值对的形式存储数据,关于Python中的字典做如下四点说明: 1.构造字典对象需要用大括号表示 {},每个字典元素都是以键值对 ...
- CSS动画实例:圆的涟漪扩散
设页面中有<div class="circle "></div>,定义.circle的样式规则绘制一个半径为75px,边框厚度为4px的圆,再定义关键帧,使 ...
- MS建模mmt
一.流程:1.定义好每个原子力场类型:Edit Sets(分组) 2.加H(一般是仅与Al-O八面体中的Al相连的O原子).给H分组 3.“make P1”.校核化学式(正确与否) 4.扩成超晶胞(N ...
- arduino智能循迹小车代码(三个循迹模块)
#include <Servo.h>int leftMotor1 = 3;int leftMotor2 = 5;int rightMotor1 = 6;int rightMotor2 = ...