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

一、条件语句

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. Ubuntu13.04编译安装cmake2.8.12.2

    前提: 安装过程需要gcc和gcc-c++.ubuntu13.04桌面版自带gcc4.7,apt-get install g++4.7安装g++./usr/bin目录下有x86_64-linux-gn ...

  2. 四十四:数据库之SQLAlchemy之join实现复杂查询

    准备工作 from datetime import datetime from sqlalchemy import create_engine, Column, Integer, String, Da ...

  3. Mysql数据库事务的四大特性:

    什么是事务? 事务Transaction,是指作为一个基本工作单元执行的一系列SQL语句的操作,要么完全地执行,要么完全地都不执行.为什么要使用事务:保证对数据操作的完整性和准确性.1,原子性:一个事 ...

  4. 手机连接电脑,使用adb命令

    手机连接电脑使用adb命令,主要是有2种方式,其中最常见的就是第一种,用usb连线使用 1:adb usb - restarts the adbd daemon listening on USB ad ...

  5. Day01:对象和类(上)

    对象的概念 Java 是面向对象的编程语言,对象就是面向对象程序设计的核心.所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,它是一种具体的概念.对象有以 ...

  6. 【神经网络与深度学习】CIFAR-10数据集介绍

    CIFAR-10数据集含有6万个32*32的彩色图像,共分为10种类型,由 Alex Krizhevsky, Vinod Nair和 Geoffrey Hinton收集而来.包含50000张训练图片, ...

  7. Android 透明主题

    转至:https://blog.csdn.net/zhangwenchaochao/article/details/78654128 Activity采用透明主题有两种方式: 重要的内容说三遍: 采用 ...

  8. 面试--hr常问的问题

    程序员换工作,会有技术面试(可能不止一轮的技术面),还会有hr的面试,技术面主要是偏向于技术问题,hr面试主要问的一些问题,下面做下汇总: 1.你换工作的原因,你为何辞职 必问的问题,送分题或者送命题 ...

  9. spring + redis 实例(一)

    这一篇主要是redis操作工具类以及基本配置文本储存 首先我们需要定义一个redisUtil去操作底层redis数据库: package com.lcc.cache.redis; import jav ...

  10. Linux 释放占用端口

    在使用 Swoole 扩展库的 WebSocket 服务时,直接退出终端,但是 WebSocket 使用的端口依然坚挺的在被占用着. 导致再次启动 WebSocket 服务失败. 具体操作: 1.ne ...