python 实验5 字符串练习(一)

这篇博客介绍了Python进行字符串操作的实验,包括读取文件`test.txt`的内容,计算原始长度,去除换行符,将'2012'替换为'2015',并分别保存到新文件。文章还提到了Python中文件的读写模式以及正则表达式用于查找和替换数字。
摘要由CSDN通过智能技术生成

一、要求

1.实验内容

已知一个文件 test.txt,内容如下:
------------------
2012 来了。
2012 不是世界末日。
2012 欢乐多。
------------------
1.请输出其内容。
2.请计算该文本的原始长度。
3.请去除该文本的换行。
4.请替换其中的字符"2012"为"2015"。
5.请提取内容为数字的子串(2012,2013)。


2.实验要求
1.命令行:python 2012.py filename
a) 2012.py 为编写的 Python 代码文件
b) Filename 为文件路径
2.按序号完成上述 5 个任务
3.任务 3,去掉换行符后再保存到新的文件
4.任务 4,替换后再保存到新的文件
5.任务 1、2、5,提取后直接输出到 stdout


二、新知识

1.python中文件的读写ab,rb等

2.写入时如何加入\n,因为版本不同,所以要加\r\n

3.如何查找整个字符串并替换数字。



三、代码如下

# -*- coding: utf-8 -*-
# -*- coding:gb2312 -*-
import sys
import re


if __name__=="__main__":
    fo=open("test.txt","r+")
    i=0
    mystring=fo.read(100)
    n=len(mystring)
    print mystring
    print "该文本的原始长度为:",n


    #删去换行符test1,替换test2
    position=fo.seek(0,0)
    while i<3:
        str=fo.readline(50)
        fo1=open("test1.txt","ab")
        fo1.write(str)
        fo2=open("test2.txt","ab")
        revised=str.replace('2012','2015')
        fo2.write(revised+'\r\n')#估计是版本的原因,所以必须要加\r\n
        i=i+1
    fo1.close()
    fo2.close()


    print "去掉换行符的新文件为: test1.txt"
    print "替换后的新文件为: test2.txt\n数字字串为:",
    print re.findall(r'(\w*[0-9]+)\w*',mystring)#提取字符串
    fo.close()
    

1、 一个三维向量类,并定义相应的特殊方法实现两个该类对象之间的加、减运算(要求支持运算符+、-),实现该类对象与标量的乘、除运算(要求支持运算符*、/),以及向量长度的计算(要求使用属性实现)。 2、 编程实现如下功能: (1)定义一个抽象类Shape,在抽象类 Shape中定义求面积 getArea()和周长 getPerimeter()的抽象方法。 (2)分别定义继承抽象类Shape的3个子类即Triangle、Rectangle、和Circle,在这3个子类中重写 Shape中的方法getArea()和 getPerimeter( )。 (3)创建类Triangle、 Rectangle、 Circle的对象,对3个类中的方法进行调用测试。 3、使用第六章(王雷春版)介绍的知识设计一个“书籍出租管理系统”,该系统包括以下功能。 (1) 菜单项“1”:显示书籍(包括书籍名称、价格和借出状态)。 (2) 菜单项“2”:增加书籍(包括书籍名称和价格)。 (3) 菜单项“3”:借出书籍(包括借出书籍名称和借出天数)。 (4) 菜单项“4”:归还书籍(包括归还书籍名称和应付的租书费)。 (5) 菜单项“5”:统计书籍(包括借出书籍册数、未借出书籍册数和总册数)。 (6) 菜单项“-1”:退出系统。 体会利用面向对象编程的思想。 4、设计一个“超市进销存管理系统”,要求如下: (1)系统包括7种操作,分别是:1查询所有商品;2添加商品;3修改商品;4.删除商品;5卖出端口;6.汇总;-1.退出系统。 (2)选择操作序号“1”,显示所有商品 (3)选择操作序号“2”,添加新的商品(包括商品名称、数量和进货价格)。 (4)选择操作序号“3”,修改商品 (5)选择操作序号“4”,删除商品 (6)选择操作序号“5”,卖出商品(包括商品名称、数量和售出价格)。 (7)选择操作序号“6”,汇总当天卖出商品,包括每种销售商品名称、数量、进货总价、销售总价等。 (8)选择操作序号“-1”,退出系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值