程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2023-05(1)

python_0基础学习_day02

发布于2019-08-05 11:11     阅读(997)     评论(0)     点赞(1)     收藏(0)


第二节

一,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 = True
      while 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 = 0
      num = 66
      while 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 = 0
      while num < 10:
         num += 1
         if num == 7:
             continue  # num为7的时候,结束本次循环,继续下次
         print(num)
      # 方法二
      num = 0
      while num < 10:
         num += 1
         if num == 7:
             num += 1 # num为7的时候,7+1
         print(num)  
    1. # 输出 1-100 内的所有奇数
      # 方法一
      num = 1
      while num < 100:
         print(num)
         num += 2   # 变量为1,每次都加二,输出的都是奇数
      # 方法二
      num0 = 1
      while num0 < 101:
         if num0 % 2 == 1: # 变量除2余1,然后输出
             print(num0)
         num0 += 1
    1. # 输出 1-100 内的所有偶数
      # 方法一
      num1 = 0
      while num1 < 100:
         num1 += 2 #   每次都加二,变量为0,输出的都是偶数
         print(num1)
      # 方法二
      num2 = 1
      while num2 < 101:
         if num2 % 2 == 0: # 变量2余0,是偶数
             print(num2)
         num2 += 1
    1. # 求1-2+3-4+5 ... 99的所有数的和
      num4 = 0
      ss = 0
      while num4 < 99:
         num4 += 1
         if num4 % 2:  # 求出奇数,然后相加
             ss += num4
         else:         # 求出偶数,然后奇数减偶数
             ss -= num4
      print(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 = 4
s1 = 0
while 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 8
    9 or 8 and 4 and False or 8
    9 or 4 and False or 8
    9 or False or 8
    9 or 8
    9

    not 3<5 and 6>3 or 6 and not True or False and 8 or 90
    False and 6>3 or 6 and not True or False and 8 or 90
    False and 6>3 or 6 and False or False and 8 or 90
    False or 6 and False or False and 8 or 90
    False or  False or False and 8 or 90
    False or False or False or 90
    90
  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
# True
not 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
# 8
0 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

 

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



所属网站分类: 技术文章 > 博客

作者:嘴巴嘟嘟

链接:https://www.pythonheidong.com/blog/article/4245/521edd81306cc4c4b271/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

1 0
收藏该文
已收藏

评论内容:(最多支持255个字符)