HeadfirstPython---3文件与异常4持久存储

文件读写

import os

print(os.getcwd())
data = open("1.txt")
print(data.readline(),end='')#遇到空格结束
print(data.readline(),end='')
print("*"*30)
data.seek(0)    #返回文件起始位置
for each_line in data:
    print(each_line,end='')
data.close()
----------------------------------------------
C:\Users\Administrator\PycharmProjects\qq
salfhda;gherg
h546874846
******************************
salfhda;gherg
h546874846
asght5468
fasdf5453rgehnyjyt
!@#$%^&*()
      **2565

Split()

a = "a,b,c,d,e,f?g"
b = []
b = a.split(",")    #分割函数
for i in b:
    print(i)
----------------------------
a
b
c
d
e
f?g

find()

a = "sadffdsa,b,c,d,e,f?g"
b = "abcdefg"

print(a.find(","))
print(b.find(","))
-----------------------------------
8
-1

异常处理

在正常的控制流期间,Python尝试运行你的代码,如果没有任何问题,代码会继续运行。
在异常控制流期间,Python先尝试运行你的代码,如果发现有问题,就会执行恢复代码,然后继续正常执行你的代码
*try/except机制:
try:
你的代码(可能导致一个错误)
except:
错误恢复代码;
*

b = "abcdefg"
c = []
try:
    c = b.split(',')    #这种方式可以接受所有形式的划分
    print(c)
    (d,e) = b.split(',')#若代码错误,执行恢复语句
except:
    print("该字符串不能被分割")
******************************************************
['abcdefg']
该字符串不能被分割

特定指定异常

try:
    a = open("a.txt")
except IOError:
    print("找不到这个文件")

使用try/except可以让你关注代码真正需要做的工作
而且可以避免向程序增加不必要的代码和逻辑

保存数据到文件

open()

open()有写和读两种模式,默认R读,写需要指定,W
使用W模式时,Python会打开指定的文件来完成写。如果这个文件已经存在,则会清空它的所有内容。
要追加一个文件,则需要使用模式a,
要打开一个文件来完成读和写(不清除),需要使用W+
如果想打开一个文件完成写,但是这个文件并不存在,那么首先会创建这个文件,然后打开文件进行写。

try:
    a = open("a.txt",'w')
    print("adsfasfjsdf",file=a)
except IOError:
    print("找不到这个文件")

用With处理文件
由于处理文件时try/except/finally模式相当常用,所以提供了一个语句抽象出细节。对文件使用with语句,可以大大减少需要编写的代码量,因为有了with语句就不再需要包含一个finally组来处理文件的关闭。

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值