Python中一个缩进代表一个层级,推荐4个空格

分支与循环

  条件是分支与循环中最为核心的点,解决的问题场景是不同的问题有不同的处理逻辑。当满足单个或者多个条件或者不满足条件进入分支和循环,这里也就说明这个对相同问题处理执行逻辑依据具体参数动态变化,由此产生多种可能性,但要求其中一个可能性必须执行其他可能性不需要执行时候使用分支。循环的核心是边界值,通过控制边界值控制循环的执行次数,循环体中逻辑是重复执行直至到达边界值,跳出循环。在Python中分支和循环不能形成作用域,在其他如Golang语言中分支和循环会形成一个作用域。Python中没有 ++ -- 自增自减这个运算符,并且for循环是用来遍历可迭代数据。

分支与循环规范:

  不推荐在分支和循环下写大量逻辑代码,封装成函数或者写少量几行代码

分支 - if elif

number = 10

if number >= 100:
print("Hai")
elif 50 <= number < 100:
print("Hello")
else:
print("OK")

循环 -for

students = ["QiNiuYun", "BaiDu", "WeiChat", "AliYun"]
for student in students:
print(student)

循环-while

start = 0
while start <= 100:
print(start)
start += 1

循环流程控制

  contine    到此重新开始循环,也就是从contine这一行后面循环体的都不再执行,重新开始判断条件进入循环体

start = 0
while start < 100:
start += 1
if start % 2 == 0:
continue
print(start)

  break      到此结束整个循环,也就是从break这一行执行之后,将跳出循环的循环体执行,执行循环结构体后面的逻辑

start = 0
while start < 100:
start += 1
if start > 50:
break
print(start)

  break 和 contine一般联合 分支进行特殊情况下对循环体流程控制

for循环一般联合 in 进行可迭代对象的变量

  可迭代对象如 str list tuple set dict range emumerate __getitem__

遍历 str

name = "beimenchuixue"

for rune in name:
print(rune)

  

遍历 list

names = ["QiNiuYun", "BeiMenChuiXue", "AliYun", "BaiDu"]

for name in names:
print(name)

  

遍历 tupe

platforms = ("Linux", "MAC", "Windows", "Android", "IOS")

for platform in platforms:
print(platform)

  

遍历 set

languages = {"zh_CN", "en_US"}
for language in languages:
print(language)

  

遍历字典 dict

info = {"name": "BeiMenChuiXue", "age": 18, "sex": "male", "phone_number": "15570910000"}

for key in info:
# 在字典的遍历中,只能获取字典的key值
print(key, info[key])

  

遍历 range

for number in range(1, 100, 2):
# 从1开始到100,但不包括100,间隔步长为2
print(number)

  

遍历 emumerate

names = ["QiNiuYun", "BeiMenChuiXue", "AliYun", "BaiDu"]

for name in enumerate(names):
# emumerate 索引从0开始计数,返回一个由索引和值组成的元组
print(name)

  

遍历 __gettiem__

class Class(object):
def __init__(self, student_names):
self.student_names = student_names def __getitem__(self, item):
return self.student_names[item] python_class = Class(["QiNiuYun", "BeiMenChuiXue", "AliYun", "BaiDu"]) for python_student in python_class:
# for循环会去找 __getitem__魔法方法,每次从 0 开始步长为1向 __getitem__传递 参数
# 如果 __getitem__触发异常,for会处理异常并退出循环
print(python_student)

使用字典实现Go语言中的 switch

def connect():
print("connect") def conn():
print("conn") def default_conn():
print("default_conn") interface = {"connect": connect, "conn": conn}
interface.get("conn", default_conn)()
interface.get("", default_conn)()

Python-分支循环- if elif for while的更多相关文章

  1. python 分支 循环

    一  python 知识点      1.变量(标签):           a(变量名) = '字符串'or 数字 (整形和浮点型)     a相当于变量名的标签           如: a = ...

  2. python分支循环

    1.遍历循环 for i in range(5) for i in range (M,N,K) for c in s: for c in 'python' print(c,end="&quo ...

  3. Python - 分支循环、可迭代对象与迭代器

  4. python分支结构与循环结构

    python分支结构 一.if 单条件形式 # 年轻人的世界都不容易 age > 18 age = int(input("请输入您的年龄:")) # input()函数 模拟 ...

  5. Python基础(条件判断和循环) if elif else for while break continue;

    条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= ...

  6. Python分支结构与流程控制

    Python分支结构与流程控制 分支结构 if 语句 分支结构在任何编程语言中都是至关重要的一环,它最主要的目的是让计算机拥有像人一样的思想,能在不同的情况下做出不同的应对方案,所以if语句不管是在什 ...

  7. python_分支循环

    什么是分支+循环? --不同条件进行不同逻辑处理            -- 分支 --满足条件进行反复相同逻辑处理     -- 循环 分支的形式? -- if 条件:  执行体   else: 执 ...

  8. python的循环和选择

    一.python的选择结构: python的选择结构有两种选择结构一种是单选择(if...else)另一种则是多选择结构(if ...elif...elif) 下面用代码来实现: 1.if....el ...

  9. python 之 循环语句

    python提供了for循环和while循环以及嵌套循环(在python中没有do..while循环) while 循环语法: while 判断条件: 执行语句...... 实际案例: numbers ...

  10. Python,while循环小例子--猜拳游戏(三局二胜)

    Python,while循环小例子--猜拳游戏(三局二胜) import random all_choice = ['石头', '剪刀', '布'] prompt = '''(0)石头 (1)剪刀 ( ...

随机推荐

  1. obj-c编程12:复制对象

    好吧,上一篇我怎么也没想到会写那么多字那么少的代码,希望这一篇不会如此哦. 言归正传,对象的复制分为浅复制和深复制,前者只是复制对象的引用,当原对象的内容发生变化时,复制对象的内容也会发生变化,毕竟他 ...

  2. MATLAB坐标系中绘制图片

    MATLAB坐标系中绘制图片 方法一 使用图片坐标循环的方式,代码如下. clear,clc,close all tic; map=imbinarize(imread('map.bmp'));%map ...

  3. 添加极光推送以及在ios中的问题

    项目为 ionic1 + angular1 1.添加极光推送插件 用cordova进行添加 cordova plugin add jpush-phonegap-plugin --variable AP ...

  4. js定义数组的方法

    1.定义时赋值 var mycars=new Array("a","b","c") 2.new一个数组对象 var mycars=new A ...

  5. JAVA程序员面试宝典

    程序员面试之葵花宝典 面向对象的特征有哪些方面    1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题 ...

  6. 超强js博客值得学习!!!

    再读ecmascript 摘要: 这几天,又花了点时间看了下ecmascript.以下是我摘录出来的一些理解.在此记录下.第一部分:关于变量对象的理解1) 什么是变量对象?数据的存取与读取机制,就是变 ...

  7. 解决Android SDK Manager更新失败问题

    from:http://www.ztyhome.com/android-sdk-update/ 问题描述: 使用SDK Manager更新时无法完成更新ADT时无法解析https://dl-ssl.g ...

  8. windows下注册表的操作

    原博:https://blog.csdn.net/denghubu/article/details/5765921 1.       注册表简介 注册表是为Windows NT和Windows95中所 ...

  9. C#学习笔记 day_two

    C#学习笔记 day two Chapter 2 c#基本概念 2.1编译与运行hello world应用程序 点击f5或者vs2010中的运行图标即可 2.3C#的概念拓展 (1)继承性:一个类含有 ...

  10. django项目部署上线

    前言 完善的django项目上线,有很多种上线的方法,比如apache, uwsgi, nginx等.这里只介绍2种,一种是django自带的,另外一种则是nginx + uwsgi完成介绍.这里的系 ...