• Python-基础知识-控制流程和文件操作


    控制流程

    一、判断if语句

      根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else执行了。elifelse if的缩写,完全可以有多个elif

      if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elifelse。

    >>> age = 20
    >>> if age >= 18:    #基本if语句
    ...     print('your age is', age)
    ...     print('adult')
    ...
    your age is 20
    adult
    >>> age = 3
    >>> if age >= 18:    #if...else语句
    ...     print('your age is', age)
    ...     print('adult')
    ... else:
    ...     print('your age is', age)
    ...     print('teenager')
    ...
    your age is 3
    teenager
    >>> age = 3
    >>> if age >= 18:    #if...elif...else语句
    ...     print('adult')
    ... elif age >= 6:
    ...     print('teenager')
    ... else:
    ...     print('kid')
    ...
    kid
    

    二、循环语句

    • for语句
    • while语句

    Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,看例子:

    >>> names = ['Michael', 'Bob', 'Tracy']
    >>> for name in names:
    ...     print(name)
    ...
    Michael
    Bob
    Tracy
    

    第二种循环是while循环,只要条件满足,就不断循环,条件不满足时退出循环。比如我们要计算100以内所有奇数之和,可以用while循环实现:

    >>> sum = 0
    >>> n = 99
    >>> while n > 0:
    ...     sum = sum + n
    ...     n = n - 2
    ...
    >>> print(sum)
    2500
    

    三、break语句和continue语句

      continue语句:提前结束当前循环,进入下一轮循环

      break语句:跳出当前循环,不再循环

    >>> for i in range(10):
    ...     if i<5:
    ...         continue    #不往下走了,直接进入下一次loop
    ...     print("loop:", i )
    ...
    loop: 5
    loop: 6
    loop: 7
    loop: 8
    loop: 9
    >>> for i in range(10):
    ...     if i>5:
    ...         break    #不往下走了,直接跳出整个loop
    ...     print("loop:", i )
    ...
    loop: 0
    loop: 1
    loop: 2
    loop: 3
    loop: 4
    loop: 5
    

     文件操作

      读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。

    一、基本操作

    对文件操作规范流程

    1. 打开文件,得到文件句柄并赋值给一个变量
    2. 通过句柄对文件进行操作
    3. 关闭文件
    f = open('lyrics') #打开文件
    first_line = f.readline()
    print('first line:',first_line) #读一行
    print('我是分隔线'.center(50,'-'))
    data = f.read()# 读取剩下的所有内容,文件大时不要用
    print(data) #打印文件
     
    f.close() #关闭文件
    

    打开文件的模式有:

    • r,只读模式(默认)。
    • w,只写模式。【不可读;不存在则创建;存在则删除内容;】
    • a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

    "+" 表示可以同时读写某个文件

    • r+,可读写文件。【可读;可写;可追加】
    • w+,写读
    • a+,同a

    "U"表示在读取时,可以将 自动转换成 (与 r 或 r+ 模式同使用)

    • rU
    • r+U

    "b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

    • rb
    • wb
    • ab

    二、with语句

    为了避免打开文件后忘记关闭,可以通过管理上下文,即:

    with open('log','r') as f:
        pass
    

    如此方式,当with代码块执行完毕时,内部会自动关闭并释放文件资源。

    在Python 2.7 后,with又支持同时对多个文件的上下文进行管理,即:

    with open('log1') as obj1, open('log2') as obj2:
        pass
    

     补充:

      input和raw_input的区别:

      input:python3.x的输入方式

      raw_input:python2.x的输入方式

      因此,input和raw_input具有同样的功能。

  • 相关阅读:
    Internet Explorer 加载项资源库
    Nexus one (Android 2.1升级Android2.2)
    QQ 2011 Beta 抢先体验,很给力啊!
    HttpWebRequest 下载网页Html代码 POST方式(站内使用了form方式) System.Net.WebException (417) Expectation failed
    WIndows 7 安装.net framework 4.0 失败,错误HRESULT 0xc8000222解决办法
    HttpWebRequest 下载网页Html代码 下载文件(Remote和FTP)Get方式
    CS0016: 未能写入(A compilation error has occurred.HttpCompileException: error CS0016: Could not write to output file 拒绝访问)
    如何只保留一个应用程序实例
    用excel打开从系统导出的csv文件时未分列
    Unhandled Error in Silverlight Application 无法下载 Silverlight 应用程序。请查看 Web 服务器设置
  • 原文地址:https://www.cnblogs.com/kirusx/p/6523723.html
Copyright © 2020-2023  润新知