python 学习之 基础篇三 流程控制
前言:
一、 python中有严格的格式缩进,因为其在语法中摒弃了“{}”来包含代码块,使用严格的缩进来体现代码层次所以在编写代码的时候项目组要严格的统一器缩进语法,一个tab按键设置为四个空格来缩进,防止缩进不规范导致的启动失败。
二、在python中变量(标识符)命名和一般的高级语言没有什么不同都推荐使用,字母、下划线、数字命名,其中数字不能作为标识符的开头,python中变量名是区分大小写的(所以可以使用驼峰命名法去命名,也就是英文单词的字母首字母大写其余的小写)。以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入: 以双下划线开头的 __foo 代表类的私有成员,以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数
Python 可以同一行显示多条语句,方法是用分号 ; 分开,如
print ('hello');print ('runoob');
(1)什么叫流程控制
流程控制(也称为控制流程)是计算机运算领域的用语,意指在程序运行时,个别的指令(或是陈述、子程序)运行或求值的顺序。不论是在声明式编程语言或是函数编程语言中,都有类似的概念。
(2)if ... else: 条件语句
语法:
if 条件判断:
执行内容...
elif 条件判断:
执行内容...
else:
执行内容...
Python中 指定任何非0和非空(null)值为True,0 或者 null为False。其中"条件判断"成立时(非零),则执行后面的语句,而执行内容可以多行。以缩进来区分表示同一范围。elif/else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句。
具体例子如下:
salary = int(input("您的期望薪资是:"))
if salary < 5000:
print("您的目标有点小呢,现在上海基本工资就比您多,你不考虑多学习学习赚多点?")
elif 5000 <= salary < 10000:
print("当您听上海大爷说“月薪一万,要饭呢!”,您还拿着这点工资,心里怎么想,放下手机,多看看书吧骚年!")
elif 10000 <= salary < 20000:
print("学习使我快乐,还是继续学习吧!")
else:
print("大神! 你是大神吗?求带飞")
由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,
如果判断需要多个条件需同时判断时,
可以使用 or (或),表示两个条件有一个成立时判断条件成功;
gender = input("请输入您的性别:")
if gender == "男" or gender == "女":
print("哎呀! 您竟然没有做那种手术可惜你{praise}".format(praise="那么英俊" if gender == "女" else "那么漂亮"))
else:
print("您怎么想的去做那种手术,哎!")
也可以使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
_username = "zhangsan"
_password = "san123" userName= input("请输入用户名:")
password= input("请输入密码:")
if _userName == userName and _password == password:
print("登录成功")
else:
print("用户名或密码错误!")
not (非),表示条件判断的值 最后取相反的值 如 a 为1,a > 10 为False 那么 表达式 not a>10 最后的值为True
a = int(input("请输入数字:"))
if not a > 10:
print("a")
(3)while:循环语句
语法:
while 判断条件:
执行语句……
while后面可以跟上else语句(可选),当判断条件为false时执行else
示例:
_userName = "zhangsan"
_password = "san123"
count = 0
while count < 3:
count += 1
username = input("请输入用户名:")
password = input("请输入密码:")
if _userName == username and _password == password:
print("欢迎{0}登录".format(username))
break
else:
print("用户名或密码错误!")
else: # 此else是在 while 条件表达式中为false的时候才会执行 和 for ... else 有区别
print("你还能干个啥。。。")
print("程序结束")
(4)for:循环语句
语法:
for iterating_var in sequence:
statements(s)
for循环后面也可以跟else语句(可选),此else执行前提是for循环没有被中断
示例:
#!/usr/bin/env python3
# -*- coding:utf-8 -*- for letter in 'Python': # 第一个实例
print('当前字母 :', letter) fruits = ['banana', 'apple', 'mango']
for fruit in fruits: # 第二个实例
print('当前水果 :', fruit) for i in range(10): # 第三个实例
print("循环了%d次" % i)
if i == 7:
print("for循环被终止了")
break
else:
print("for循环没被终止执行")
print("Good bye!")
(5)三元表达式
语法:
variable1 = "条件成立的取值" if 判断条件 else "条件不成立的取值"
示例:
a,b,c = 1,2,3 d = a if a>b else c
print(d)
python 学习之 基础篇三 流程控制的更多相关文章
- C#基础篇三流程控制2
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace P01R ...
- C#基础篇三流程控制1
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace P01R ...
- Python学习笔记基础篇——总览
Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列 ...
- python学习day5 常量 运算符补充 流程控制基础
1.常量 值不会改变的量 python中没有特别的语法定义常量,一般约定用全大写字母命名常量,比如圆周率pi 2.预算符补充 2.1算数运算符 print(10/3)除法运算 print(10//3) ...
- Python学习笔记——基础篇【第一周】——变量与赋值、用户交互、条件判断、循环控制、数据类型、文本操作
目录 Python第一周笔记 1.学习Python目的 2.Python简史介绍 3.Python3特性 4.Hello World程序 5.变量与赋值 6.用户交互 7.条件判断与缩进 8.循环控制 ...
- Python学习笔记——基础篇【第七周】———类的静态方法 类方法及属性
新式类和经典类的区别 python2.7 新式类——广度优先 经典类——深度优先 python3.0 新式类——广度优先 经典类——广度优先 广度优先才是正常的思维,所以python 3.0中已经修复 ...
- Python 学习笔记---基础篇
1. 简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200 import subprocess cmd="cmd.exe" b ...
- shell重温---基础篇(流程控制&if判断&for&while&循环操作)
和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { search( ...
- Python学习笔记——基础篇2【第三周】——计数器、有序字典、元组、单(双)向队列、深浅拷贝、函数、装饰器
目录 1.Python计数器Counter 2.Python有序字典OrderredDict 3.Python默认字典default 4.python可命名元组namedtuple 5.Python双 ...
随机推荐
- Rust中的Rc--引用计数智能指针
大部分情况下所有权是非常明确的:可以准确的知道哪个变量拥有某个值.然而,有些情况单个值可能会有多个所有者.例如,在图数据结构中,多个边可能指向相同的结点,而这个结点从概念上讲为所有指向它的边所拥有.结 ...
- ZooKeeper架构原理你学会了吗?
Zookeeper是分布式一致性问题的工业解决方案,是Apache Hadoop下解决分布式一致性的一个组件,后被分离出来成为Apache的顶级项目. 工程来源:是雅虎公司内部项目,据说雅虎内部很多项 ...
- v8
V8 - 开源,由Google开发,用C ++编写 Rhin- 由Mozilla基金会开源,完全用Java开发 SpiderMonkey 第一个JavaScript引擎,Netscape Naviga ...
- day27_8.6 网络编程7层协议
一.软件开发架构 在所有软件中有两种结构模式 1.c/s架构(client/server) c代表的是客户端 s代表的是服务端 2.b/s架构(browser/server) b代表的是浏览器 s代表 ...
- eclipse配置JDK和设置编译版本的几种方法
eclipse配置JDK和设置编译版本的几种方法 2016-12-13 16:08 http://blog.csdn.net/gnail_oug/article/detail ...
- nginx 缓存配置
nginx 缓存是可以将远程服务器上的内容缓存到本地,可以设置缓存大小,缓存时间,缓存目录等等 具体配置如下 proxy_cache_path /home/http/cache/ levels=: k ...
- (day44)css样式、css布局
目录 一.css样式 (一)文字样式 (1)文字字体font-family (2)字体大小font-size (3)字体粗细font-weight (4)字体颜色color (二)文本样式 (1)文字 ...
- JDOJ 1958 机器分配
JDOJ 1958: 机器分配 Description 某总公司拥有高效生产设备M台,准备分给下属的N个分公司.各分公司若获得这些设备,可以为总公司提供一定的盈利.问:如何分配这M台设备才能使国家得到 ...
- 【java】@SuppressWarnings
作用:用于抑制编译器产生警告信息. 示例1——抑制单类型的警告: 示例2——抑制多类型的警告: 示例3——抑制所有类型的警告: 三.注解目标 通过 @SuppressWarnings 的源码可知,其注 ...
- 使用ES6 Class封装的IndexDB 操作类,并实现模糊搜索
封装如下: indexDBOperate.js export class IndexDBOperate { db = null // 数据库实例 databaseName = null // 数据库 ...