zoukankan      html  css  js  c++  java
  • Python 笔记——4 条件控制

    上一章讲了Python的数据类型及其用法,这一章来讲解Python的条件控制。

    1、if 条件

      if条件应该是所有编程语言中最经典的控制条件,但在python中,可以使用elif作为else if 的缩写。请注意:Python是一门强调缩进的语言,在if的条件后加入:表示这里是执行语句的入口,然后下一行必须按TAB缩进,下面的elif必须与上面同级的if对齐。

    >>> x = int(input("请输入一个整数:"))
    请输入一个整数:11
    >>> if x == 0:
        print(0)
    elif x > 0:
        print(x)
    else:
        print(-1)
    
        
    11

       那么在python中的三元表达式怎么写呢?x if y else z,假若满足条件y,则返回x,否则返回z。

    >>> x = 1
    >>> y = 2
    >>> "123" if  x > y else "321"
    '321'

    2、for

      python中的for与C#中的foreach 和 JAVA中的for有点相像。它能够遍历迭代器。下面我做了一个example,在py文件的文件夹中新建一个txt文件,里面放好我要遍历的文字。在py文件中定义函数main,首先打开test.txt,把所有行读取出来,给x赋值,打印出来以后发现是一个列表。当我使用for 来遍历x的时候,从x中读取每一行赋值给line,print之。

    def main():
        fh = open('test.txt')
        x = fh.readlines()
        print x
        for line in x:
            print(line)
    
    
    if __name__ == "__main__" : main()
    
    ['1 hi
    ', '2 hello
    ', '3 hello world']
    1 hi
    
    2 hello
    
    3 hello world

    3、while

      while循环和其他语言没有什么区别,当while中的条件为true的时候执行,否则结束循环。

    def main():
            i,j = 1,0
            while (i <= 100):
                    j,i = j+i,i+1
            print(j)        
    
    
    if __name__ == "__main__" : main()
    
    5050

    4、enumerate函数

      虽然这一节讲的条件控制,但是是在介绍for的时候不得不说一下enumerate这个函数。每一次它会返回两个值,第一个是index,第二个是值。

    def main():
            str = 'HelloWorld'
            for i,s in enumerate(str):
                    if s == "o":print('index {} is {}'.format(i,s))
    
    if __name__ == "__main__" : main()
    
    
    index 4 is o
    index 6 is o

    5、break、continue、else

      break表示跳出该循环,continent表示继续执行下一步,而else则是在循环结束时自动调用。在下面的程序中,有一个叫做range的函数,它有三种模式。

    range(x)、range(x,y)、range(x,y,z)。第一种是从0开始遍历到x-1,第二种是从x开始遍历到y-1,第三种是从x开始遍历到y-1,但步长为z。

    def main():
            for x in range(1,10):
                    for y in range(1,x):
                            if y == 5:
                                    break
                    else:
                            print(x),'break'
            i = 0
            for z in range(1,10):
                    if (z % 2 == 0):
                            continue
                    else:
                            print z,'continue'
    
    if __name__ == "__main__" : main()
    
    1 break
    2 break
    3 break
    4 break
    5 break
    1 continue
    3 continue
    5 continue
    7 continue
    9 continue

       最近有点事,要研究新算法,更新速度有点慢,内容也有点少,不过这些都是python比较基础的东西,在我写完预计的18-20章以后,再写一些项目实例。

  • 相关阅读:
    需求的有序化和方案的系统化
    产品 增长 口碑传播
    私域流量的价值 大悦城微信营销:14万微信会员哪来的
    产品创新阶段关口细则
    业务关键数据指标
    TOB 增长
    医美品零售门店分析
    数据赋能饮品轻食
    [已读]你不知道的JavaScript(上卷)
    [已读]移动web手册
  • 原文地址:https://www.cnblogs.com/44iter/p/3161864.html
Copyright © 2011-2022 走看看