#打开文件
os.open(file, flags[, mode]);
  • file -- 要打开的文件

  • flags -- 该参数可以是以下选项,多个使用 "|" 隔开:

    • os.O_RDONLY: 以只读的方式打开
    • os.O_WRONLY: 以只写的方式打开
    • os.O_RDWR : 以读写的方式打开
    • os.O_NONBLOCK: 打开时不阻塞
    • os.O_APPEND: 以追加的方式打开
    • os.O_CREAT: 创建并打开一个新文件
    • os.O_TRUNC: 打开一个文件并截断它的长度为零(必须有写权限)
    • os.O_EXCL: 如果指定的文件存在,返回错误
    • os.O_SHLOCK: 自动获取共享锁
    • os.O_EXLOCK: 自动获取独立锁
    • os.O_DIRECT: 消除或减少缓存效果
    • os.O_FSYNC : 同步写入
    • os.O_NOFOLLOW: 不追踪软链接
  • mode -- 类似 chmod()

返回值

返回一个文件对象

实例

以下实例演示了 open() 方法的使用:

import os, sys

# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT ) # 写入字符串
os.write(fd, str.encode("This is test")) # 关闭文件
os.close( fd ) print ("关闭文件成功!!")

执行以上程序输出结果为:

关闭文件成功!!
文件打开模式


#模块
包含所有定义的函数和变量的文件,后缀.py;可被其他程序引入,使用其中的函数
OS模块:不要操心操作系统匹配的什么模块,OS模块会自动选择并调用
 
OS中关于文件/目录常用函数及方法
http://www.runoob.com/python3/python3-os-file-methods.html
 
 
#永久存储
pickle模块:
转换为二进制:pickling 存放
从二进制读取:unpickling 读取

import pickle
my_list = [1,2,3,4,5,'hellow world']
pickle_file = open('xx.pkl','wb')
pickle.dump(my_list,pickle_file)
pickle_file.close()
pickle_file=open('xx.pkl','rb')
my_list2 = pickle.load(pickle_file)
print(my_list2)
 输出:

用notepad++打开xx.pkl 文件,发现已经写入

 
 
#异常处理
标准异常总结
https://fishc.com.cn/forum.php?mod=viewthread&tid=45814&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403
 
try:
     ………………//一旦出现异常,其余的不会执行
     ………………
except 异常名1【as 自定义变量名xx---可选】:
      ………………
except 异常名2【as 自定义变量名xx---可选】:
      ………………
finally:
    无论如何都会执行此处代码
 
 
可以同时处理多个异常
except (xx,yyy):
 
使用raise语句引发异常
raise 异常名('提示的内容')
 
 
 
 
else语句
1.if语句
2.for、while语句,循环结束后执行,如果中途有break,则不会执行
while xx:
  …………
  if yy:
     ……
      break;
else:
    ……
3.和异常处理搭配,同上,有异常不执行,没有异常则执行
try:
  ……
except xxx:
 ……
else:
 ……
with语句
自动解决文件没有关闭的问题
比如如果打开一个文件
f = open('','w')   改为   with open('','w') as f:
即可自动调用f.close() ,不用再写

Python笔记 【无序】 【三】的更多相关文章

  1. [Python笔记]第三篇:深浅拷贝、函数

    本篇主要内容:深浅拷贝,自定义函数,三目运算,lambda表达式, 深浅拷贝 一.数字和字符串 对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. import ...

  2. Python笔记(三):构建发布模块

      (一)     准备工作 1.   新建一个模块(名称自定义),存放要发布的模块代码. 2.   新建一个setup.py的模块(存放模块的元数据,描述相关信息). 3.   新建一个文件夹(名称 ...

  3. devi into python 笔记(三)callable getattr lambda表达式

    常用的函数:callable():如果所给参数是可调用的,返回True 不可调用返回Fasle.这里指的是否能调用说的是方法.类方法等有doc string的东西,一个单纯的字符串等就不算了. imp ...

  4. [Python笔记][第三章Python选择与循环]

    1月28日学习 Python选择与循环 选择结构 多分枝选择结构 if 表达式 1: 语句块 1 elif 表达式 2: 语句块 2 elif 表达式 3: 语句块 3 ... else : 语句块 ...

  5. Python笔记·第三章—— 逻辑运算

    一.逻辑运算符的种类及优先级 ▷逻辑运算符包括 not and or  ▷他们的优先级是 () > not > and > or 二.普通逻辑运算 ▷A and B --->  ...

  6. python笔记(三)---文件读写、修改文件内容、处理json、函数

    文件读写(一) #r 只读,打开文件不存在的话,会报错 #w 只写,会清空原来文件的内容 #a 追加写,不会请求,打开的文件不存在的话,也会帮你新建的一个文件 print(f.read()) #获取到 ...

  7. Python笔记(三)

    # -*- coding:utf-8 -*- # 运算符 a,b=10,20 # 算术运算符:包括+.-.*./.%.**.//运算 print "********************1 ...

  8. 【和孩子一起学编程】 python笔记--第三天

    第十章 游戏时间:Skier 首先安装pygame,直接在cmd命令控制框里键入pip install pygame就可以了 代码: import pygame, sys, random skier_ ...

  9. Python学习笔记整理(三)Python中的动态类型简介

    Python中只有一个赋值模型 一.缺少类型声明语句的情况 在Python中,类型是在运行过程中自动决定的,而不是通过代码声明.这意味着没有必要事声明变量.只要记住,这个概念实质上对变量,对象和它们之 ...

  10. python笔记 - day3

    python笔记 - day3 参考:http://www.cnblogs.com/wupeiqi/articles/5453708.html set特性: 1.无序 2.不重复 3.可嵌套 函数: ...

随机推荐

  1. python字典练习题

    python字典练习题 写代码:有如下字典按照要求实现每一个功能dict = {"k1":"v1","k2":"v2", ...

  2. ansible Api 2.3-2.4

    官网示例(python3) 说明: 在学习2.0 api的过程中遇到了一个坑,最新版的ansible(2.4)和2.3版本api引用时发生了变化,本文主要使用2.3 api进行操作,2.4只做分析 a ...

  3. SQL语法基础之DELETE语句

    SQL语法基础之DELETE语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看帮助信息 1>.查看DELETE的帮助信息 mysql> ? DELETE Na ...

  4. linux 配置本地光盘YUM源

    1.挂载光盘到 /media下 [root@localhost ~]# mount /dev/cdrom /media 2.直接配置文件了. [root@localhost ~]# cd /etc/y ...

  5. Sublime Text3 里使用MarkDown如何预览

    安装需要的包: 1.markdown editing 2.markdown preview 具体的步骤是: 1.按住ctrl + shift + p 来调出一个弹出的输入框 :2.输入package  ...

  6. Hadoop记录-yarn ResourceManager Active频繁易主问题排查(转载)

    一.故障现象 两个节点的ResourceManger频繁在active和standby角色中切换.不断有active易主的告警发出 许多任务的状态没能成功更新,导致一些任务状态卡在NEW_SAVING ...

  7. ibatis项目启动报错The string "--" is not permitted within comments【原】

    该错误主要就是因为xml中<!-- [注释]--> 注释与-->之间没有空格造成xml解析错误 sqlMapConfig.xml内容如下 <?xml version=" ...

  8. 谈一谈Elasticsearch的集群部署

      Elasticsearch天生就支持分布式部署,通过集群部署可以提高系统的可用性.本文重点谈一谈Elasticsearch的集群节点相关问题,搞清楚这些是进行Elasticsearch集群部署和拓 ...

  9. 在py文件中设置文件头

    在写python文件的时候有时需要记录作者.创建时间等时间,因此可以给python文件设置文件头,这里以PyCharm为例介绍设置步骤: 1. 打开PyCharm,依次点击Setting-----Ed ...

  10. 搭建VirtualBox虚拟机集群

    ===============================VirtualBox常用网络===============================NetworkAddress Translati ...