day02

1.while循环 -- while关键字

while 空格 条件 冒号

缩进 循环体

while 5>4:
    print("Hello World!")

数字中非0的都是True

# 正序25~57![](https://img2018.cnblogs.com/blog/1617228/201907/1617228-20190705192654502-2028519452.png)

# count = 25
# while count <= 57:
#     print(count)
#     count += 1

# 倒叙57~25
# count = 57
# while count >= 25:
#     print(count)
#     count -= 1

break 终止当前循环,break下面的循环体代码不执行

continue 跳过本次循环,继续下一次循环(下面的代码不执行) #continue伪装成循环体中的最后一行代码

break和continue的相同之处:

​ 下面的循环体代码不执行

条件可以控制while循环

打断循环的方式:

​ 1.自己修改条件

​ 2.break

题目:

# num = int(input("请输入数字:"))
# while num == 1:
#     user = input("请输入用户名:")
#     pwd = input("请输入密码:")
#     if user == "zcy" and pwd == "123":
#         print("登陆成功!")
#         break
#     else:
#         print("用户名或密码错误!")
# else:
#     print("退出成功!")

while else: while 条件成立的时候就不执行了,条件不成立的时候就执行else

2.格式化输出

%s(字符串类型) %d(数字类型)

按位置顺序传递,占位和补位必须要一一对应

如果要在字符串中输出%时,用%%转义

name = input("姓名:")
age = input("年龄:")
msg = '姓名:%s,年龄:%d'%(name,int(age))
print(msg)

​ % -- 占位

​ %s -- 占字符串的位

​ %d -- 占数字位

​ %% -- 转义成普通的%

.format

name = input("姓名:")
age = input("年龄:")
msg = '姓名:{},年龄:{}'.format(name,int(age))
print(msg)

name = input("姓名:")
age = input("年龄:")
msg = '姓名:{1},年龄:{0}'.format(int(age),name)
print(msg)

f'字符串1{},字符串2{}' (python 3.6以上)

name = input("姓名:")
age = input("年龄:")
msg = f'姓名{name},年龄{age}'
print(msg)

3.运算符

算术运算符

​ + 加

​ - 减

​ * 乘

​ / python2获取的是整数 python3获取的是浮点数

​ //(整除--地板除)

​ ** 幂(次方)

​ % 模(取余)

比较运算符

​ > 大于

​ < 小于

​ == 等于

​ != 不等于

​ >= 大于等于

​ <= 小于等于

赋值运算符

​ = 赋值

​ += 自加

​ -= 自减

​ *= 自乘

​ /= 自除

​ //= 自地板除

​ **= 自幂

​ %= 自余

逻辑运算符

​ and 与

​ or 或

​ not 非

and 都为真的时候取and后面的值

​ print( 3 and 4) #4

and 都为假的时候取and前面的值(前面是假的时,and后面的不用判断)

​ print( 0 and False) #0

and 一真一假取假的(前面是假的时,and后面的不用判断)

​ print( 0 and 4) #0

​ print( 4 and 0) #0

or 都为真的时候取or前面的值(前面是真的时,or后面的不用判断)

​ print( 3 or 4) #3

or 都为假的时候取or后面的值

​ print( 0 or False) #False

or一真一假取真的(前面是真的时,or后面的不用判断)

​ print( 0 or 4) #4

​ print( 4 or 0) #4

优先级:

()> not > and > or

成员运算符

​ in 存在

​ not in 不存在

4.编码初始(编码集)

  • ​ Ascii(美国) 不支持中文

  • ​ GBK(国标,也称GBK2312) 英文 8位(1Bytes) 中文 16位(2Bytes)

  • ​ Unicode(万国码) 英文16位(2Bytes) 中文32位(4Bytes)

  • ​ UTF-8(可变长编码) 英文8位(1Bytes) 欧洲文16位(2Bytes) 亚洲(24位)(3Bytes)

  • ​ Linux -- UTF-8

  • ​ Mac -- UTF-8

  • ​ Windows --GBK

  • 单位转换:
    • ​ 1Bytes = 8bit
    • ​ 1KB = 1024Bytes
    • ​ 1MB = 1024KB
    • ​ 1GB = 1024MB
    • ​ 1TB = 1024GB
    • ​ 1PB = 1024TB

其他知识点

python print(a,b,c,d,sep = "\n") #sep = "\n" 换行

百万年薪python之路 -- while循环的更多相关文章

  1. 百万年薪python之路 -- JS基础介绍及数据类型

    JS代码的引入 方式1: <script> alert('兽人永不为奴!') </script> 方式2:外部文件引入 src属性值为js文件路径 <script src ...

  2. 百万年薪python之路 -- 面向对象之继承

    面向对象之继承 1.什么是面向对象的继承 继承(英语:inheritance)是面向对象软件技术当中的一个概念. 通俗易懂的理解是:子承父业,合法继承家产 专业的理解是:子类可以完全使用父类的方法和属 ...

  3. 百万年薪python之路 -- 模块三

    logging 日志模块 loggin模块参数 灵活配置日志级别,日志格式,输出位置: import logging logging.basicConfig(level=logging.DEBUG, ...

  4. 百万年薪python之路 -- 模块二

    1. 序列化模块 什么是序列化呢? 序列化的本质就是将一种数据结构(如字典.列表)等转换成一个特殊的序列(字符串或者bytes)的过程就叫做序列化. 为什么要有序列化模块? 如果你写入文件中的字符串是 ...

  5. 百万年薪python之路 -- 模块

    1.自定义模块 1.1.1 模块是什么? 模块就是文件,存放一堆常用的函数和变量的程序文件(.py)文件 1.1.2 为什么要使用模块? 1.避免写重复代码,从文件级别组织程序,更方便管理 2.可以多 ...

  6. 百万年薪python之路 -- 数据库初始

    一. 数据库初始 1. 为什么要有数据库? ​ 先来一个场景: ​ 假设现在你已经是某大型互联网公司的高级程序员,让你写一个火车票购票系统,来hold住十一期间全国的购票需求,你怎么写? 由于在同一时 ...

  7. 百万年薪python之路 -- 并发编程之 协程

    协程 一. 协程的引入 本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态 cpu正在运行一个任务,会在两 ...

  8. 百万年薪python之路 -- 并发编程之 多线程 二

    1. 死锁现象与递归锁 进程也有死锁与递归锁,进程的死锁和递归锁与线程的死锁递归锁同理. 所谓死锁: 是指两个或两个以上的进程或线程在执行过程中,因为争夺资源而造成的一种互相等待的现象,在无外力的作用 ...

  9. 百万年薪python之路 -- 并发编程之 多进程 一

    并发编程之 多进程 一. multiprocessing模块介绍 ​ python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大 ...

随机推荐

  1. [Linux][函数]flock函数的用法

    表头文件  #include<sys/file.h> 定义函数  int flock(int fd,int operation); 函数说明  flock()会依参数operation所指 ...

  2. unity - TileMap的注意事项

    本文记述了一些在使用Tilemap绘制场景时的需要注意的细节问题. 关于Tilemap的创建及使用本文不做说明,但推荐佳作:Unity中使用Tilemap快速创建2D游戏世界 - feng 本文项目地 ...

  3. Android Studio [页面的跳转和传值]

    AActivity.java package com.xdw.a122.jump; import android.app.Activity; import android.content.Compon ...

  4. vue使用readAsDataURL实现选择图片文件后预览

    vue实现选择图片文件后预览 利用h5的api可以实现选择文件并实现预览 readAsDataURL 方法会读取指定的 Blob 或 File 对象.读取操作完成的时候,readyState 会变成已 ...

  5. python 列表,集合,字典,字符串的使用

    PY PY基础 append 在末尾添加元素 pop 删除末尾元素 insert(i,item)在i位插入元素 pop(i)删除i位元素 只有1个元素的tuple定义时必须加一个逗号,,来消除歧义 i ...

  6. 序列标注(BiLSTM-CRF/Lattice LSTM)

    前言 在三大特征提取器中,我们已经接触了LSTM/CNN/Transormer三种特征提取器,这一节我们将介绍如何使用BiLSTM实现序列标注中的命名实体识别任务,以及Lattice-LSTM的模型原 ...

  7. Shell之Test命令

    目录 Shell之Test命令 参考 Test简介 Test语法 表达式之逻辑运算 表达式之字符串判断 表达式之整数判断 表达式之文件判断 Shell之Test命令

  8. ng 图片的引用

    对于图片的引用有两种类型 本地 业务逻辑中(使用url) 本地中图片需要存放在静态资源夹assets中下新建的文件夹images文件夹中 eg:images文件夹中有一张01.png 的图片 显示本地 ...

  9. C#刷遍Leetcode面试题系列连载(2): No.38 - 报数

    目录 前言 题目描述 相关话题 相似题目 解题思路: 运行结果: 代码要点: 参考资料: 文末彩蛋 前言 前文传送门: C# 刷遍 Leetcode 面试题系列连载(1) - 入门与工具简介 上篇文章 ...

  10. 4、pytest 中文文档--pytest-fixtures:明确的、模块化的和可扩展的

    目录 1. fixture:作为形参使用 2. fixture:一个典型的依赖注入的实践 3. conftest.py:共享fixture实例 4. 共享测试数据 5. 作用域:在跨类的.模块的或整个 ...