一、

编写一个程序,当用户输入文件名和行数的时候,将该文件的前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. 阶段3 1.Mybatis_03.自定义Mybatis框架_2.自定义Mybatis的分析-创建代理对象的分析

    如何创建代理对象,以及使用设计模式带来的优势 调用的组合关系 不关注的,执行JDBC那一套.第二个是解析XML,解析的技术有很多.

  2. drop() delete() remove()函数

    drop()函数 1 删除前务必指定columns或index,避免出错. import pandas as pd df = pd.DataFrame({'a':[1,2,3], 'b':[3,4,5 ...

  3. ES6标准入门 第三章:变量的解构赋值

    解构赋值:从数组和对象中提取值,对变量进行赋值. 本质上,这种写法属于“匹配模式”:只要等号两边的模式相同,左边的变量就会被赋予对应的值. 1.数组的结解构赋值 基本用法 let [foo, [[ba ...

  4. bzoj3929 Discrete Logging 大步小步算法

    #include<cstdio> #include<algorithm> #include<cmath> #include<map> using nam ...

  5. jmeter应用之批量插入数据

    上一篇讲到如何在jmeter中配置并连接使用mysql数据库,这一节主要是讲数据库连接的简单应用——批量插入数据 总体步骤如下: 1)新建线程组和添加JDBC Connection Configura ...

  6. 在git bash 中配置git用户名和邮箱及查看配置信息

    Administrator@LuoTong- MINGW32 ~ $ git config --global user.name "mrluotong" Administrator ...

  7. 用adb logcat抓取log

    实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志     状态信息的有:adb shell dmesg, ...

  8. 概率与期望dp相关

    概率与期望dp 概率 某个事件A发生的可能性的大小,称之为事件A的概率,记作P(A). 假设某事的所有可能结果有n种,每种结果都是等概率,事件A涵盖其中的m种,那么P(A)=m/n. 例如投掷一枚骰子 ...

  9. Widget代码讲解

    参考:https://zhuanlan.zhihu.com/p/28225011 QT版本为5.12.4 1.main.cpp #include "widget.h" #inclu ...

  10. Square HDU 1518 搜索

    Square HDU 1518 搜索 题意 原题链接 给你一定若干个木棒,让你使用它们组成一个四边形,要求这些木棒必须全部使用. 解题思路 木棒有多种组合方式,使用搜索来进行寻找,这里需要进行优化,不 ...