常用控制流 条件语句 循环语句

一、条件语句

if 条件表达式: #条件表达式--->比较运算符--->布尔值

满足条件表达式执行的代码块 #当布尔值为 True时执行此句

elif 条件表达式:

满足条件表达式执行的代码块

.

.

.

else:(无条件)

不满足条件执行的代码块

注:

①一个完整的条件表达式只有一个if一个else可以有多个elif

②如果数据为空或null代表条件表达式为False,不为空为True

二、循环语句

  1. for循环

作用:遍历元素,通过数据的元素个数控制循环的次数

注:

字符串中单个字符为一个元素 a="nothing is impossible" print(len(a))  结果21

语法 for item in datas: #item是一个变量 item依次访问datas里面的元素然后取到对应的值

重复执行的代码块

例子

a={"name":"wonderful","age":18,"score":100}

for i in a.items():

print(i)

结果

('name', 'wonderful')

('age', 18)

('score', 100)

for item in a.values():                   for item in a:

  print(item)                               print(a[item])

结果

wonderful

100

18

for item in a:

print(item)

结果

name

score

age

range(m,n,k) m:开始,n-1 结束,k 步长 生成一个整数序列(数据集合)默认 m=0,k=1 取左不取右

例子

t=(1,"hello",(1,3,5))

for item in range(len(t)):

print(t[item])

结果

1

hello

(1, 3, 5)

倒序输出列表

l=[1,2,3,4,5,6,7]

for item in range(-1,-8,-1): #根据索引倒序输出

print(l[item])

结果 7 6 5 4 3 2 1

l.reverse()  #列表倒置

for item in l:

print(item)

结果 7 6 5 4 3 2 1

嵌套循环 for  for if

一共有两行数据根据\n确定,每一行数据保存到一个字典里面  param url为key,后面为value,两行数据保存在大列表中

例子:

url="param:{'phone':'0125-9999999','pwd':'666666'}@url:http://http://www.baidu.com\nparam:{'phone':'0125-9999999','pwd':'666666'}@url:http://www.sogou.com"

代码:

s1=url.split("\n")          #第一次

list_datas=[]

for item in s1:

s2=item.split("@")     #第二次

dict_datas={}

for item2 in s2:

s3=item2.split(":",1)  #第三次

key=s3[0]

value=s3[1]

dict_datas[key]=value

list_datas.append(dict_datas)

print(list_datas)

执行结果:

[{'param': "{'phone':'0125-9999999','pwd':'666666'}", 'url': 'http://http://www.baidu.com'}, {'param': "{'phone':'0125-9999999','pwd':'666666'}", 'url': 'http://www.sogou.com'}]

2、While循环

语法: while 条件表达式:

循环的代码块

执行顺序:首先判断while后面的条件 如果满足就执行代码块,执行完毕后判断while后面的条件,再执行,执行完后再次判断...反复执行

注:

while循环,容易进入死循环慎重使用。

防止死循环的方法:

1.break 跳出循环 终止循环

a=1

while a>=1:

print("执行中.............")

break

2.利用一个变量控制循环次数,即指定循环次数

a=1

while a>=1:

print("执行中.............")

a=a-1

python 控制流(二)的更多相关文章

  1. Python 基础 二

    Python 基础 二 今天对昨天学习的Python基础知识进行总结,学而不思则惘,思而不学则殆! 一.先对昨天学习的三大循环的使用情况进行总结: 1.while循环的本质就是让计算机在满足某一条件的 ...

  2. 初学Python(二)——数组

    初学Python(二)——数组 初学Python,主要整理一些学习到的知识点,这次是数组. # -*- coding:utf-8 -*- list = [2.0,3.0,4.0] #计算list长度 ...

  3. Python学习二:词典基础详解

    作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...

  4. 有关python下二维码识别用法及识别率对比分析

    最近项目中用到二维码图片识别,在python下二维码识别,目前主要有三个模块:zbar .zbarlight.zxing. 1.三个模块的用法: #-*-coding=utf-8-*- import ...

  5. PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  6. 从Scratch到Python——Python生成二维码

    # Python利用pyqrcode模块生成二维码 import pyqrcode import sys number = pyqrcode.create('从Scratch到Python--Pyth ...

  7. 用python生成二维码

    Python生成二维码,可以使用qrcode模块, github地址 我是搬运工 首先安装, 因为打算生成好再展示出来,所以用到Pillow模块 pip install qrcode pip inst ...

  8. Python 实现二维码生成和识别

    今天突然想给自己自己做个头像,然后还是二维码的形式,这样只要扫一扫就可以访问我的主页.然后就开始自己的苦逼之路... 其实实现二维码java,c#,C++等都可以实现:由于自己正在学python,所以 ...

  9. Python - 模块(二)

    目录 Python - 模块(二) re re下面的方法 logging os Python - 模块(二) re re模块提供了正则表达式的相关操作 主要字符介绍: . 通配符,除了换行符之外的任意 ...

  10. 使用 Python 生成二维码

    在“一带一路”国际合作高峰论坛举行期间, 20 国青年投票选出中国的“新四大发明”:高铁.扫码支付.共享单车和网购.其中扫码支付指手机通过扫描二维码跳转到支付页面,再进行付款.这种新的支付方式,造就二 ...

随机推荐

  1. OSPF协议学习以及路由器配置

    OSPF协议学习以及路由器配置 1.实验任务 2,使用eNsp搭建网络拓扑 3.配置路由IP ps:要使用GE(3层口),2层口(E口)需要先配置Vlan才能配置IP地址 4.配置路由器R1的ospf ...

  2. Go语言程序结构

    注意:Go语言源码文件编码格式必须是 UTF-8 格式,否则会导致编译器出错. 1.语言变量 a) 指定变量类型,声明后若不赋值,使用默认值. var name string b) 根据值自行判定变量 ...

  3. Linux_RHEL7_YUM

    目录 目录 前言 RPM rpm常用指令 YUM yum常用指令RHEL7 最后 前言 yum:yellow dog updater modifier(黄狗包管理器),是RHEL默认的基于RPM包的软 ...

  4. [不错]A step-by-step guide to enabling security, TLS/SSL, and PKI authentication in Elasticsearch

    Now posted on the Elastic blog December 12, 2018 update: This article has been published on Elastic’ ...

  5. Day06:方法 / 猜字母游戏

    JAVA方法 方法就是处理一个业务所需要编写的代码的代码段 方法特性 一个方法处理一个业务 方法代码编写,不和其他方法冲突 方法定义后可以随意调用 将main方法中的所有代码分散到各个普通方法中 减少 ...

  6. Express全系列教程之(十一):渲染ejs模板引擎

    一.简介 相比于jade模板引擎,ejs对原HTML语言就未作出结构上的改变,只不过在其交互数据方面做出了些许修改,相比于jade更加简单易用.因此其学习成本是很低的.您也可参考ejs官网:https ...

  7. 【神经网络与深度学习】【python开发】caffe-windows使能python接口使用draw_net.py绘制网络结构图过程

    [神经网络与深度学习][python开发]caffe-windows使能python接口使用draw_net.py绘制网络结构图过程 标签:[神经网络与深度学习] [python开发] 主要是想用py ...

  8. windows编程 使用C++实现多线程类

    有时候我们想在一个类中实现多线程,主线程在某些时刻获得数据,可以“通知”子线程去处理,然后把结果返回.下面的实例是主线程每隔2s产生10个随机数,将这10随机数传给多线程类,让它接收到数据后马上打印出 ...

  9. redis主从+哨兵模式(借鉴)

    三台机器分布 192.168.189.129  //  master的角色 192.168.189.130  //  slave1的角色 192.168.189.131  //  salve2的角色 ...

  10. C++中利用迭代器删除元素会发生什么?

    转自:https://blog.csdn.net/yf_li123/article/details/75003425#comments   (1)对于关联容器(如map,set,multimap,mu ...