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双 ...
随机推荐
- 201871010135 张玉晶《面向对象程序设计(java)》第十三周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/zyja/p/11918 ...
- python3中的map对象返回的是迭代器,该迭代器用list()转列表之后,再次用list()转化时会返回空
练习代码的时候,发现python3中的map()函数返回的可迭代对象,在用list()转成列表之后,再次用list()转列表的时候,获取的是空值(如下所示),所以查了一下python3的map()对象 ...
- day44_9_3前端(1)
一.http协议. 1.在软件开发架构中 有两种模式:1.b/s.2.c/s. 其中b/s就是以浏览器作为客户端,所以,需要服务器同一遵循同一规则,向浏览器发送数据,这个规则就是http协议,存在以应 ...
- maven下载与配置(三)
一.下载 在官网下载 https://maven.apache.org/download.cgi 我这里现在的是apache-maven-3.2.5 . 二.配置环境变量 右键我的电脑-属性-高级系统 ...
- Netty入门程序(四)
maven创建project,引入依赖: <dependency> <groupId>io.netty</groupId> <artifactId>ne ...
- Graph Embedding:
https://blog.csdn.net/hy_jz/article/details/78877483 基于meta-path的异质网络Embedding-metapath2vec metapath ...
- luoguP3704 [SDOI2017]数字表格
题意 默认\(n\leqslant m\) 所求即为:\(\prod\limits_{i=1}^n\prod\limits_{j=1}^mf[\gcd(i,j)]\) 枚举\(\gcd(i,j)\)变 ...
- cf1207解题报告
cf1207解题报告 A 模拟 #include <bits/stdc++.h> #define ll long long using namespace std; ll T,a,b,c, ...
- Eclipse:设置自动生成注释
一.设置自动生成 1.修改设置: 点击Window下的Preferences: 进入Java->Code Style->Code Templates的页面,选择Code下的New Java ...
- docker环境下数据库的备份(postgresql, mysql)
posgresql 备份/恢复 mysql 备份/恢复 补充 posgresql 备份/恢复 备份 DATE=`date +%Y%m%d-%H%M` BACK_DATA=xxapp-data-${DA ...