练习题作者: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. POJ-3067 Japan---树状数组逆序对变形

    题目链接: https://vjudge.net/problem/POJ-3067 题目大意: 日本岛东海岸与西海岸分别有N和M个城市,现在修高速公路连接东西海岸的城市,求交点个数. 解题思路: 记每 ...

  2. Zabbix 2.4安装部署

    目  录 第1章 Zabbix Server安装... 1 1.1 Zabbix Server环境... 1 1.2 Zabbix Server软件... 1 1.3 Zabbix server配置. ...

  3. AngularJS 表达式中添加过滤器实例

    过滤器可以通过一个管道字符(|)和一个过滤器添加到表达式中 历练实例: <!DOCTYPE html><html><head><meta http-equiv ...

  4. Sass 语法格式及编译

    一.sass语法格式 这里说的 Sass 语法是 Sass 的最初语法格式,他是通过 tab 键控制缩进的一种语法规则,而且这种缩进要求非常严格.另外其不带有任何的分号和大括号.常常把这种格式称为 S ...

  5. Maven tomcat插件 远程发布【Learn】

    Tomcat配置修改: ①.conf/tomcat-users.xml <role rolename="manager-gui"/> <role rolename ...

  6. WebStrome react-native代码智能提示

    1.clone到本地 git clone https://github.com/virtoolswebplayer/ReactNative-LiveTemplate  2,添加ReactNative. ...

  7. 【杂题总汇】NOIP2013(洛谷P1967) 货车运输

    [洛谷P1967] 货车运输 重做NOIP提高组ing... +传送门-洛谷P1967+ ◇ 题目(copy from 洛谷) 题目描述 A国有n座城市,编号从1到n,城市之间有m条双向道路.每一条道 ...

  8. struts2之输入验证

    输入校验主要分为两种: 基于客户端的校验: 客户端校验主要作用是防止正常浏览者的误输入,仅能对输入进行初步过滤:对于一些用户恶意行为,客户端校验则无能为力. 基于服务端的校验: 服务器接收客户端提交的 ...

  9. C语言结构体指针成员强制类型转换

    #include <stdio.h> #include <stdlib.h> typedef struct ListElmt_ { void *data; struct Lis ...

  10. python学习之字符串转换

    配置环境:python 3.6   python编辑器:pycharm 代码如下: #!/usr/bin/env python #-*- coding: utf-8 -*- def strCase() ...