LPTHW 笨方法学习python 16章

根据16章的内容作了一些扩展。

比如,判断文件如果存在,就在文件后追加,如不存在则创建。

同时借鉴了shell命令中类似 cat <<EOF > test的方法,提示用户输入一个结尾符。

现在有一个小坑,怎么使用python去读取一个文件的行数,原来有os.system("wc -l filename")倒是可以,但是windows下如何操作呢?回头补填。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from sys import argv
from os import path
script, filename = argv
if path.exists(filename):
    print "We‘re going to erase %r." % filename
    t_module = "a"
else:
    print "We will create %r." % filename
    t_module = "w"
end_EOF = raw_input("please give me a EOF string")
with open(filename,t_module) as fo:
    line_count = 1
    while True:
        line_content = raw_input("please input %d line string:\n" % line_count)
        if line_content == end_EOF:
            break
        else:
            fo.write(line_content)
            fo.write("\n")

  

时间: 2024-12-11 10:23:34

LPTHW 笨方法学习python 16章的相关文章

LPTHW 笨办法学python 40章 类

今天读了LPTHW的第40章以后豁然开朗,原来一直愚钝,不太理解类的定义和使用,还有就是不太理解关于self的定义. class MyStuff(object): def __init__(self): self.tangerine = "And now a thousand years between" def apple(self): print "I AM CLASSY APPLES!" 说类和迷你模块差不多,那么对于类来说,也必然有一个类似 import 的

笨方法学习Python(1-10)

以下学习内容以python2为基准 UTF-8 #conding:utf-8    or    #__coding:utf-8__ 此句要置顶,表示代码支持UTF8的格式,最好每个代码文件都加上 注释 # A comment, this is so you can read your program later. 代码前加"#"表示的是注释,以后写每行代码的上一行记得都加上解释信息 python2与python3 print"abc"    #python2的写法

笨方法学习Python(11-20)

以下学习内容以python2为基准 11.提问 print "How old are you?",  age = raw_input() print "So, you're %r old." % age python ex11.py How old are you? 35 So, you're '35' old input()与raw_input()都是Python的内建函数,实现与用户的交互,但是功能不同. raw_input可代表任意字符串 input在字符串上

LPTHW 笨办法学python 37章 python关键字/关键词介绍

本章简要的介绍了各种关键词: and:[布尔运算]且 del: 删除变量(函数,类) from: 从某一个库或者文件读取 not:[布尔运算]非 while: while-loop 关键字,后跟循环条件 as: 通常和import类叠加使用,代表以某个其他名称加载某个模块. elif: if分支控制的一部分. global: 声明一个变量为全局变量. or:[布尔运算]或 with:执行一个动作,通常和as一起使用,使用with后,完成动作后,必定关闭或者退出. assert: 声明一个错误.使

LPTHW 笨方法学python 19章

本章节,我只是把所有的输出加上了自己的注释. #!/usr/bin/env python # -*- coding:utf-8 -*- def cheese_and_crakers(cheese_count, boxes_of_crackers): '''定义了cheese_and_crakers的函数 读出两个变量,并输出他们. ''' print "You have %d cheeses!" % cheese_count print "You have %d boxes

LPTHW 笨办法学python 33章

32-33章节 将for-loop和while-loop循环的. 俩种句法就不说了.简单说下个人对于for和while的理解. 我觉得他learn python the hard way这里的写法是, 先说相同点: 1.都可以一次操作都不做,for-loop如果集合为空,while后面的条件为false 他也可以一次循环操作都不做,测试方法如下: >>> for i in []: print "1",i, >>> >>> i = 3

LPTHW 笨办法学python 20章

本章节讲述了,函数和文件的综合操作. 分别 执行了.1.读出文件所有内容,2.把文件重置至文件开头.3.打印一行. 我在本节作了一个小小的改良,设置了一个全局变量,记录当前应该输入哪一行,如果执行过一次,我就把这个行数加一. 代码部分如下: #!/usr/bin/env python # -*- coding:utf-8 -*- from sys import argv script, input_file = argv def print_all(f): print f.read() def

LPTHW 笨方法学python 18章

看完18章以后,发现第一个练习中,使用了*args读取全部的的输入参数作为一个元组,但是在他的练习中只给了两个变量去赋值,当用户不清楚这个函数的定义时,就可能会给出过多的变量进这个函数,那么就会出现如下错误: ValueError: too many values to unpack 也就是所谓的解包错误,给出的值太多了. 那么为了杜绝这种情况,我取巧解决了下.就是我把元组改变成一个列表,然后补了2位进去. 如果他给的变量少了也没关系,我能补齐.可能太搓了,以后有好的思路再来补齐. def pr

笨方法学习Python31-40

31.作出决定 复习了raw_input("> ") if 变量 == "Vaule": 执行语句 32.循环和列表 count = [1, 2, 3, 4, 5] for i in count: print "This is %d" % i            #循环打印出count的值 count.append(6)     #从最后增加值 count.insert(1,44)    #从第二位增加值44 range(20)