day08(补)
今日学习内容
1、文件重写方法
2、函数基本知识
文件处理:
打开文件
读/写文件
关闭文件
文件指针移动,只有t模式下的read(n),n代表的字符个数其余都是以字节为单位
f.seek有两个参数(offset whence)可以在t和b模式下用
offset:代表控制指针移动的字节数,在b模式下用
whence:代表参照什么位置进行移动,在b模式下用
whence:0文件开头
whence:1当前指针位置
whence:2文件末尾
文件修改的两种方式:
方式一:
1、将文件内容全部读入内存
2、在内存中完成修改
3、将内存中修改的内容覆盖原有内容
优:在硬盘上只有一份数据
缺点:占用内存过多
# with open(r'E:\code\GoodDog\day08\yuan',mode='rt',encoding='utf-8')as f_r:
# all_msg=f_r.read()
# print()
# with open(r'E:\code\GoodDog\day08\yuan',mode='wt',encoding='utf-8')as f_w:
# f_w.write(all_msg.replace('123','yxf'))
方式二:
1、以读的方式打开源文件,以写的方式打开一个临时文件
2、从源文件中每读一样内容修改完毕后写入临时文件,直到源文件读取完毕
3、删除原文件,将临时文件名重命名为原文件名
优点:节省内存,不占用过多内存
缺点:在硬盘上同一时间会有两份数据,会占用过多的硬盘
# with open('E:\code\GoodDog\day08\yuan',mode='rt',encoding='utf-8') as f_r,open('E:\code\GoodDog\day08\yuan2',mode='at',encoding='utf-8') as f_w:
# for i in f_r:
# f_w.write(i.replace('yxf','123'))
函数基本知识:
1、什么是函数?
具备某一功能的工具
函数的原则:先定义后调用
2、为什么要用函数?
1、程序的组织不清晰,可读性差
2、代码冗余
3、可扩展性差
3、如何用函数?
def 函数名(参数一,参数二...)
文档注释(可写可不写)
code1
code2
return 返回值
定义阶段:检查语法
调用阶段:运行代码
day08(补)的更多相关文章
- Oracle补全日志(Supplemental logging)
Oracle补全日志(Supplemental logging)特性因其作用的不同可分为以下几种:最小(Minimal),支持所有字段(all),支持主键(primary key),支持唯一键(uni ...
- Android动画效果之Tween Animation(补间动画)
前言: 最近公司项目下个版本迭代里面设计了很多动画效果,在以往的项目中开发中也会经常用到动画,所以在公司下个版本迭代开始之前,抽空总结一下Android动画.今天主要总结Tween Animation ...
- python 添加tab补全
在平时查看Python方法用到tab补全还是很方便的. 1. mac 平台 配置如下: mac是类Unix平台,需要在添加一条配置内容到bash_profile 中(默认是没有这个文件,可以新建一个放 ...
- 记录一次bug解决过程:else未补全导致数据泄露和代码优化
一.总结 快捷键ctrl + alt + 四个方向键 --> 倒置屏幕 未补全else逻辑,倒置查询数据泄露 空指针是最容易犯的错误,数据的空指针,可以普遍采用三目运算符来解决 SVN冲突解决关 ...
- android 帧动画,补间动画,属性动画的简单总结
帧动画——FrameAnimation 将一系列图片有序播放,形成动画的效果.其本质是一个Drawable,是一系列图片的集合,本身可以当做一个图片一样使用 在Drawable文件夹下,创建ani ...
- 关于用sql语句实现一串数字位数不足在左侧补0的技巧
在日常使用sql做查询插入操作时,我们通常会用到用sql查询一串编号,这串编号由数字组成.为了统一美观,我们记录编号时,统一指定位数,不足的位数我们在其左侧补0.如编号66,我们指定位数为5,则保存数 ...
- jQuery 邮箱下拉列表自动补全
综述 我想大家一定见到过,在某个网站填写邮箱的时候,还没有填写完,就会出现一系列下拉列表,帮你自动补全邮箱的功能.现在我们就用jQuery来实现一下. 博主原创代码,如有代码写的不完善的地方还望大家多 ...
- 为什么FFT时域补0后,经FFT变换就是频域进行内插?
应该这样来理解这个问题: 补0后的DFT(FFT是DFT的快速算法),实际上公式并没变,变化的只是频域项(如:补0前FFT计算得到的是m*2*pi/M处的频域值, 而补0后得到的是n*2*pi/N处的 ...
- eclipse自动补全的设置
eclipse自动补全的设置 如果你用过Visual Studio的自动补全功能后,再来用eclipse的自动补全功能,相信大家会有些许失望. 但是eclipse其实是非常强大的,eclipse的 ...
随机推荐
- 【代码笔记】iOS-增加右侧按钮
一,工程图. 二,代码. ViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup ...
- 分享一个 jsPDF的简单使用以及中文编码问题的解决
后台一个下载文件中内容国际化问题的坑甩到了前端 前端自己匹配,自己处理国际化,生成文件下载 jsPDF-AutoTable 挺靠谱 中文乱码, 还是好人多啊 解决方式如下文章 jsPDF的简单使 ...
- 安卓测试【二】eclipse离线安装ADT
为什么要配置ADT呢?这就相当于在eclipse里插入插件,可以编译android的相关程序. 为什么要离线呢?一个字,快!我在线装了一个下午的ADT,不是报错就是慢的跟头老牛似的. 所以我在网上下了 ...
- 安装google,多试试
对于谷歌Chrome32位版本,使用如下链接: wget https://dl.google.com/linux/direct/google-chrome-stable_current_i386.de ...
- CountDownTimer 源码分析
倒计时的功能,比如说:发送短信验证码倒计时. public class CountDownTimerActivity extends Activity { private Button mSend; ...
- C#和C++互相操作 结构体数组的传递
C++中结构体定义: typedef struct // 平面 { double time; float normal[3]; float center[3]; } plane; C++中方法声明 ...
- Group by 分组查询 实战
实战经历,由于本人在共享单车上班,我们的单车管理模块,可以根据单车号查询单车,但是单车号没有设置unique(独一无二约束),说以这就增加了单车号可能重复的风险,但是一般情况下,单车号是不会重复的,因 ...
- [iOS] UICollectionView实现图片水平滚动
最新更新: 简单封装了一下代码,参考新文章:UICollectionView实现图片水平滚动 先简单看一下效果: 新博客:http://wossoneri.github.io 准备数据 首先先加入一些 ...
- Windows10系统的Linux子系统中安装MySQL数据库心得
后端开发童鞋们, 自己开发机用的是Windows系统电脑(台式机或笔记本), 而开发的程序和使用的数据库等要运行在Linux服务器上, 这种情况有木有? 提前声明: 本文并不讨论操作系统的比较, 以及 ...
- 【转】Linux配置NTP时间同步服务器
分布式程序通常需要运行在一个统一的时间环境里. 转自:http://blog.csdn.net/mengfanzhundsc/article/details/62046562 安装NTP:yum in ...