from sys import argv
script,filename=argv
#不要忘了script(相当于一个固定变量),filename(可变变量)
txt=open(filename) #只读filename这个文件
#open()函数
#open(name[, mode[, buffering]])
#name:文件名
#mode 决定了打开文件的模式:只读,写入,追加等(默认为只读r)
#r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
#r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
#w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件
#w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
#a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
#a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
#buffering : 如果 buffering 的值被设为 0,就不会有寄存。如果 buffering 的值取 1,访问文件时会寄存行。如果将 buffering 的值设为大于 1 的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认
print("Here is your file %r:"%filename) #打印here is your file "filename"
print(txt.read()) #对txt执行read命令并且打印结果(就是打印txt的内容啦)
print("type the filename again:") #打印type the filename again:
file_again=input(">") #用input键入,'>'这个是用户提示符
txtagain=open(file_again) #只读刚刚键入的txtagain文件
print (txtagain.read()) #对txtagain执行read命令并打印结果
#file 对象方法:比如说“对txt执行read命令且打印结果。
#file.read([size]):若不加size则返回整个文件。.f.read()读到文件尾时返回""(空字串)
#file.readline() 返回一行,比如有三行要读三行就要输入三次readline命令
#file.readlines([size]) 返回包含size行的列表,size 未指定则返回全部行
#for line in f: print (line) #通过迭代器访问
#f.write("hello\n") #如果要写入字符串以外的数据,先将他转换为字符串
#f.tell() 返回一个整数,表示当前文件指针的位置(就是到文件头的比特数).
#f.close() 关闭文件
###!!!!!在cmd里调用ex15的时候,一定在要读取的文本前加路径!!!
### python\demo\ex15.py e:\python\demo\ex15_sample.txt
#-------------------------------------------------------------#分隔符
#一个关于file.function的例子(一个个来运行不要一起运行)
file=open('E:\python\demo\ex15_sample.txt','r+')
print(file.read()) #读取全部(感觉会用的比较多)
print(file.read(3)) #读取前三个字符:Thi
print(file.readline()) #读取一行,每次只读一行
print(file.readlines()) #读全部
#file.readlines([size]) size未指定返回全部行,每一行连着输出,会有换行符/n,,每一行的内容用’‘引住

划重点!!!

1、open()函数,具体的内容写在上面了。需要注意的是,在对文件进行进一步操作时,一定要先open啊!!!

2、file 对象方法

3、read(),read(size),readline(),readlines()这一个大家族

5.18-笨办法学python-习题15(open等读取文件)的更多相关文章

  1. 笨办法学Python - 习题1: A Good First Program

    在windows上安装完Python环境后,开始按照<笨办法学Python>书上介绍的章节进行练习. 习题 1: 第一个程序 第一天主要是介绍了Python中输出函数print的使用方法, ...

  2. 笨办法学Python - 习题3: Numbers and Math

    目录 习题 3: 数字和数学计算 算术运算符 加分习题: 我的答案: 总结: 扩展: Python比较运算符 Python赋值运算符 Python位运算符 Python逻辑运算符 Python成员运算 ...

  3. 笨办法学Python - 习题11-12: Asking Questions & Prompting People

    目录 1.习题 11: 提问 2.习题 12: 提示别人 3.总结 1.习题 11: 提问 学习目标:了解人机交互场景,熟悉raw_input 的用法. 1.在 Python2.x 中 raw_inp ...

  4. 笨办法学Python - 习题8-10: Printing & Printing, Printing

    目录 1.习题 8: 打印,打印 2.习题 9: 打印,打印,打印 3.习题 10: 那是什么? 3.1.转义序列: 4.习题总结: 1.习题 8: 打印,打印 学习目标:继续学习 %r 的格式化输出 ...

  5. 笨办法学Python - 习题6-7: Strings and Text & More Printing

    目录 1.习题 6: 字符串(string) 和文本 2.加分习题: 3.我的答案 4.习题总结 5.习题 7: 更多打印 6.习题总结 1.习题 6: 字符串(string) 和文本 学习目标:了解 ...

  6. 笨办法学Python - 习题5: More Variables and Printing

    1.习题 5: 更多的变量和打印 学习目标:了解用户输入方法,明白pthon2和Python3之间的用户输入的区别.了解格式化字符串(format string)的概念,学会如何创建包含变量内容的字符 ...

  7. 笨办法学Python - 习题4: Variables and Names

    1.习题 4: 变量(variable)和命名 学习目标:了解Python中变量的定义,学习定义简明易记的变量名 变量:变量是存储内存中的值,就是每定义一个变量就会在内存中开辟一个空间.基于变量的类型 ...

  8. 笨办法学python 习题14 优化过 遇到问题的请看

    print "\t what's you name?"user_name = raw_input('>') from sys import argvscript, = arg ...

  9. 笨办法学 Python (Learn Python The Hard Way)

    最近在看:笨办法学 Python (Learn Python The Hard Way) Contents: 译者前言 前言:笨办法更简单 习题 0: 准备工作 习题 1: 第一个程序 习题 2: 注 ...

  10. 笨办法学 Python (第三版)(转载)

    笨办法学 Python (第三版) 原文地址:http://blog.sina.com.cn/s/blog_72b8298001019xg8.html   摘自https://learn-python ...

随机推荐

  1. Hive安装报错

    安装好hive后在bin路径下输入hive报错: [ERROR] Terminal initialization failed; falling back to unsupported 原因是hado ...

  2. JavaScript的DOM_操作行内样式

    一.检测浏览器是否支持css CSS 作为(X)HTML 的辅助,可以增强页面的显示效果.但不是每个浏览器都能支持最新的 CSS 能力.CSS 的能力和 DOM 级别密切相关,所以我们有必要检测当前浏 ...

  3. Guava包学习--Multiset

    Multiset之前倒是没用过,后来看了下还挺有用,其实它就是支持重复元素的HashSet,相当于list+set的集合,综合了两种集合的优点. 它扩展了Collection: @GwtCompati ...

  4. 【[JSOI2009]火星藏宝图】

    这里是\(sb\)的\(O(nm)\)做法 上一篇题解里写的\(O(nm)\)做法并没有看懂,我真是好菜啊 这是一个用了斜率优化,但是复杂度仍然是\(O(nm)\)的做法 我们还是先写出简单的\(dp ...

  5. 35、springboot-运行状态监控使用Actuator

    Spring Boot Actuator 提供了运行状态监控的功能 Actuator 监控数据可以通过阻REST远程 shell 和JMX方式获得.我 首先来介绍通过 REST 方式查看 Actuat ...

  6. 26、springboot与消息

    概述: 1.大多应用中,可通过消息服务中间件来提升系统异步通信.扩展解耦能力消息服务中两个重要概念:           2.消息代理(message broker)和目的地(destination) ...

  7. 20165302 实验一 java开发环境的熟悉

    20165302实验一 java开发环境的熟悉 一,实验内容与步骤 1.命令行下java程序开发 ①待编译运行代码 package csj; import java.util.Scanner; pub ...

  8. rocket-console控制台安装

    1.下载 github地址:https://github.com/apache/rocketmq-externals 2.选择稳定版本: 3.下载到本地:       环境需求 maven  jdk ...

  9. Semtech 的 137-1050 MHz 超低功耗长距离收发器(SX1276 Long Range Transceiver)

    SX1276 收发器采用 LoRa? 长距离调制解调器,可实现超长距离扩频通信和高抗干扰能力,并将电流消耗降至最低.凭借 Semtech 专利的 LoRa 调制技术,SX1276 使用低成本晶体和物料 ...

  10. PAT——1053. 住房空置率

    在不打扰居民的前提下,统计住房空置率的一种方法是根据每户用电量的连续变化规律进行判断.判断方法如下: 在观察期内,若存在超过一半的日子用电量低于某给定的阈值e,则该住房为“可能空置”: 若观察期超过某 ...