基础知识:if判断、while循环、for循环
今日学习内容
1、if 判断(流程控制的一种)
写重复的代码是程序员最不耻的行为,所以我们需要while循环和for循环 ,^_^!
2、while循环(条件循环)
3、for循环(迭代器循环)
==========================================================
一、if 判断
语法一:if判断
sex = 'female'
age = 32
is_beautiful = True
if sex == 'female' and age == 18 and is_beautiful:
print('Begin your love words:')
print('another code1')
print('another code2')
if判断使用注意事项:if条件紧跟着一个冒号:+回车,pycharm会自动进入到下一行并缩进4个空格,开始进入运行一组代码块。在这里注意中英文输入法对代码“括号、冒号、逗号”这些字符的影响,谨记一定要用英文输入法输入,不然容易出现报错。
语法二:if+else判断
sex = 'female'
age = 18
is_beautiful = True
if sex == 'female' and 16 < age <24 and is_beautiful:
print('Begin your love words.')
else:
print('Say nothing...')
语法三:if+else 的嵌套
sex = 'female'
age = 18
is_beautiful = True
is_success = True
if sex == 'female' and 16 < age <24 and is_beautiful:
print('Begin your love words.')
if is_success:
print('HaHaHa')
else:
print('I hate love,go away!')
else:
print('Say nothing...')
tip:①and 多个条件并过长时,可用‘\+回车’来多行显示,这里不影响语法。
②快捷操作,TAB键 可以进行快捷缩进,比如选中多行一起快捷缩进,要回退的话,按shift+tab组合键。
语法四:if+elif+else
# 输入成绩判断优秀、很好、一般、很差
score = input('Please input your score:')
score = int(score)
if score >= 90:
print('优秀')
elif score >= 80:
print('很好')
elif score >= 70:
print('一般')
else:
print('很差')
小练习:
name = input('请输入您的用户名:')
pwd = input('请输入您的密码:')
':
print('登陆成功')
else:
print('用户名或密码错误')
练习一:用户登陆验证
sgt = 'spueradministrator'
sgf = 'systemadministrator'
shr = 'administrator'
sqs = 'guest'
name = input('please input your username:')
if name == 'sgt':
print('你好,超级管理员!')
elif name =='sgf':
print('你好,系统管理员!')
elif name == 'shr':
print('你好,管理员!')
elif name == 'sqs':
print('你好,宾客!')
根据用户输入内容打印其权限
while True:
today = input('今天是星期几?')
if today == 'monday' or today == 'tuesday' or today == 'wednesday'\
or today == 'thursday' or today == 'friday':
print('上班')
break
elif today == 'saturday' or today == 'sunday':
print('出去浪')
break
else:
print('''
必须输入以下任意一种:
monday
tuesday
wednesday
thursday
friday
saturday
sunday
''')
上班或出去浪
二、while循环
方式一:while+True/False
tag = True
while tag:
name = input('please input your name:')
pwd = input('please input your password:')
':
print('congratulation,region success!')
tag = False
else:
print('your name or password is wrong,please try again!')
方法二:while+break
while True:
name = input('please input your name:')
pwd = input('please input your password:')
':
print('congratulation,region success!')
break
else:
print('your name or password is wrong,please try again!')
break是终止本层while循环。
方法三:while+continue
nums = 1
while nums <= 6:
if nums == 4 or nums == 5:
nums += 1
continue
else:
print(nums)
nums += 1
终止当前循环,直接进入下次循环。
方法四:while+else
nums = 1
while nums <= 6:
if nums == 4 or nums == 5:
nums += 1
continue
else:
print(nums)
nums += 1
else:
print('前面代码无break,else 条件成立,否则else不执行。')
方法五:while的嵌套
示例一:
while True:
name = input('please input your username:')
pwd = input('please input your password:')
':
print('login successful')
while True:
print('''
0_退出
1_取款
2_转账
3_查询
''')
choice = input('请输入您要执行的操作:')
':
break
':
print('取款...')
':
print('转账...')
':
print('查询...')
else:
print('输入指令有误,请重新输入:')
break
else:
print('username or password error!')
改进示例二:
tag = True
while tag:
name = input('please input your username:')
pwd = input('please input your password:')
':
print('login successful')
while tag:
print('''
0_退出
1_取款
2_转账
3_查询
''')
choice = input('请输入您要执行的代码:')
':
tag = False
':
print('取款...')
':
print('转账...')
':
print('查询...')
else:
print('指令错误,请重新输入')
else:
print('username or password error')
三、for 循环 (其强大之处在于循环取值)
方案一、
for循环取值列表:
取值如果用while循环:
l = ['a', 'b', 'c', 'd', 'e']
i = 0
while i < len(l): #这里的len(l)表示计算列表l的长度(也就是索
#引数)
print(l[i])
i += 1
如果我们使用for循环取值:
l = ['a', 'b', 'c', 'd', 'e']
for x in l: #这里的x in l 是直接将l列表里的数据取出关联
print(x) #到x,不用额外赋值。
for循环取值字典:
info = {'sgt': 'me', 'sgf': 'brother', 'age': 18, 'sun': 'shr'}
for x in info:
print(x, info[x])
方案二、for+break
取出列表前几个数,后面的不取
nums = [11, 22, 33, 44, 55]
for x in nums:
if x == 44:
break
print(x)
方案三、for+continue
不取其中的多个数据
nums = [11, 22, 33, 44, 55]
for x in nums:
if x == 22 or x == 44:
continue
print(x)
方案四、for+else
names = ['egon', 'alexdsb', 'sb', 'dsb']
for name in names:
if name == 'alexdsb':
break
print(name)
else:
print('>>>>>>>>>>>')
#有break ,else下面的print不执行。
names = ['egon', 'alexdsb', 'sb', 'dsb']
for name in names:
if name == 'alexdsb':
continue
print(name)
else:
print('>>>>>>>>>>>')
#如果无break,else下面的print执行。
方案五、for+range()
range的用法:
>>> range(5) [0, 1, 2, 3, 4] >>> range(1,5) [1, 2, 3, 4] >>> range(1,5,2) [1, 3] >>> range(1,1) [] >>> 正规格式为range(1,5,2) 表示:从1开始计数,每计数一次递增2,所以结果是[1,3] 如果括号里只有一个数,代表(0,5,1),即从0开始计数,递增数为1.
示例:
for x in range(5):
print(x)
#结果:
#
#
#
#
#
方案六、for循环嵌套
for x in range(3):
for y in range(3):
print(x, y)
'''
结果
0 0
0 1
0 2
1 0
1 1
1 2
2 0
2 1
2 2
'''
基础知识:if判断、while循环、for循环的更多相关文章
- python基础知识--条件判断和循环
一.输入输出 python怎么来接收用户输入呢,使用input函数,python2中使用raw_input,接收的是一个字符串,输出呢,第一个程序已经写的使用print,代码入下: 1 name=in ...
- 基础知识:if条件、while循环、for循环 相关练习
1.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败! while True: name = input('请输入用户名:') psw = inpu ...
- Python编程-基础知识-条件判断
1. 简单的if/else条件判断 judge_flow.py name = input("Please input name: ") if name == 'master': p ...
- C语言基础知识【判断】
C 判断1.判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的).C 语言把任何非零和非空的值假定为 true,把零或 null ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- PHP丨PHP基础知识之PHP基础入门——函数「理论篇」
前两天讲过PHP基础知识的判断条件和流程控制,今天来讲讲PHP基础知识之PHP基础入门--函数! 一.函数的声明与使用 1.函数名是标识符之一,只能有数字字母下划线,开头不能是数字. 函数名的命名,须 ...
- JavaScript基础知识(三个判断、三个循环)
三个判断 if…else…只会执行其中一个条件 如果if条件中只有一个值,那么会默认转布尔: if(1=="1"){ // 当括号中条件为true时,执行此处的代码 console ...
- python-基础-基础知识-变量-选择-循环
1 基础知识 1.1 注释的分类 1.2 变量以及类型 变量定义 num1 = 100 #num1就是一个变量,就好一个小菜篮子 num2 = 87 #num2也是一个变量 result = num1 ...
- 原生 js基础常用的判断和循环
原生 js基础常用的判断和循环 以下部分是个人实践及和搜集的资料: 最常用的if判断语句: if (/* 条件表达式 */){ // 成立执行语句 } else { // 否则执行语句 } 原生js的 ...
- PHP丨PHP基础知识之流程控制WHILE循环「理论篇」
昨天讲完FOR循环今天来讲讲他的兄弟WHILE循环!进入正题: while是计算机的一种基本循环模式.当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环.while语句的一般表达式为:whil ...
随机推荐
- 在Eclipse上Maven环境配置使用
1. 安装配置Maven: 1.1 从Apache网站 http://maven.apache.org/ 下载并且解压缩安装Apache Maven. Maven下载地址: http://maven. ...
- Java SPI机制用法demo
①构建一个maven工程 包含如下目录结构: src/main/java src/main/resources src/test/java src/test/resources ②在src/main/ ...
- Arduino入门笔记(6):温度传感器及感温杯实验
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino板 :https://item.taob ...
- Django:Python3.6.2+Django2.0配置MySQL
持续学习Django中... Django默认使用的数据库是python自带的SQLlite3,但SQLlite并不适用于大型的项目,因此我将数据库换成了MySQL,下面介绍下Django如何配置数据 ...
- Haskell学习-functor
原文地址:Haskell学习-functor 什么是Functor functor 就是可以执行map操作的对象,functor就像是附加了语义的表达式,可以用盒子进行比喻.functor 的定义可以 ...
- javascript深入浅出图解作用域链和闭包
一.概要 对于闭包的定义(红宝书P178):闭包就是指有权访问另外一个函数的作用域中的变量的函数. 关键点: 1.闭包是一个函数 2.能够访问另外一个函数作用域中的变量 文章首发地址于sau交流学习社 ...
- go语言调度器源代码情景分析之五:汇编指令
本文是<go调度器源代码情景分析>系列 第一章 预备知识的第4小节. 汇编语言是每位后端程序员都应该掌握的一门语言,因为学会了汇编语言,不管是对我们调试程序还是研究与理解计算机底层的一些运 ...
- 初探机器学习之使用讯飞TTS服务实现在线语音合成
最近在调研使用各个云平台提供的AI服务,有个语音合成的需求因此就使用了一下科大讯飞的TTS服务,也用.NET Core写了一个小示例,下面就是这个小示例及其相关背景知识的介绍. 一.什么是语音合成(T ...
- 论JVM爆炸的几种姿势及自救方法
前言 如今不管是在面试还是在我们的工作中,OOM总是不断的出现在我们的视野中,所以我们有必要去了解一下导致OOM的原因以及一些基本的调整方法,大家可以通过下面的事例来了解一下什么样的代码会导致OOM, ...
- 终于等到你:CYQ.Data V5系列 (ORM数据层,支持.NET Core)最新版本开源了
前言: 不要问我框架为什么从收费授权转到免费开源,人生没有那么多为什么,这些年我开源的东西并不少,虽然这个是最核心的,看淡了就也没什么了. 群里的网友:太平说: 记得一年前你开源另一个项目的时候我就说 ...