练习题作者:Vamei 出处:http://www.cnblogs.com/vamei
 

【实现】
 
#!/usr/bin/python
# -*-coding:utf-8-*-
 
#-------计算日期差
'''
import datetime
from datetime import date
d1=date(2008,1,1)
d2=date(2008,10,1)
t=abs(d2-d1)
n=t.days+1
print n
 
#----判断2008是否为闰年
def leapyear(year):  #判断year是否为闰年,ture为闰年,false为非闰年
    years=year*1
    if(years%100): ##不能整除100进入条件语句
        return not(years%4) #能整除4返回ture,不能整除4,返回false
    else:        ##能整除100
        return not(years%400)  #能整除4返回ture,不能整除4,返回false
 
 
#a=leapyear(2000)
#print(leapyear(2000),leapyear(2008),leapyear(1900),leapyear(1833))
'''
##----文件处理
# 主要用的list的index和读取字符串split/strip及index读取;另外可以使用zip将名字、年龄、分数组成元祖列表然后使用for(a,b)in s.numerate 读取满足条件类型的index再读取需要输出类型
#因为需要更正错误的地方所有需要打开两次该文件,一份用来读取,一份用来重写,故需要注意不需要更正的行+跳过的地方写入原内容
import os,sys
#import linecache
reload(sys)
sys.setdefaultencoding('utf-8')
 
filepath='E:\记录.txt'.decode('utf-8').encode('GB2312')  ##打开windows中文路径解析
 
with open(filepath, 'r+') as f1:
    f1.seek(0)
    l = f1.readlines()
 
with open(filepath, 'w+') as f:
    sum=0
    n=0
    a=0
    f.seek(0)  ##读取文件时光标位置重新回到头部,否则容易读到空
    print 'the all contents is:\n',f.read()
    f.seek(0)
    for line in l:
        if (line.isspace()):  ##处理文件为空行的数据
            line=line
            f.write(line)
            continue
        if (line[0]=='#'):  ##忽略带#开头的行   或者使用 if(not line.startswith('#'))
            line=line
            f.write(line)
            continue
        a=a+1
        l1=line.split(',')
        l1[2] = l1[2].strip('\n')#去除尾部的\n
 
        if (l1[2]*1<60):
            print 'whose score is lower than 60:',l1[0]
 
 
        if(l1[0][0]=='L'):
            print 'whose name begins with L:', l1[0]
 
        sum = sum + int(l1[2])
 
        if(not l1[0].istitle()):
            n=n+1
            line=line.capitalize()
        f.write(line)
 
print'the totalscore is', sum
print'the name in the file is all title:',(n==0)
 

python练习题及实现--文件处理、date日期的更多相关文章

  1. Python练习题 004:判断某日期是该年的第几天

    [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...

  2. python自动更新pom文件

    前言 项目越来越多,版本管理越来越麻烦,在项目上我使用 maven version 来进行版本管理.主要还是在分布式项目中模块众多的场景中使用,毕竟各个模块对外的版本需要保持统一. 关于这个插件如何使 ...

  3. 为什么你SQL Server的数据库文件的Date modified没有变化呢?

    在SQL Server数据库中,数据文件与事务日志文件的修改日期(Date Modified)是会变化的,但是有时候你会发现你的数据文件或日志文件的修改日期(Date Modified)几个月甚至是半 ...

  4. python批量处理excel文件数据

    https://www.zhihu.com/question/39299070?sort=created 作者:水中柳影链接:https://www.zhihu.com/question/392990 ...

  5. 关于MySQL中使用LOAD DATA INFILE导入csv文件时的日期格式问题

    在使用MySQL时,常常会用到Load Data Infile来导入数据,在遇到Date类型的列时,有时会遇到格式转换的问题: 首先创建一张简单的people表,包含名字,生日,年龄三个字段: mys ...

  6. Python第五天 文件访问 for循环访问文件 while循环访问文件 字符串的startswith函数和split函数 linecache模块

    Python第五天   文件访问    for循环访问文件    while循环访问文件   字符串的startswith函数和split函数  linecache模块 目录 Pycharm使用技巧( ...

  7. python第六篇文件处理类型

    阅读目录 一 文件操作 二 打开文件的模式 三 操作文件的方法 四 文件内光标移动 五 文件的修改   文件处理                                             ...

  8. Python学习:7.文件操作

    文件操作 我们曾将听过一个问题,将大象放入冰箱分为三步:1.打开冰箱门,2.将大象放进去,3.关上冰箱门.今天我们要讲的Python文件操作的步骤就像将大象放入冰箱的步骤一样. 使用Python操作文 ...

  9. python读取Excel表格文件

    python读取Excel表格文件,例如获取这个文件的数据 python读取Excel表格文件,需要如下步骤: 1.安装Excel读取数据的库-----xlrd 直接pip install xlrd安 ...

随机推荐

  1. 常用mysql系统参数参考

    http://aaronsa.blog.51cto.com/5157083/1741481

  2. 一个TCP的问题,所谓TCP面向连接的虚电路到底是怎么实现的?

    http://www.cskaoyan.com/thread-23715-1-1.html 今天我又查阅了一些资料,发觉一个问题,TCP所谓的面向连接的特性以及建立虚电路,与网络层虚电路服务好像有着本 ...

  3. ssh key一键自动化生成公钥私钥,并自动分发上百服务器免密码交互

    题记:由于工作需要管理大量服务器,所以需要配公钥实现免密登录. ssh批量分发可以一键执行这个操作,但是使用ssh分发服务还需要对各个服务器进行.ssh/id_dsa.pub公钥上传,密码验证.所以需 ...

  4. Gtk-Message: Failed to load module “canberra-gtk-module”

    编写wxPython程序时,总是报以下错误: Gtk-Message: Failed to load module “canberra-gtk-module” 解决办法:apt-get install ...

  5. ajax(form)图片上传(spring)

    第一步:spring-web.xml <!--配置上传下载--> <bean id="multipartResolver" class="org.spr ...

  6. Server_Tomcat

    1 Tomcat概述 Tomcat服务器由Apache提供,开源免费.由于Sun和其他公司参与到了Tomcat的开发中,所以最新的JSP/Servlet规范总是能在Tomcat中体现出来.当前最新版本 ...

  7. Java学习过程中的收获

    1. String <--> Date 这种转换要用到java.text.SimpleDateFormat类 字符串转换成日期类型: 方法1: 也是最简单的方法 Date date=new ...

  8. MySQL事务隔离级别 解决并发问题

    MySQL事务隔离级别 1. 脏读: 骗钱的手段, 两个窗口或线程分别调用数据库转账表,转账后未提交,对方查看到账后,rollback,实际钱没转. 演示方法: mysql默认的事务隔离级别为repe ...

  9. linux下后台运行jar包

    #当前窗口退出 项目关闭$ java -jar test.jar #当前窗口关闭 项目关闭$ nohup java -jar test.jar &#当前窗口关闭 项目不关闭$ nohup ja ...

  10. 注释java中某个方法过时

    添加一个注解即可 @Deprecated