zoukankan      html  css  js  c++  java
  • Python学习进程(13)文件与IO

        本节介绍基本的IO函数和文件的读写操作。

        (1)读取键盘输入:

        Python用于读取键盘输入的函数有两个:raw_input与input。

          1)raw_input函数

          从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符)

    >>> str=raw_input("请输入一个字符串")
    请输入一个字符串
    >>> str=raw_input("请输入一个字符串:
    ")
    请输入一个字符串:
    my name is MenAngel
    >>> print str
    my name is MenAngel

          2)input函数

          input接收一个Python表达式作为输入,并将运算结果返回

    >>> str=input("请输入一个普通字符串:
    ")
    请输入一个普通字符串:
    Hello World
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "<string>", line 1
        Hello World
                  ^
    SyntaxError: unexpected EOF while parsing
    >>> str=input("请输入一个表达式字符串:
    ")
    请输入一个表达式字符串:
    78+32
    >>> print str
    110

          用raw_input或者input读取键盘输入,用print输出到标准输入输出。

        (2)打开和关闭文件:

        Python 提供了必要的函数和方法进行默认情况下的文件基本操作。大部分的文件操作是通过file对象实现的:

          1)file对象的属性

          Python中伴随着文件的打开是file对象的创建,通过file对象可以得到有关文件的各种信息:

    >>> fo=open('text.py','w')      #两个参数都是字符串
    >>> print "文件名:",fo.name
    文件名: text.py
    >>> print "文件名是否已经关闭:",fo.closed
    文件名是否已经关闭: False
    >>> print "访问模式:",fo.mode
    访问模式: w
    >>> print "末尾是否强制加空格:",fo.softspace
    末尾是否强制加空格: 0

          2)write方法:

        write()方法可将任何字符串写入一个打开的文件。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。

        write()方法不会在字符串的结尾添加换行符(' '):

    >>> fo.write("健康是福
    ")
    >>> fo.write("是是非非终为假,云淡风清总是真。")
    >>> fo.close()
    >>> print "文件模式为:",fo.mode
    文件模式为: w
    >>> print "文件是否已经关闭:",fo.closed
    文件是否已经关闭: True

          3)read方法:

          read()方法从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。语法:

    fileObject.read([count]);
    >>> fo=open("text.py",'r')
    >>> print "文件状态为:",fo.mode
    文件状态为: r
    >>> str=fo.read(30)
    >>> print "读取的字符是:",str
    读取的字符是: 健康是福
    是是非非终为假,云淡

          每次read指定之后,指针位置都会向后移动。

          4)close方法:

          File 对象的 close()方法刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再进行写入。

          当一个文件对象的引用被重新指定给另一个文件时,Python 会关闭之前的文件。

        (3)文件的定位:

        tell()方法:告诉你文件内的当前位置,即下一次的读写会发生在文件开头这么多字节之后

        seek(offset [,from])方法改变当前文件的位置。Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置。

    1.如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。
    2.如果设为1,则使用当前的位置作为参考位置。
    3.如果设为2,那么该文件的末尾将作为参考位置。

         tell函数和seek函数运用实例:

    >>> fo=open('text.py','r+')
    >>> str=fo.read(30);
    >>> print str
    健康是福
    是是非非终为假,云淡
    >>> print "文件指针距离开头的位置是:",fo.tell()
    文件指针距离开头的位置是: 31
    >>> fo.seek(0,0)
    >>> print "文件指针距离开头的位置是:",fo.tell()
    文件指针距离开头的位置是: 0
    >>> str=fo.read(40)
    >>> print str
    健康是福
    是是非非终为假,云淡风清总是真

        (4)重命名和删除文件:

        os模块提供了帮你执行文件处理操作的方法,比如重命名和删除文件。(使用前必须先导入)

          1)rename()方法:

          使用方法:

    os.rename(current_file_name, new_file_name)
    >>> import os
    >>> os.rename('text.py','yan.text')
    >>> fo=open('yan.text','r');
    >>> str=fo.read(40)
    >>> print str
    健康是福
    是是非非终为假,云淡风清总是真

          2)remove()方法:

          可以用remove()方法删除文件,需要提供要删除的文件名作为参数:

    os.remove(file_name)
    os.remove('yan.text')   #在执行此操作之前要确保没有进程占用这个文件

        (5)Python里的目录:

        所有文件都包含在各个不同的目录下,不过Python也能轻松处理。os模块有许多方法能帮你创建,删除和更改目录。

          1)mkdir()方法:

          可以使用os模块的mkdir()方法在当前目录下创建新的目录:

    os.mkdir("newdir")
    >>> import os
    >>> os.getcwd()
    'E:\Python2.7.12'
    >>> os.mkdir('text')

          2)chdir()方法:

          可以用chdir()方法来改变当前的目录。chdir()方法需要的一个参数是你想设成当前目录的目录名称:

    os.chdir("newdir")
    >>> import os
    >>> os.getcwd()
    'E:\Python2.7.12'
    >>> os.chdir('text')
    >>> os.getcwd()
    'E:\Python2.7.12\text'

          3)rmdir()方法:

          rmdir()方法删除目录,目录名称以参数传递。在删除这个目录之前,它的所有内容应该先被清除。

    >>> os.mkdir('text')
    >>> os.rmdir('text')    #相对路径
    >>> os.mkdir('text')
    >>> os.rmdir('E:\Python2.7.12\text\text')   #绝对路径
  • 相关阅读:
    8.用户注销
    7.用户登陆,用户退出,记住用户名和密码
    6.后台验证码-session作用域
    5.验证用户名是否已经被注册:AJAXC请求
    4.前端注册表单验证 && 表单回填
    3.注册后台处理逻辑编写
    HTTP Status 500
    jquery之stop()的用法
    angular.forEach
    jquery如何获取第一个或最后一个子元素?
  • 原文地址:https://www.cnblogs.com/MenAngel/p/5701444.html
Copyright © 2011-2022 走看看