#隐式布尔值: 0  none  空
# 一、流程控制
# 短路运算:偷懒原则,偷懒到哪个位置,就把当前位置的值返回
# 为0
# (10>3 and 10 and 0 and 10 )or( 10>3 and 1==1_) # 二、深浅copy
# 二者分隔不开,原值一改后值也跟着改
# 需求:1.拷贝原列表产生新列表
# 2.想让两个列表完全独立开,针对的是改操作的独立而不是读操作
#二、如何拷贝列表
# 1 浅copy:把原列表第一层的内存地址不加区分完全拷贝一份给新的
默认列表类型属于浅拷
list1=['egon','lxx',[1,2]]
list3=list1.copy()
print(list2)
2 深拷贝:新列表的改变与就列表完全分隔开,区分开可变与不可变类型的copy机制.
针对不可变类型则用原来的地址,可变的类型开辟一个新的空间指向原来的值地址
import copy
lise3=copy.deepcopy()
三、while循环
1、循环的语法与基本使用

while 条件:
代码1
代码2
代码3
print(3)
while的运行步骤
步骤1:如果条件为真,那么依次执行:代码1、代码2、代码3、......
步骤2:执行完毕后再次判断条件,如果条件为True则再次执行:代码1、代码2、代码3、.... 例:
count=0
while  count<5:
print(count)
count+=1
print('qdd') 2.死循环与效率问题
死循环:
count=0
while count <5:
print(count) 会一直输出0
如图:不会引发效率问题

纯计算无io死循环会引发知名的效率问题:条件永远为真,并且进行运行计算

3、 循环的应用

# 需要解决的问题:1、重复代码 (while循环)
# 2、输入正确不用重复
username='egon'
password='123'
while True
name=input('请输入你的账号:')
pwd=input('请输入你的密码:') if name == username and pwd == password:
print('登录成功')
else:
print('账号或密码错误') 4、循环的终止方式
方式一:将条件改为false,等到下次循环判断条件时才会生效

username='egon'
password='123'
tag=True
while tag:
inp_name=input('请输入你的账号:')
inp_pwd=input('请输入你的密码:')
if inp_name == username and inp_pwd == password:
print('登录成功')
tag=False #之后的代码还会运行,下次循环判断条件才会生效
else: print('账号或密码错误')
方式二:break,只要运行到break就会立刻终止本层循环

username='egon'
password='123' while True:
inp_name=input('请输入你的账号:')
inp_pwd=input('请输入你的密码:')
if inp_name == username and inp_pwd == password:
print('登录成功')
break #立刻结束本层循环
else:
print('账号或密码错误')

5、while循环嵌套:每一层都必须配一个break

例子一:

例子二:改变条件的username='egpassword='123'

tag=True
while tag:
inp_name=input('请输入你的账号:')
inp_pwd=input('请输入你的密码:') if inp_name == username and inp_pwd == password:
print('登录成功')
while tag:
cmd=input("输入命令>:")
if cmd == 'q'
tag=false
print('命令{x}正在运行').foemat(x=cmd)
tag=False
else:
print('账号或密码错误')
6、while +continue:结束本次循环,直接进入下一次

count=0

while count < 6:
    if count ==4:
count+=1
continue
print(count)
count+=1
7、while +else:针对break while true:
....
else:
print(‘else包含的代码会在while循环结束后,
并且while循环是在没有被break 打断的情况下正常结束的才会运行’)
 

   

												

day 7 while循环的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  2. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  3. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  4. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  5. 【JS基础】循环

    for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被 ...

  6. 【python之路4】循环语句之while

    1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...

  7. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  8. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  9. .NET基础 一步步 一幕幕[循环、逻辑语句块]

    循环.逻辑语句块   好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...

  10. Linux进程管理及while循环

    目录 进程的相关概念 进程查看及管理工具的使用 Linux系统作业控制 调整进程优先级 网络客户端工具 bash之while循环 20.1.进程类型 守护进程 daemon,在系统引导过程中启动的进程 ...

随机推荐

  1. java读源码 之 map源码分析(HashMap,图解)一

    ​ 开篇之前,先说几句题外话,写博客也一年多了,一直没找到一种好的输出方式,博客质量其实也不高,很多时候都是赶着写出来的,最近也思考了很多,以后的博客也会更注重质量,同时也尽量写的不那么生硬,能让大家 ...

  2. stanfordcorenlp安装教程&问题汇总(importerror-no-module-named-psutil、OSError: stanford-chinese-corenlp-yyyy-MM-dd-models.jar not exists.)&简单使用教程

    stanfordcorenlp安装教程&简单使用教程 编译环境:python 3.6 .win10 64位.jdk1.8及以上 1.stanfordcorenlp安装依赖环境 下载安装JDK ...

  3. java1.8新特性之stream

    什么是Stream? Stream字面意思是流,在java中是指一个来自数据源的元素队列并支持聚合操作,存在于java.util包中,又或者说是能应用在一组元素上一次执行的操作序列.(stream是一 ...

  4. STM32 基于 CubeMX配置GPIO点亮LED灯(超级详细+图文并茂)

    我是一个只会点灯的菜鸟: 相关文章 [STM32系列汇总]小白博主的STM32实战快速进阶之路(持续更新) 文章目录 相关文章 1 前言 2 理论分析 2.1 LED 原理 2.2 板载资料 2.3 ...

  5. docker redis shell

    docker中安装好redis后,运行 docker ps 指令,查看所有运行中的镜像信息 然后运行 docker inspect --format "{{ .State.Pid}}&quo ...

  6. Spring方法注入的使用与实现原理

    一.前言   这几天为了更详细地了解Spring,我开始阅读Spring的官方文档.说实话,之前很少阅读官方文档,就算是读,也是读别人翻译好的.但是最近由于准备春招,需要了解很多知识点的细节,网上几乎 ...

  7. 正则表达式在java中的用法

    /** * 测试正则表达式的基本用法 Pattern 和 Matcher * @author 小帆敲代码 * */public class Demo01 {  public static void m ...

  8. [hdu4576]dp

    题意:1-n围成1圈,从1出发,第i次走a[i]步,问走m次后出现在[L,R]的概率L<=R. 思路:明显的DP,把编号变成0~n-1,令dp[i][j]表示走完i步之前停在了j上,则有dp[i ...

  9. Python3+Pycharm+PyQt5环境搭建步骤

    搭建环境: 操作系统:Win10 64bit Python版本:3.7 Pycharm:社区免费版 一.Python3.7安装 下载链接:官网 https://www.python.org/downl ...

  10. python之unittest验证函数功能

    一.待验证脚本 首先,有如下三个脚本,分别对应三个函数 分别导入模块行,如下: from fuction1 import fu1 from fuction2 import fu2 from fucti ...