python学习第五天

#文件操作和数据格式化  #加b表示二进制  #加+表示读写
#r      rb      r+      rb+     #开头写入
#w      wb      w+      wb+     #覆盖写入
#a      ab      a+      ab+     #结尾写入
#语法fileobject=open(file_name[access_mode][buffering])

#打开文件
fa=open("D:\\text.txt","rb")
print(fa.readline())
fa.close()
#关闭文件
fa=open("D:\\text.txt","wb")
print("Name of the file:",fa.name)
fa.close()

#file.close         检查是否关闭(true,false)
#file.mode          查看访问模式
#file.name          返回名称
#file.softspace     print输出后必须有个空格返回false,否则true
#f.read(count)      读
#f.write()          写

#写入文件
fa=open("write.txt","w")
fa.write('python is a bady\nPython')

#读取文件
fa=open("write.txt",'r+')
print("Pead String is:",fa.read(16))
fa.close()
#
fa=open("write.txt",'r+')
print("Pead String is:",fa.read(16))
position=fa.tell();
print("Cyrrent file position:",position)
position=fa.seek(0,0)
print("Again read String is:",fa.read(16))
fa.close()

#os模块
import os
os.rename(,)         #重命名文件
os.remove()         #删除文件
os.mkdir()          #创建新目录
os.chdir()          #当前目录的新名称
os.rmdir()          #删除目录
os.getcwd()         #显示当前目录
'''
#异常处理和断言
BaseException                                   #所有异常基类
+-- SystemExit                                  #解释器请求退出
+-- KeyboardInterrupt                           #用户中断执行
+-- GeneratorExit                               #生成器发生异常通知退出
+-- Exception                                   #常规错误基类
      +-- StopIteration                         #迭代器没有更多值
      +-- ArithmeticError                       #所有数值计算错误基类
      |    +-- FloatingPointError               #浮点计算错误
      |    +-- OverflowError                    #运算超限
      |    +-- ZeroDivisionError                #除零
      +-- AssertionError                        #断言语句失败
      +-- AttributeError                        #对象没有这个属性
      +-- BufferError                           #
      +-- EOFError                              #没有内建输入,到达EOF标记
      +-- ImportError
      +-- LookupError
      |    +-- IndexError
      |    +-- KeyError
      +-- MemoryError
      +-- NameError
      |    +-- UnboundLocalError
      +-- OSError
      |    +-- BlockingIOError
      |    +-- ChildProcessError
      |    +-- ConnectionError
      |    |    +-- BrokenPipeError
      |    |    +-- ConnectionAbortedError
      |    |    +-- ConnectionRefusedError
      |    |    +-- ConnectionResetError
      |    +-- FileExistsError
      |    +-- FileNotFoundError
      |    +-- InterruptedError
      |    +-- IsADirectoryError
      |    +-- NotADirectoryError
      |    +-- PermissionError
      |    +-- ProcessLookupError
      |    +-- TimeoutError
      +-- ReferenceError
      +-- RuntimeError
      |    +-- NotImplementedError
      +-- SyntaxError
      |    +-- IndentationError
      |         +-- TabError
      +-- SystemError
      +-- TypeError
      +-- ValueError
      |    +-- UnicodeError
      |         +-- UnicodeDecodeError
      |         +-- UnicodeEncodeError
      |         +-- UnicodeTranslateError
      +-- Warning
           +-- DeprecationWarning
           +-- PendingDeprecationWarning
           +-- RuntimeWarning
           +-- SyntaxWarning
           +-- UserWarning
           +-- FutureWarning
           +-- ImportWarning
           +-- UnicodeWarning
           +-- BytesWarning
           +-- ResourceWarning
'''
#可以用try/except语句来检测try语句块中的错误让except语句捕获异常信息并处理
'''
try:
    <语句>                #运行别的代码
expect <名字>:
    <语句>                #如果在try部引发了’name‘异常
expect <名字>,<数据>:
    <语句>                #如果引发了’name‘异常,获得附加的数据
else:
    <语句>                #如果没有异常发生
'''

#异常处理
try:
    fh=open("write.txt","w")
    fh.write("This is my text file for excertion handling!!")
except IOError:
    print("Error:can\'t find file or read data")
else:
    print("Written content in the file successfully")
    fh.close()

#try...finally语句无论是否发生异常,都将执行最后的代码。
"""try:
    <语句>
finally:
    <语句>
raise"""

#用raise语句自己触发异常     #raise[Exception[agrs[traceback]]]
#异常参数可选,默认为None

#assert(断言)
#用于判断一个表达式,如果断言成功,不采取任何措施,否则,触发AssertiionError的异常
#通常,assert语句用于检查函数参数的属性或初期测试和调试过程的辅助工具
#assert expression[,argument]
#会产生异常的断言
assert 3==6
assert len[a,b,c,d]>5
#包含断言的程序
s_age=input("请输入年龄:")
age=int(s_age)
assert 19<age<45
print("输入的年龄在19和45之间")
#特殊的分支结构


#数据格式化
#数据的维度,一维,二维,高维。。。
#高维数据在网络系统中十分常见,HYML,XML,JSON等都是高维数据组织的语法结构
#分隔方式  1.空格  2.逗号  3.其他符号
#一二维数据存储格式:CSV格式(逗号分隔值)
#通用文件格式,程序之间转移表格
'''
fo=open("cpi.csv","r")
cc=[]
for line in fo:                             #一维
    cc.append(line.strip('\n').split(","))
fo.close()
print(cc)
'''
'''
for row in cc:                              #二维
    for item in row:
        <对row行item列元素进行处理>
'''
#高维数据的格式化
#表示采用键值对,是高维数据的特征,用JSON格式进行表达和存储

#万维网是复杂的数据组织体系,通过HTML方式链接并展示不同类型数据内容
#XML或JSON格式表达键值对

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值