Python之学习笔记(IO操作)

这篇博客主要探讨了Python中的文件目录操作和IO操作。首先,详细介绍了如何进行文件目录的创建、删除、遍历等基本操作;接着,深入讨论了Python的IO操作,包括文件打开模式、读写操作以及缓冲区的使用等核心概念。
摘要由CSDN通过智能技术生成

文件目录操作

# -*- coding: utf-8 -*-

import os

print os.name

# 获取系统信息
# os.uname() 在windows上不存在

# 操作系统的环境变量
print os.environ

# 获取某个环境变量
print os.getenv('PATH')

# 常用的文件操作
'''
# 查看当前目录的绝对路径:
>>> os.path.abspath('.')
'/Users/michael'
# 在某个目录下创建一个新目录,
# 首先把新目录的完整路径表示出来:
>>> os.path.join('/Users/michael', 'testdir') #合并路径
'/Users/michael/testdir'
# 然后创建一个目录:
>>> os.mkdir('/Users/michael/testdir')
# 删掉一个目录:
>>> os.rmdir('/Users/michael/testdir')
'''
# >>> [x for x in os.listdir('.') if os.path.isdir(x)]
# ['.lein', '.local', '.m2', '.npm', '.ssh', '.Trash', '.vim', 'Adlm', 'Applications', 'Desktop', ...]
for f in os.listdir('.'):
    path = os.path.abspath(f)
    print path, os.path.isfile(path) 

# 序列化
# 变量从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,在其他语言中也被称之为serialization,marshalling,flattening等等,都是一个意思。
# 把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickling

IO操作

# -*- coding: utf-8 -*-

import codecs

# 读写文件的方法一
try:
    f = open(r'F:\\Code_Practice\\Python_Project\\test.txt', 'r')
    f.read()
finally:
    if f:
        f.close()

# 读写文件的方法二
with open(r'F:\\Code_Practice\\Python_Project\\test.txt', 'rb') as f:
    print f.read()

'''
调用read()会一次性读取文件的全部内容,如果文件有10G,内存就爆了,所以,
要保险起见,可以反复调用read(size)方法,每次最多读取size个字节的内容。另外,调用readline()可以每次读取一行内容,调用readlines()一次读取所有内容并按行返回list。
因此,要根据需要决定怎么调用。
如果文件很小,read()一次性读取最方便;如果不能确定文件大小,
反复调用read(size)比较保险;如果是配置文件,调用readlines()最方便
'''

# 读写图片的方法
with codecs.open(r'F:\\Code_Practice\\Python_Project\\test1.jpg', 'r') as f:
    f.read(200)

'''
>>> f = open('/Users/michael/gbk.txt', 'rb')
>>> u = f.read().decode('gbk')
>>> u
u'\u6d4b\u8bd5'
>>> print u
测试  # 手动转码
'''
with open(r'F:\\Code_Practice\\Python_Project\\test.txt', 'a+') as f:
    f.write('Hello, world!')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值