python读书笔记[简]

 第一章 程序        
  第一个程序 print "Hello,World!"       
  C:/>python hello.py       
 第二章 变量,表达式和语句        
  Python中,没有明显的变量声明,而且类型不是固定的。       
   C:/>python      
  如果你不能确定变量或数据的类型,就用解释器内置的函数type确认。       
   >>> type(17)      
  变量名可以是由数字和字符组成的任意长度的字符串,但必须以字母开头。python是区分大小写的。       
  python定义了28个关键字:       
   and continue else for import not raise
   assert def except from in or return
   break del exec global is pass try
   class elif finally if lambda print while
  如果你想在一行打印多个变量,可以用逗号将这些变量隔开,逗号禁止换行。       
  计算表达式和打印值是有很大区别的,要注意区分。(计算字符串会加单引号,print不会) 
  在脚本文件中,任何表达式都被认为是合法的语句,但是这个语句不做任何事。 
  一个星号代表的是乘法,两个星号代表的是乘幂。 
  Python还支持复数的运算。 
   >>> a = 1 + 5j
   >>> x =complex(1, 5)
  加法“+”能够连接两个字符串成为一个字符串。 
  >>> 3 * "Love" #将Love输出3遍 
  表达式的值是什么类型,变量就是什么类型。 
  注释必须以符号“#”开始。 
 第三章 函数  
  函数id以值或变量为参数,返回值是一整数,它表示值或变量的唯一标识符。 
  每个值或变量都有一个唯一id,id值与变量或值在内存中的位置相关。变量的id也就是它所指向值的id。 
  函数的定义形式: 
   def <name>(arg1, arg2,... argN):
   <statements>
  函数在调用前,必须先定义。     
  实参把它的值传递给行参,行参被函数内的语句进行各种操作,而实参没有被改变。     
  Python有一个主函数:_main_ 。其它的函数都是在这个函数内执行,或者说_main_ 调用你的程序及程序内的函数。     
  None是不属于任何类型的类型。     
  int函数能够将符合数学格式数字型字符串转换成整数。     
  函数float将整数和字符串转换成浮点数。     
  函数str将数字转换成字符。     
  Python有一个math模块,提供了大部分与数学计算相似的函数。     
   首先要用关键字import引入模块:    >>> import math
   然后用点操作符调用模块中的函数:    >>> print math.log10(10)
   如果你不想用点操作符:    >>> from math import *
       >>> cos(3)
   在数学模块math中,有两个数学常量:pi和e。    
   再看几个数学函数的例子:    >>> math.exp(9) #e的9次幂。
       >>> math.pow(3,4) #3的4次幂。
       >>> math.sqrt(3.44) #3.44开平方。
       >>> math.sin(math.pi/2) #正弦函数。
       >>> math.cos(math.pi * 3.4) #余弦函数。
       >>> math.fabs(-34.90) #求绝对值。
  Python允许你定义一种单行的小函数(定义lambda函数)。     
   labmda 参数:表达式    g = lambda x, y: x*y
   也能够直接使用lambda函数    (lambda x,y=0,z=0:x+y+z)(3,5,6)
 第四章 条件表达式      
  Python有三种逻辑操作:and、or、not。     
  在python中空字符串为假,非空字符串为真。非零的数为真。     
  and操作符的规则:     
   只要左边的表达式为真,整个表达式返回的值是右边表达式的值。否则,返回左边表达式的值。    
  or操作符的规则:     
   只要两边的表达式都为真,整个表达式的结果是左边表达式的值;如果是一真一假,返回真值表达式的值。    
   特别注意的是空值和0的情况,这时候返回的是右边的0或空值。    
  if条件语句:     
   if x < y:    
    print x, "小于", y
   elif x > y: 
    print x, "大于", y
   else: 
    print x, "等于", y
  while语句:  
   while(x): 
    result = result + x
    x = x - 1
  条件嵌套:  
   >>> if 0 < x < 10: 
    print "x大于0且小于10"
  return语句  
  键盘输入:  
   name = raw_input("Please input your name:") 
 第五章 字符串   
  操作符“[]”从字符串中取出任意个连续的字符:   
   >>> name = "qswtp"  
   >>> print name[0]  
   q  
  函数len返回字符串的长度:   
   >>> address = " www.qswtp.com"  
   >>> len(address)  
   13  
  可以用while语句遍历字符串中的每一个字符:   
   def travel(string):  
    index = 0 
    while index < len(string): 
     letter = string[index]
     print letter
     index = index + 1
  Python提供了另一种语句for来遍历字符串:   
   >>> for char in address:      
    print char     
  字符串片断:  操作符[n:m]返回字符串的一部分,从第n个字符开始,到第m个字符结束,包括第n个,但不包括第m个。     
   >>> os = "Linux Unix FreeBSD"      
   >>> print os[6:10]      
   Unix      
  字符串的值是不可改变的。       
  字符串模块string包含一些处理字符串的函数。     import string  
   >>> bookname = "new concept english"      
   >>> import string      
   >>> index = string.find(bookname, "s")      
   >>> print index      
   17      
   常量string.lowercase包含了所有小写的英文字母;      >>> print string.lowercase
   常量string.uppercase包含了所有大写的英文字母;      abcdefghijklmnopqrstuvwxyz
   常量string.digits包含了从0到9的数字。      
  个判断字符是否为小写:  
   import string 
   def isLower(char): 
    return string.find(string.lowercase, char) != -1
  in操作符判断一个字符是否存在于字符串中:  
   import string 
   def isLower(char): 
    return char in string.lowercase
  利用比较操作符:  
   import string 
   def isLower(char): 
    return 'a' <= char <= 'z'
 第六章 列表   
  列表的元素还可以是变量。但是修改变量的值,并不影响列表中元素的值。  
   >>> a = 1 
   >>> b = 2 
   >>> num = [a, b, 3] 
   >>> print num 
   [1, 2, 3] 
   >>> a = b =9 
   >>> print num 
   [1, 2, 3] 
  包含连续整数的列表是很常见的:  
   函数range返回一个整数列表,列表从函数的第一个参数开始,到最后一个参数结束,不包含最后一个参数,相邻两数之间的差值是1。 
    >>>range(1,5)
    [1, 2, 3, 4]
   单一参数的range函数,产生从0开始的列表: 
    >>>range(10)
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
   3个参数的range函数,产生一个在数学上成为等差数列的列表。 
    >>>range(1,10,2)
    [1,3,5,7,9]
  索引也可以是一个负数,那么列表的最后一个元素的索引是-1,倒数第二个的索引是-2,依此类推: 
   >>> numbers = [1, 2, 3, 4]
   >>> numbers = [-1]
   4
  append在列表的尾部追加元素,参数是插入元素的值: 
   >>> number = [0, 1, 2, 3]
   >>> number.append(4)
   >>> print number
   [0, 1, 2, 3, 4]
  方法insert在列表中插入元素,它有两个参数,一个是索引位置,一个是插入元素的值: 
   >>> number.insert(3, 5)
   >>> print number
   [0, 1, 2, 5, 3, 4]
  方法extend合并两个列表为一个: 
  方法index取得元素的索引值: 
   >>> cars = ["Ford", "Fiat", "Volvo"]
   >>> cars.index("Ford")
   0
  方法remove从列表中删除第一次出现的值: 
   >>> color = ["red", "green", "yellow", "green", "black"]
   >>> color.remove("green")
   >>> print color
   ['red', 'yellow', 'green', 'black']
  方法pop删除最后一个值,然后返回这个值: 
   >>> letter = ['a', 'b', 'c', 'd']
   >>> letter.pop()
   'd'
   >>> print letter
   ['a', 'b', 'c']
  in是一个布尔操作符,它测试左边的操作数是否包含于列表。 
   >>>os=["Linux","Unix","Mac","Windows"]
   >>>'windows' in os
   1 
   >>>'BeOS' in os 
   0 
  in也可以测试字符串中是否包含某个字符  
  我们可以用not和in 的组合来测试一个元素不包含于列表。  
   >>>os=["Linux","Unix","Mac","Windows"] 
   >>>'BeOS' not in os 
   1 
  用for循环遍历列表,更加简明,它没有循环变量。  
   os=["Linux","Unix","Mac","Windows"] 
   for os in os: 
    print os
  加号操作符"+"将两个列表连接成一个列表。  
  乘号操作符“*”表示把列表的所有元素重复一定的次数,然后形成一新的列表。  
  列表元素是可变的  
  Python提供了关键字del删除列表中的元素。  
   >>> a=['one', 'two', 'three']
   >>> del a[1]
   >>> a
   ['one','three']
  Python只创造了一个字符串,a和b都指向它。 
  即使列表变量的值相同,他们也是指向不同的列表值。 
   整数和浮点数与列表的情况很相似。
  如果我们将一个变量赋值给另一个变量,那末这两个变量指向同一个对象。 
   如果重新对其中的一个赋值,那么这两个列表的标识符就不在是相同的了,即已经分别属于不同的列表。
  克隆列表 克隆的方法是利用列表的片断操作符:
   >>> x = [1, 3, 5, 7]
   >>> y = x[:]
   >>> print y
   [1, 3, 5, 7]
  split函数的另外一个参数是规定作为分隔符的字符串。分隔符不显示在列表中。 
   >>> string.split(song, 'ai')
   ['The r', 'n in Sp', 'n...']
  函数jion的功能和split正好相反,它是将列表连接成字符串。 
   >>> list = ['The', 'rain', 'in', 'Spain...']
   >>> string.join(list)
   'The rain in Spain...'
 第七章 序列  
  字符串是由字符组成的,其值是固定的 
  列表是由任意类型的元素组成的,其值是可变的 
  序列和列表比较相近,它的元素的值是固定的。 
  random模块中的函数random能够产生一个值的范围在0.0到1.0之间的浮点数。 
 第八章 字典  
 第九章 文件  
  打开文件就是创造了文件对象。 
   >>> f = open("test.dat", "w")
   >>> print f
   <open file 'test.dat', mode 'w' at 0x0151F8A8>
  为了把一些内容写到文件中,需要调用文件对象的write方法: 
   >>> f.write("Now is the time")
   >>> f.write("to close the file")
   >>> f.close()
  文件的方法close关闭文件。 
  read可以接受数字参数,表示读出一定数量的字符。如果读到文件的末尾,就返回空字符。 
   >>> f = open("test.dat", "r")
   >>> print f.read(5)
   Now i
   >>> print f.read(100)
   s the timeto close the file
   >>> print f.read()
  break 
  readline方法每次从文本文件中读取一行的内容,包括换行符: 
  函数filterFile拷贝一个文件,同时将旧文件中不是以“#”开头的行写入新文件中: 
   def filterFile(old, new):
    sfile = open(old, "r")  
    dfile = open(new, "w")  
    while 1:  
     text = sfile.readline() 
     if text == "": 
      break
     elif text[0] == "#": 
      continue
     else: 
      dfile.write(text)
    sfile.close()  
    dfile.close()  
  write的参数只能是字符串    
   >>> f = open("test.dat", "w")   
   >>> f.write(str(1234.56) + '/n')   
   >>> f.write(str(1000))   
   >>> f.close() 
  输入pickle模块,用它提供的方法把各种类型的数据存入文件,数据结构的信息也同样被保存了。  
   >>> import pickle 
   >>> f = open("test.dat", "w") 
   >>> pickle.dump(100, f) 
   >>> pickle.dump(123.98, f) 
   >>> pickle.dump((1, 3, "abc"), f) 
   >>> pickle.dump([4, 5, 7], f) 
   >>> f.close() 
   我们用dump方法分别向文件中写入了整数、浮点数、列表和数组 
 第十章 异常   
  用try和except 语句对异常进行处理。  
   filename = '' 
   while 1: 
    filename = raw_input("Input a file name: ")
    if filename == 'q':
     break
    try: 
     f = open(filename, "r")
     print 'Opened a file.'
    except: 
     print 'There is no file named', filename
  用raise定义异常   
   def inputAge():  
    age = input("Input your age:") 
    if (age>100 or age<18): 
     raise 'BadNumberError', 'out of range'
    return age 
 第十一章 类和对象    
  类的定义方式如下:   
   class Point:  
    pass 
 第十二章 类与方法 
  构造函数。它的名字是:__init__
 第十三章 操作符重定义 
 第十四章 继承 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值