while if 基础 标志位 break continue

昨日内容回顾

python2x python3x 区别

  python2x: 源码重复,不规范             python3x:源码规范 优美 清晰 简单

     编译型:将代码一次性全部转换成字节码     代表语言 C  C++     优点:执行速度快。   缺点: 不能跨越平台   开发速度慢(因为不方便调试)

    解释型: 代码重上而下 逐行解释                  代表语言 python     优点:开发效率高 ,便于调试,跨越跨平台   缺点:执行效率相对低

  python : Cpython,Jpython,pypy。。。。。

 python2x  python3x区别

  python2x:默认编码ASCII,代码首行  # -*- encoding:utf-8 -*-

       python3x:默认编码 utf-8

变量:

1  必须有数字,字母,下划线任意组合

2  不能数字开头    

3  不能是python中的关键字

4  要有描述性  有意义

5  不能用拼音和中文

6  不能过长                      驼峰体  OldBoy     下划线  old_boy

 常量:长期不变的量  字母全部大写常量  放着文件的最上面,可以改变  但是意思是希望你不要改

注释:单行:#  多行:'''     '''  三引号

基础数据类型:

数字:    int:整型       float:浮点型     long int:(了解一下就行 现在已经少用了)

str:  在python中 引号 引起来的数据就是字符串。      如果说你的字符串里有引号了,就需要单刷引号配合使用 (意思都是引号 可以区别开来)

   对于字符串多行则用三引号"""    """  可以换行  比如一首诗  用三引号可以对齐

  字符串可以拼接+,   可与数字相乘*

bool类型    :   True     ,  False

用户输入:input  全部是字符串类型      数据类型的转换     int()     str()

if语句 五种结构:    if 条件:   if  elif 。。。。。。。

 

 总结 -------------------------------------------------------------------------------------------------------------------------

   while True:     #这是一个死循环  没有终止他的条件,他会一直打印下面的结果

  print()                        ------------while 条件:

  print()                                                 循环体

# 如何终止循环?   1 :改变条件  (标志位的概念)   2 : break 终止循环

  flag = True

  while flag:

        print(‘青’)----------------   这个将会打印出 青   紫, 在青的下面把flag 改变了 就不会循环了

        flag = False----------------    但是要把紫打印出来经过他 回到最上面 然后判断为 False 才会停止这个循环

        print(‘紫’)----------------

  

  写出  1 到100  数字        方法一::

  flag = True                    ------------------------------  等于先设一个变量 (就是标志位)为True   

  count = 1                      ----------------------------     下面一直 count + 1  赋值 给 count 然后循环回上面           (一个=是赋值   两个== 是比较)

  while flag:              --------------------------------      当 count 比较 101的时候(当左边if count  和右边101  都为101的时候)

    print(count)         -----------------------------    上头设置的变量   flag = False

    count = count + 1 --------------------------------   从而 结束这个循环

    if count ==101: ----------------------------------

    flag = False             --------------------------------

   ————————————————————————————————————————————

 方法二::

       count = 1                        -----------------   把条件设置在第一行,当这个数 小于 101的时候 这个循环正常进行

  while  count < 101:          -----------------   打印 这个数字  而且这个数字+1   

  print(count)                     ------------------   一直到这个数字等于101的时候

  count = count +1              ----------------这个循环结束   101不打印     只打印了1到100的     与题相符

  

break  循环中 只要遇见break   立马结束循环。

while Tuse       ------------------------  这个循环中 遇见了 break   直接终止循环

  print(1) ------------------------ 打印了1   ,  2     , 1234

  print(2)------------------------    因为最下面的  和while Tuse 是同级的 并列的

  break       -------------------------- 所以他遇见  break   终止了循环 不打印3和4

  print(3)-------------------------- 和她是没有关系的    1234  还是打印

  print(4)------------------------

print(1234)------------------------

——————————————————————————————————————

利用 break  while  计算1+2+3到100 的结果

count = 0            --------------    设count 为1     sum= count+1

sum = 0          if     当count>101的时候

while True:        执行  break   并且打印出sum

  sum = sum + count

  count = count + 1     当count 不等101的时候 不会执行break 

   if   count>100:                所以这个程序会一直循环

    break        

print(sum)

 

# continue: 结束本次循环,继续下一次循环。
#
# # while True:
# # print(111)
# # print(222)
# # continue
# # print(333)
——————————————————————————————————
# while else  结构

# 如果while循环被break打断,则不执行else代码。
# count = 1
# while count < 5:
# print(count)
# count = count + 1
# if count == 3: break
# else:
# print(666)
# print(222) --------------- 只打印1.2.222 if 当这个count值等于3的时候就执行break打断 最下面的222和上面是同级关系,不受影响


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

# 第二种方式
# msg = '你的名字是%(name1)s,你的年龄%(age1)d,你的性别%(sex1)s' % {'name1':name,'age1':age,'sex1':sex}
# print(msg)

# bug 点 在格式化输出中,只想单纯的表示一个%时,应该用%% 表示
# msg = '我叫%s,今年%d,我的学习进度1%%' % ('关亮和',28)
# print(msg)
 

运算符  

# and or not
# 优先级:()> not > and > or
# 第一种情况,前后条件为比较运算
# print(1 < 2 or 3 > 1)


# 第二种情况,前后两边的条件为数值
'''
x or y if x is True,return x

'''
# 补充
# int < --- > bool
# 0 对应的bool值为False,非0 都是True.
# True 1 ,False 0

# print(bool(100))
# print(bool(-1))
# print(bool(0))
# print(int(True))
# print(int(False))
'''
# print(0 or 3 and 5 or 4)

思考
# print(1 > 2 or 3 and 4 < 6)
# print(2 or 3 and 4 < 6)
-----------------
# = not   and  or

# print(not a)=正确的前面加not=真 print(not b) = 假的前面加not = 真(完全相反)
#
# print(a and b) = 假(有一边为假 就等于假) print(a and a)=真(两边都为真 就等于真)
# # print(a and not b)
# print( a or b) = 真 (有一边为真 就等于真) print(b or b)=假 (两边都为假 才是假)

# a = True
# b = False
# # # print(not a )
# # print((not b))
# # print(a and a)
# # print(a and b)
# print(a or b)
# print(b or b)


 

    

            

                              

 

    

posted @ 2018-08-03 19:07  一个稳定抗压的人  阅读(416)  评论(0编辑  收藏  举报