第二节

一,while

while也称为无限循环、死循环

  1. while 条件:

    缩进 循环体

    • 应用领域:音乐播放:单曲循环,列表循环,随机播放(也是有规律的)

      登陆界面:……

      数学计算:1~100的和,1~100奇数的和/偶数的和……

    while True:    print('-------------')    print('西北玄天一片云,')    print('乌鸦落入凤凰群,')    print('满桌都是英雄汉,')    print('谁是君来谁是臣。')
    • break -- 必须在while循环使用

      braek -- 终止当前循环,且其下方的代码不会执行。

      while True:    print('-------------')    print('西北玄天一片云,')    print('乌鸦落入凤凰群,')    print('满桌都是英雄汉,')    print('谁是君来谁是臣。')    break # 可放在循环体下面的任何条件后
    • 改变循环体的条件--也可以终止循环

      f = Truewhile f:    print('-------------')    print('西北玄天一片云,')    print('乌鸦落入凤凰群,')    print('满桌都是英雄汉,')    print('谁是君来谁是臣。')f = False # 可放在循环体下面的任何条件后
    • continue -- 跳出本次循环,继续下一次循环,其下方的代码不会执行。

      (伪装成循环体的最后一行代码)

      while True:    print('-------------')    print('西北玄天一片云,')    print('乌鸦落入凤凰群,')    print('满桌都是英雄汉,')    continue # 伪装成最后一行代码,不执行其下面的代码,继续无线循环    print('谁是君来谁是臣。')
  1. 练习题

    1. # 利用while语句写出猜大小的游戏: 设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确,然后退出循环。num = 66 # 设置变量,便于后期维护while True: # 设定无限循环    s = int(input("你猜猜皇上想到的是哪个整数:")) # 用户交互    if s > num:        print("结果大了")    elif s < num:        print("结果小了")# 输入的数字不满足条件,就无限循环    else:   #   满足s = 66 的情况下        print("结果正确")        break  # 终止
    1. # 在1题的基础上进行升级:给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,如果三次之内没有猜测正确,则自动退出循环,并显示‘太笨了你....’。count = 0num = 66while count < 3: # 给变量设置限制    s = int(input("你猜猜皇上想到的是哪个数字:"))    if s > num:        print("结果大了")    elif s < num:        print("结果小了")    else:        print("结果正确")        break    count = count + 1  #  改变变量,使条件变为False,终止循环else:    print("太笨了你啊")
    1. # 使用while循环输出 1 2 3 4 5 6 8 9 10# 注意读题,没有7# 方法一num = 0while num < 10:    num += 1    if num == 7:        continue  # num为7的时候,结束本次循环,继续下次    print(num)# 方法二num = 0while num < 10:    num += 1    if num == 7:        num += 1 # num为7的时候,7+1    print(num)   
    1. # 输出 1-100 内的所有奇数# 方法一num = 1while num < 100:    print(num)    num += 2   # 变量为1,每次都加二,输出的都是奇数# 方法二num0 = 1while num0 < 101:    if num0 % 2 == 1: # 变量除2余1,然后输出        print(num0)    num0 += 1
    1. # 输出 1-100 内的所有偶数# 方法一num1 = 0while num1 < 100:    num1 += 2 #   每次都加二,变量为0,输出的都是偶数    print(num1)# 方法二num2 = 1while num2 < 101:    if num2 % 2 == 0: #  变量2余0,是偶数        print(num2)    num2 += 1​
    1. # 求1-2+3-4+5 ... 99的所有数的和num4 = 0ss = 0while num4 < 99:    num4 += 1    if num4 % 2:  #  求出奇数,然后相加        ss += num4    else:         # 求出偶数,然后奇数减偶数        ss -= num4print(ss)

二、格式化

占的位置填充时必须一一对应,填充的时候按照顺序填充,由左至右

应用:例如做个名片,注册账号……

  1. %s —— 字符串类型

  2. %d%i —— 数字类型

    name = input("name:")age = input("age:")addr = input("addr:")phone = input("phone:")info = """-----------info----------姓名:%s年龄:%s公司:%s电话:%s------------end-----------"""%(name,age,addr,phone)print(info)
  3. %% —— 转义

    msg = "%s的学习进度是2%%"%(python)print(msg)# %%转义是百分之二
  4. f"{格式}" —— 最好用的一种填充

    # f"{}"的一种应用msg = f"""-----------info----------姓名:{input('name:')}年龄:{input('age:')}公司:{input('addr:')}电话:{input('phone:')}------------end-----------"""print(msg)
  1. 练习题

# 用户登陆(三次输错机会)提示输入错误次数、剩余输入次数(while和格式化输出的组合)count = 4s1 = 0while count > 1:    count -= 1    id = input("请输入账号:")    psd = input("请输入密码:")    if id == "username" and psd == "password":        print("登陆成功")        break    else:        s1 += 1        print(f"输入错误{s1}次,还可重新输入{count - 1}次")

三、运算符

  1. 算数运算符

    运算符 描述 实例
    + 加,两个对象相加 a+b=30
    - 减,两个对象相减,可能会得到负数 a-b=-10
    * 乘,两数相称或是返回一个被重复若干次的字符串 a*b=200
    / 除,两个对象相除 b/a=2
    % 取膜,返回除法的余数 b%a=0
    ** 幂,返回x的y次幂 a**b=100000000000000000000L
    // 整除余,返回商的整数部分 a//b=0
  2. 比较运算符

    运算符 描述 实例
    == 等于,比较两个对象是否相等 a==b返回False
    != 不等于,比较两个对象是否不相等 a!=b返回True
    <> 不等于,比较两个对象是否不相等 a<>b返回True
    > 大于,比较x是否大于y, a>b返回False
    < 小于,比较x是否小于y a<b返回True
    >= 大于等于,比较x是否大于等于y a>=b返回False
    <= 小于等于,比较x是否小于等于y a<=b返回True
  3. 赋值运算符

    运算符 描述 实例
    = 赋值运算符 c=a+b,将a+b的运算结果赋值给c
    += 加法赋值运算符 c += a等效于c = c + a
    -= 减法赋值运算符 c -= a等效于c = c - a
    *= 乘法赋值运算符 c *= a等效于c = c * a
    /= 除法赋值运算符 c /= a等效于c = c / a
    %= 取模赋值运算符 c %= a等效于c = c % a
    **= 幂赋值运算符 c = a等效于c = c a
    //= 取整除赋值运算符 c //= a等效于c = c // a
  4. 逻辑运算符

    运算符 描述 实例
    and “与” a and b返回true
    or “或” a or b返回true
    not “非” no(a and b)返回false

    and: 都为真,就是真:选择and后面的内容

    有一个是假就是假:都为假的时候选择and前面的内容

    or: 只要有一个真就是真

    两个都是真,选or前面的

    两个都为假:选or后面的

    not: 不是,非

    • 优先级别:( ) > not > and > or

    9 or 8 and 4 and not 4 < 5 or 89 or 8 and 4 and False or 89 or 4 and False or 89 or False or 89 or 89​not 3<5 and 6>3 or 6 and not True or False and 8 or 90False and 6>3 or 6 and not True or False and 8 or 90False and 6>3 or 6 and False or False and 8 or 90False or 6 and False or False and 8 or 90False or  False or False and 8 or 90False or False or False or 9090
  5. 成员运算符

    运算符 描述
    in 如果在指定的序列中找到值返回True,否则返回False
    not in 如果在指定的序列中没有找到值返回True,否则返回false
    a = "alex"if "b" not in a:    print("不在")else:    print("在")    a = "alex"if "b" in a:    print("在")else:    print("不在")
  1. 运算符练习题

# 自己先进行推导,之后print(求值)判断下列逻辑语句的True,False.1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6# Truenot 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6# False求出下列逻辑语句的值。8 or 3 and 4 or 2 and 0 or 9 and 7# 80 or 2 and 3 and 4 or 6 and 0 or 3# 4

四、编码初识

  1. ascii码 —— 美国自造,最早256位

    英文1个字节

    不支持中文

  2. Gbk —— 中国制造包含了ascii

    中国标准语言——国标

    英文8位1个字节,中文16位2个字节

  3. unicode —— 万国码

    英文32位4个字节

    中文32位4个字节

  4. utf-8 —— 万国码的升级版本 最流行的密码本

    英文1个字节8位

    欧洲2个字节16位

    亚洲3个字节24位

五、单位转换

  • 1Bytes = 8bit 1个字节 == 8位

  • 1KB = 1024B

  • 1MB = 1024KB

  • 1GB = 1024MB

  • 1TB = 1024GB

  • 1PB = 1024TB

  • 1EB = 1024PB

后续还会持续更新,从入门到放弃  ^.^。

python_0基础学习_day02的更多相关文章

  1. python_0基础学习_day01

    Python是一门动态解释型的强类型定义语言 一.变量 变量命名规则 由数字.字母.下划线组成 不能以数字开头 要具有描述性 要区分大小写 禁止使用python的关键字(在pycharm中关键字明明变 ...

  2. salesforce 零基础学习(五十二)Trigger使用篇(二)

    第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...

  3. 如何从零基础学习VR

    转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 近期很多搞技术的朋友问我,如何步入VR的圈子?如何从零基础系统性的学习VR技术? 本人将于2017年1月 ...

  4. IOS基础学习-2: UIButton

    IOS基础学习-2: UIButton   UIButton是一个标准的UIControl控件,UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedContro ...

  5. HTML5零基础学习Web前端需要知道哪些?

    HTML零基础学习Web前端网页制作,首先是要掌握一些常用标签的使用和他们的各个属性,常用的标签我总结了一下有以下这些: html:页面的根元素. head:页面的头部标签,是所有头部元素的容器. b ...

  6. python入门到精通[三]:基础学习(2)

    摘要:Python基础学习:列表.元组.字典.函数.序列化.正则.模块. 上一节学习了字符串.流程控制.文件及目录操作,这节介绍下列表.元组.字典.函数.序列化.正则.模块. 1.列表 python中 ...

  7. python入门到精通[二]:基础学习(1)

    摘要:Python基础学习: 注释.字符串操作.用户交互.流程控制.导入模块.文件操作.目录操作. 上一节讲了分别在windows下和linux下的环境配置,这节以linux为例学习基本语法.代码部分 ...

  8. CSS零基础学习笔记.

    酸菜记 之 CSS的零基础. 这篇是我自己从零基础学习CSS的笔记加理解总结归纳的,如有不对的地方,请留言指教, 学前了解: CSS中字母是不分大小写的; CSS文件可以使用在各种程序文件中(如:PH ...

  9. Yaf零基础学习总结5-Yaf类的自动加载

    Yaf零基础学习总结5-Yaf类的自动加载 框架的一个重要功能就是类的自动加载了,在第一个demo的时候我们就约定自己的项目的目录结构,框架就基于这个目录结构来自动加载需要的类文件. Yaf在自启动的 ...

随机推荐

  1. JavaScript 事件(捕获和冒泡 兼容性写法)

    事件    浏览器客户端上客户触发的行为都称为事件 所有的事件都是天生自带的 不需要人为绑定 只需要我们去触发通过obj.事件名=function(){} 我们给元素的事件绑定了一个方法 事件名:on ...

  2. 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数 例如给定nums = [2,7,11,15],target = 9

    python解决方案 nums = [1,2,3,4,5,6] #假如这是给定的数组 target = 9 #假如这是给定的目标值 num_list = [] #用来装结果的容器 def run(nu ...

  3. 神奇的Invsqrt函数

    float InvSqrt(float x) { float xhalf = 0.5f*x; int i = *(int*)&x; // get bits for floating VALUE ...

  4. 卸载 python 3.7.3 再安装 遇到 error 0x80070001

    这件事告诉我,千万不要手贱,闲的发慌蛋疼 手贱把用得好好的python 3.7.3 卸载后怎么装也装不回去, 告诉我遇到了 error 0x80070001 最终还是靠强大的谷歌找到了办法,幸好没有重 ...

  5. Q&A-Ray-20180710

    Q: 如果集群多个客户端订阅会不会重复接收消息? A: 集群环境用,有另外一个参数. NodeManager类没有在框架里面: public interface INodeManager : IGra ...

  6. ServiceFabric极简文档-4.0 开发环境搭建

    1. VS2017安装包启动页,安装Azure.(安装的VS的Tool)2. 下载Service Fabric Web PI,安装Service Fabric(自动安装SDK与Runtime)

  7. I/O:FileChannel

    FileChannel: abstract void force(boolean metaData) :强制将所有对此通道的文件更新写入包含该文件的存储设备中. abstract MappedByte ...

  8. .NET CORE 微信小程序消息验证的坑

    进入微信小程序,点击开发->选择消息推送->扫码授权,填写必要参数 进入接口开发: /// <summary> /// 验证小程序 /// </summary> / ...

  9. Git常用操作指南

    目录 前言 Git简介 安装之后第一步 创建版本库 本地仓库 远程仓库 版本控制 工作区和暂存区 版本回退 撤销修改 删除文件 分支管理 创建与合并分支 解决冲突 分支管理策略 状态存储 多人协作 R ...

  10. bzoj2431 || 洛谷P1521 求逆序对

    考虑一下插⼊法 n<=100n<=100n<=100 f[i][j]f[i][j]f[i][j]表⽰111~iii的全排列有j个逆序对的⽅案数 f[i][j]=Σf[i−1][j−k ...