一、

编写一个程序,当用户输入文件名和行数的时候,将该文件的前N行内容打印到屏幕上

input 去接收一个文件名

input 去接收一个行数

----------------------------------------------

file_name = input(r"请输入你要打开的文件名: ") #是一个str
line_name = input(r"请输入你要显示的前几行: ")
def file_view(file_name, line_name):
    print("\n文件的%s的前%s行的内容如下" %(file_name, line_name))
   
    #去打开file_name的文件
    f = open(file_name)
    for i in range(int(line_num)):
        print(f.readline())
       
    f.close()
 
二、
---------------------------------------
我们在上一道题的基础上,增加一点功能,使用户可以随意的输入需要显示的行数
file_name = input(r"请输入你要打开的文件名:")
line_num = input(r"请输入你要显示的行数,格式为[1:9]或者[:]")
def print_line(file_name, line_num):
    f = open(file_name)
   
    begin, end = line_num.split(":")
   
    if begin == "":
        begin = "1"
   
    if end == "":
        end = "-1"
       
    begin = int(begin) - 1
    end = int(end)
   
    lines = end - begin
   
    # 消耗掉begin之前的行数
    for i in range(begin):
        f.readline()
       
    if lines < 0:
        print (f.read())         
    else:
        for j in range(lines):
            print(f.readline())
   
    f.close()
   
print_line(file_name, line_num)
--------------------------------------------------
三、编写一个程序,实现“全部替换”的功能
-----------------------------------------
-  打开一个文件
-  把文件中xxx这样的字符串,替换成  sss
-  open 打开文件
-  readline 读取文件内容
-  replace 替换
--------------------------------------------
file_name = input("请输入你要打开的文件名: ")
rep_word = input("请输入你要替换的字符: ")
new_word = input("请输入替换的字符串: ")
def file_replace(file_name, rep_word, new_word):
   
    f = open(file_name)
    content = []
    for eachline in f:
        if rep_word in eachline:
            eachline = eachline.replace(rep_word, new_word)
           
        content.append(eachline)
       
    decide = input("你确定要这样子做吗?请输入 YES/NO")      
   
   
    if decide in ["YES", "Yes", "yes"]:
        f_write = open(file_name, "w")
        f_write.write("".join(content))
        f_write.close()
       
file_replace(file_name, rep_word, new_word)
--------------------------------------------------------------
四、

Python---进阶---文件操作---按需求打印文件的内容的更多相关文章

  1. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  2. matlab文件操作及读txt文件(fopen,fseek,fread,fclose)

    文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件.MATLAB提供了一系列低层输入输出函数,专门用于文件操作. 1.文件的打开与关闭 1)打开文件 在读写文件之前,必须先用f ...

  3. MATLAB文件操作及读txt文件

    转自:http://blog.csdn.net/vblittleboy/article/details/8049748 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件.MA ...

  4. 重新想象 Windows 8 Store Apps (24) - 文件系统: Application Data 中的文件操作, Package 中的文件操作, 可移动存储中的文件操作

    原文:重新想象 Windows 8 Store Apps (24) - 文件系统: Application Data 中的文件操作, Package 中的文件操作, 可移动存储中的文件操作 [源码下载 ...

  5. python对文件操作 r w a 文件复制/修改

    文件操作简介: 使用python来读写文件是非常简单的操作.我们使用 open() 函数来打开一个文件,获取到文件句柄.然后 通过文件句柄就可以进行各种各样的操作了.根据打开⽅方式的不同能够执行的操作 ...

  6. Python进阶【第七篇】文件处理

    一.文件操作 在Python中,文件读写是最常见的操作.对文件的操作为: #1. 打开文件,得到文件句柄并赋值给一个变量 f=open('a.txt','r',encoding='utf-8') #默 ...

  7. Python小白学习之路(十九)—【文件操作步骤】【文件操作模式】

    一.文件操作步骤 step1:打开文件,得到文件句柄并赋值给一个变量step2:通过句柄对文件进行操作step3:关闭文件 举例: a = open('hello world', 'r', encod ...

  8. 吴裕雄--天生自然python学习笔记:python文档操作批量替换 Word 文件中的文字

    我们经常会遇到在不同的 Word 文件中的需要做相同的文字替换,若是一个一个 文件操作,会花费大量时间 . 本节案例可以找出指定目录中的所有 Word 文件(包含 子目录),并对每一个文件进行指定的文 ...

  9. 第九天- 文件操作 r w a 文件复制/修改

    文件操作简介:使用python来读写文件是非常简单的操作.我们使用 open() 函数来打开一个文件,获取到文件句柄.然后通过文件句柄就可以进行各种各样的操作了.根据打开⽅方式的不同能够执行的操作也会 ...

随机推荐

  1. 用ajax提交请求,预期Json返回 406错误的解决办法!

    正常情况下在Controller端已经配置好了 @ResponseBody    @RequestMapping  返回Json格式数据 发生406错误 ,应该检查提交的请求路径是否含有 .html ...

  2. Jmeter之线程组(Stepping和Ultimate)

    jmeter自带的线程组比较简单,如果需要逐渐增加并发数的功能并不能实现,所以就需要使用Jmeter插件--Stepping Thread Group. 一.安装Stepping/UItimate T ...

  3. 乱入Spring+Mybatis

    新进入一个项目,写了一个功能,就是提供一个服务(service),该服务能够查询和插入.完成后,想要用junit测试一下:发现到了DAO底层注入的SqlSession字段为空:才意识到这是一个Spri ...

  4. Linux mysql ERROR 1045 解决

    Linux mysql 5.6: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) ...

  5. 虚拟化 RemoteApp 远程接入 源码 免费

    远程接入 RemoteApp 虚拟化 源码 免费 1.终端安装与配置: 此远程接入组件的运行原理与瑞友天翼.异速连.CTBS等市面上常见的远程接入产品一样,是透过Windows的终端服务来实现的,速度 ...

  6. TCP网络编程(Socket通讯)

    TCP 网路编程: 1.TCP 三次握手: 第一次握手,客户端向服务器端发出连接请求,等待服务器确认. 第二次握手,服务器端向客户端回送一个响应,通知客户端收到了连接请求. 第三次握手,客户端再次向服 ...

  7. 国家授时中心的NTP服务器地址 210.72.145.44

    国家授时中心的NTP服务器地址 210.72.145.44

  8. vue项目中,无需打包而动态更改背景图以及标题

    1.背景 今天,项目经理对已完成的项目提出了一个需求,即项目的基础功能目前针对于各个基层法院都适用,而对于不同的法院,我们每次都需要前端研发来更改所属法院的法院名称以及背景图,这样对于演示者来说是非常 ...

  9. spring -boot定时任务 quartz 基于 JobDetailFactoryBean实现

    这个有点小问题 尚未解决  后期优化 基于 JobDetailFactoryBean实现 依赖包 <dependencies> <dependency> <groupId ...

  10. [转帖]功耗降50%,性能升35%!三星3nm GAA 2021年量产

    功耗降50%,性能升35%!三星3nm GAA 2021年量产 http://www.chinaflashmarket.com/Instructor 在三星晶圆代工技术论坛(Samsung Found ...