• 读写文件


    文件有两个关键属性: “文件名”和“属性”

    os.path.join函数用法:

    >>> import os
    >>> os.path.join('usr', 'bin', 'spam')
    'usr\bin\spam'
    
    >>> myFiles = ['accounts.txt', 'details.csv', 'invite.docx']
    >>> for filename in myFiles:
        print(os.path.join('C:\Users\asweigart', filename))
    C:Usersasweigartaccounts.txt
    C:Usersasweigartdetails.csv
    C:Usersasweigartinvite.docx

    当前工作目录

      os.getcwd()函数-->返回当前工作目录

      os.chdir()函数-->修改当前工作目录

    >>> import os
    >>> os.getcwd()
    'C:\Python34'
    >>> os.chdir('C:\Windows\System32')
    >>> os.getcwd()
    'C:\Windows\System32'

    用os.makedirs()创建新文件夹

    >>> import os
    >>> os.makedirs('C:\delicious\walnut\waffles')

    处理绝对路径和相对路径
      1. os.path.abspath(path):返回参数的绝对路径的字符串

      2. os.path.isabs(path):如果参数是一个绝对路径,就返回 True,如果参数是一个相对路径,就返回 False。
      3.os.path.relpath(path,start):返回从 start 路径到 path 的相对路径的字符串

    >>> os.path.abspath('.')
    'C:\Python34'
    >>> os.path.abspath('.\Scripts')
    'C:\Python34\Scripts'
    >>> os.path.isabs('.')
    False
    >>> os.path.isabs(os.path.abspath('.'))
    True
    
    >>> os.path.relpath('C:\Windows', 'C:\')
    'Windows'
    >>> os.path.relpath('C:\Windows', 'C:\spam\eggs')
    '..\..\Windows'
    >>> os.getcwd()
    'C:\Python34'

      4. os.path.dirname(path):将返回一个字符串,它包含 path 参数中最后一个斜杠之前的所有内容.

      5. os.path.basename(path):将返回一个字符串,它包含 path 参数中最后一个斜杠之后的所有内容

      6. os.path.split(path):将返回一个包括目录名称和基本名称的两个字符串的元组

    >>> path = 'C:\Windows\System32\calc.exe'
    >>> os.path.basename(path)
    'calc.exe'
    >>> os.path.dirname(path)
    'C:\Windows\System32'
    
    >>> calcFilePath = 'C:\Windows\System32\calc.exe'
    >>> os.path.split(calcFilePath)
    ('C:\Windows\System32', 'calc.exe')
    
    >>> calcFilePath.split(os.path.sep)
    ['C:', 'Windows', 'System32', 'calc.exe']

     查看文件大小和文件夹内容:
      os.path.getsize(path)将返回path参数中文件的字节数

      os.listdir(path)将返回文件名字符串的列表。

    >>> os.path.getsize('C:\Windows\System32\calc.exe')
    776192
    >>> os.listdir('C:\Windows\System32')
    ['0409', '12520437.cpx', '12520850.cpx', '5U877.ax', 'aaclient.dll','xwtpdui.dll', 'xwtpw32.dll', 'zh-CN', 'zh-HK', 'zh-TW', 'zipfldr.dll']
    
    >>> totalSize = 0
    >>> for filename in os.listdir('C:\Windows\System32'):
            totalSize = totalSize + os.path.getsize(os.path.join('C:\Windows\System32', filename))
    >>> print(totalSize)
    1117846456    

     检查路径有效性:

    >>> os.path.exists('C:\Windows')
    True
    >>> os.path.exists('C:\some_made_up_folder')
    False
    >>> os.path.isdir('C:\Windows\System32')
    True
    >>> os.path.isfile('C:\Windows\System32')
    False
    >>> os.path.isdir('C:\Windows\System32\calc.exe')
    
    False
    >>> os.path.isfile('C:\Windows\System32\calc.exe')
    True

    在Python中,读写文件的三个步骤:

      1. 调用 open()函数, 返回一个 File 对象, 默认的情况下,文件是以读的方式打开。
      2.调用 File 对象的 read()或 write()方法。
      3.调用 File 对象的 close()方法,关闭该文件。

    读取文件内容:

      1. File对象的read()方法:将整个文件的内容读取为一个字符串值。

      2. File对象的readlines()方法: 将文件取得一个字符串的列表,列表中的每个字符串就是文本中的每一行

    写入文件:

      1. ‘w’作为第二个参数传递给open()写模式:将覆写原有的文件,从头开始,就像你用一个新值覆写一个变量的值

      2.‘a’作为第二个参数传递给open()写模式:添加模式打开该文件

    >>> baconFile = open('bacon.txt', 'w')
    >>> baconFile.write('Hello world!
    ')
    13
    >>> baconFile.close()
    >>> baconFile = open('bacon.txt', 'a')
    >>> baconFile.write('Bacon is not a vegetable.')
    25
    >>> baconFile.close()
    >>> baconFile = open('bacon.txt')
    >>> content = baconFile.read()
    >>> baconFile.close()
    >>> print(content)
    Hello world!
    Bacon is not a vegetable.

      

  • 相关阅读:
    Applet
    Tutorial中代码的区别及不同效果
    Session
    代码解析&Filter用户授权例子
    Web的后台运作过程
    XML
    数据库
    spring常用注解
    spring mvc 常用注解
    @requestMapping
  • 原文地址:https://www.cnblogs.com/easy-wang/p/6418341.html
Copyright © 2020-2023  润新知