zoukankan      html  css  js  c++  java
  • day 2

    while循环:
    while 条件:
      循环体  
    while True:                #判断条件,如果条件为真,进入循环体
     	print('大悲咒')
    	print('两只老虎')
    	print('霸王别姬')
     	print('老司机带带我')   #返回到条件,继续判断条件  
    如何终止循环?
    1.改变条件(标志位的概念
    flag = True
     while flag:
      	print('大悲咒')
      	print('两只老虎')
      	print('霸王别姬')
     	print('老司机带带我')
      	flag = False
    

      当循环条件为False时,无论下面有多少代码都不执行,例如:

    flag = True
     while flag:
     	print('大悲咒')
      	print('两只老虎')
     	flag = False
      	print('霸王别姬')
      	print('老司机带带我')
    

      

    flag = True
    while flag:
    	print('love story')
    	flag = False
    	print('有一个姑娘')
    

      while循环练习:

    把1—100循环打印出来

    flag = True
    count = 1
    while flag:
    	print(count)
    	count = count + 1
    	if count == 101:
    		flag = False
    

     或者用比较的方式来打印

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

     初学者尽量以第一种方式,True 跟 Flase的思想

        2.break

    while True:
    	print(111)
    	print(222)
    	break
    	print(333)
    	print(444)
    

     结果打印出 111  222,当break出现时,不论在何地出现,while循环都会终止

     break练习:打印出1+2+3+4+......100的和

    count = 1
    sum = 0
    while True:
    	sum = sum + count
    	count = count + 1
    	if count == 101:
    		break
    print(sum)
    

     或者

    count = 0
    num = 0
    while count < 100:
    	count += 1
    	num = count + num
    print(num)
    

     continue : 结束本次循环,继续下一次循环

     例如:把1—10打印除7以外的数字

    num = 0
    while num < 10:
    	num = num + 1
    	if num == 7:
    		continue
    	print(num)
    

     while.....else  结构

     如果while循环被break打断,那么将不执行else代码

    count = 1
    while count < 5:
    	print(count)
    	count = count + 1
    	if count == 3 : break
    else:
    	print(666)
    print(222)
    

     应用场景:

        验证用户名密码,重新输入这个功能需要while循环

     无限次的显示页面,无限次的输入

    格式化输出:

      制作一个模板,某些位置的参数是动态的,这样的就需要格式化输出

    字符串的动态替换例子:

    age =  input('请输入你的年龄:')
    sex = input('请输入性别:')
    name = input('请输入你的姓名:')
    msg = '你的名字是%s,你的年龄是%s,你的性别是%s' %(name,age,sex) print(msg)

     或者 

    name = input('请输入你的姓名:')
    age = int( input('请输入你的年龄:'))
    sex = input('请输入性别:')
    # %占位符 s 数据类型为字符串 d 数字
    msg = '你的名字是%s,你的年龄是%d,你的性别是%s' % (name,age,sex)
    print(msg)

     如果占位符上的数字是%d,那么相应位置上需要加上int

     例如:age = int(input('请输入你的年龄'))

    还可以运用字典:

    name = input('请输入你的姓名:')
    age = int( input('请输入你的年龄:'))
    sex = input('请输入性别:')
    msg = '你的名字是%(name1)s,你的年龄是%(age1)d,你的性别是%(sex1)s' % {'name1':name,'age1':age,'sex1':sex}
    print(msg)

    运用字典{}时,要注意前面的名词是一个字符串{'name1':name}

    要注意有个bug点 ,在格式化输出中,只想单纯的表示一个 % 时,应该用 %%表示

    msg = '我叫%s,年龄%d,我现在的学习进度是1%%' % ('Beriuta',23)
    print(msg)

    运算符

    ==     比较的两边的值是否相等
    =      赋值运算
    !=     不等于
    +=     count = count + 1      简写 count += 1
    -=     count = count - 1      简写 count -= 1        
    *=     count = count * 5      简写 count *= 5
    /=     count =  count / 5     简写 count /= 5
    **=    count = count **8      简写 count **= 8
    //=    count = couont//4      简写 count //= 4
    

     逻辑运算符

    and       or       not

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

    第一种情况,前后条件为比较运算

    print(1 > 2 and 3 > 4 or 7 < 9 and 4 > 0 or 3 > 4)
    

    第二种情况,前后两边的条件为数值

    数字只有 0 为Flase

    x or y 如果x 为真,则返回x的值
    x and y 相反

    print(1 or 2)
    print(1 and 2)

    补充

    int  <---> bool
    0 对应的bool值为False,非 0 都是True
    True                 1
    Flase                0 
    print(bool(100))
    print(bool(0))
    print(bool(-1))
    print(int(True))
    print(int(Flase))
    

    代码初始:

    ASSCII:最初版本的密码本,包含所有英文字母,数字,特殊字符

    UTF — 8:最少用8位表示一个字符

          A:01000010                                         一个字节
    欧洲文字:01000111 01000111                                两个字节 
         中:01000111 01000111 0010011                        三个字节
    'abc 女孩':九个字节
    

    gbk:国标,只包含中文,英文(英文字母,数字,特殊字符)

    A:01000010                         一个字节
    中:01000111 01000111                两个字节
    

      

      

      

     

  • 相关阅读:
    Qt中的标准对话框之QMessageBox
    OpenCV相机标定坐标系详解
    typedef定义数组类型
    导出csv文件(使用a标签)
    获取过去某个时刻时间戳
    查看有没有绑这个host
    $.param()序列化对象
    推荐一个好用的模版引擎工具
    node定时任务
    使用vscode打断点
  • 原文地址:https://www.cnblogs.com/beriuta/p/9415235.html
Copyright © 2011-2022 走看看