美文网首页
循环和分支(这次来个全的,不分开写了)

循环和分支(这次来个全的,不分开写了)

作者: 她即我命 | 来源:发表于2018-07-19 21:01 被阅读0次

    for循环

    解决一个问题需要重复执行某一个过程

    Python中的循环有两个 for循环还有while循环

    for循环

    """
    for 变量名 in 序列:
    循环体

    for:关键字
    变量名:和声明变量时是一样的,功能是存储值
    in: 关键字,在。。。里的意思
    序列: 必须是容器类型的数据类型。字符串、列表、字典、元组、集合等。
    循环体:会重复执行的代码块

    执行的过程: 用变量不断地取序列的数据,一个一个地取,取完为止,每取一次执行一次循环体

    """
    for item in 'adcd123':
    print(item)

    """
    a
    b
    c
    d
    1
    2
    3
    """

    打印20次'abc'

    2.range函数

    """
    xrange是Python2.x中的函数,在Python3中无效了

    range功能是产生指定范围内的数字序列,一般用在for循环中,控制循环次数,或者产生索引值
    range(n): 产生 0 ~ n-1的整数序列
    range(n,m): 产生n~m-1的整数序列
    range(m,n,step): 从M开始,每次加step产生一个数据,直到n前面一个为止
    """

    产生数字0~9

    for x in range(10):
    print(x)

    产生数字10到19

    for x in range(10,20):
    print(x)

    产生数字0 2 4 6 8(2为步进)

    for x in range(0,10,2):
    print(x)

    练习: 1+2+3+.....100

    x = 0
    for i in range(1,101):
    x = x + i
    # x += i
    print(x)

    """
    x = 0

    x ~ [1~100]
    x = 1 x +=i = 0 + 1
    x = 2 x +=2 = 1 + 2
    x = 3 x +=3 = 1 + 2 + 3
    ......
    x = 100 x + = 100 = 1+2+3+...+100
    """

    练习:只使用一个循环

    计算123*..10

    计算246*...10

    a = 1
    b = 1

    遍历取出1-10中的数

    for i in range(1,11):
    a *= i

    判断i是否为偶数

    if i%2 == 0:
        b *= i
    

    print(a,b)

    练习:有一个字符串'abcdef',依次取出字符串中偶位数(下标值为偶数)

    方法二

    str1 ='abcdef'
    for index in range(0,len(str1),2):
    print(str1[index])

    方法二

    for index in range(0,len(str1)):
    if index % 2 = 0:
    print(str1[index])

    方法三

    index = 0
    for char in str1:
    if index % 2 == 0:
    print(char)
    index += 1
    """

    while循环

    """
    while 条件语句:
    循环体

    while; 关键字
    条件语句: 结果为true 或者false
    循环体:重复执行的代码段

    执行过程: 判断条件是否为true,为true执行循环体,然后回来判断条件是否为true,如果为false,循环结束,直接执行while循环后面的语句

    注意:如果条件的结果一直未true,就会造成死循环。所以在循环中要有结束循环的操作

    python中没有do-while循环
    """

    循环只执行一次

    flag = True
    while flag:
    print('aaa')
    flag = False

    使用while循环1+...100

    q=1
    sum = 0
    while q <= 100:
    print(q)
    sum += q
    #每次循环让Q值加一
    q += 1
    print(sum)

    练习:计算2+4+6+..100

    w = 2
    sum2 =0
    while w <=100:
    if w % 2 == 0:
    sum2 += w
    w += 1
    print(sum2)

    break和continue

    break和continue两个关键字都是用来结束循环。

    continue:关键字,在循环体中遇到continue,结束当次循环,直接接入下一次循环的判断
    下一个值,如果while后面的while循环就去判断while循环后面的条件语句是否为true)

    break:关键字,只要在循环体中遇到break就直接结束整个循环,直接执行循环后面的其他语句
    """

    for x in range(10):
    print(x)
    continue #不执行continue后面的循环,直接让下一个值x去
    print('===')

    取偶数

    for x in range(10):
    if x % 2:
    continue
    print(x)

    """
    break:关键字,只要在循环体中遇到break就直接结束整个循环,直接执行循环后面的其他语句
    """
    for x in range(10):
    print(x)
    break
    print('===')
    print('!!!')

    通过改变条件语句的值,来结束循环

    numer = 1
    while numer <= 100:
    print(numer)
    numer += 1

    通过break结束死循环

    numer = 1
    while True:
    if numer > 100:
    break
    print('==',numer)
    numer += 1

    练习:找出100-1000以内的第一个能够被3整除以及被17整除的数

    for numer in range(100,1001):
    if numer % 3 and numer % 17 == 0:
    print(numer)
    break

    for和while的选择以及循环嵌套

    1.for和while的选择

    """
    for循环的循环次数是确定的,while循环的循环次数可以不确定

    1. 循环次数不确定的时候,选择while循环,确定一般使用for循环
    2. 使用循环取遍历一个序列中的值使用for循环
      """

    2.input

    """
    input()接收从控制台输入数据的数据(输入的数据以回车结束)
    程序中遇到input()函数,程序会柱塞,等待用户输入完之后,才会接着执行后面的代码
    """

    value = input()

    print ('=====')

    3.产生随机数

    Python中的一个内置模块,可以产生随机数:random

    """
    randint(m,n):产生一个m-n的随机数(整数)
    """

    导入random模块

    import random

    产生100-200的随机数

    number = random.randint(100,200)
    print(number)

    相关文章

      网友评论

          本文标题:循环和分支(这次来个全的,不分开写了)

          本文链接:https://www.haomeiwen.com/subject/eqdxmftx.html