Python学习注脚
python版本:2.7.6
Python基础学习书摘。
变量命名规范:
python的变量名只能由字母和数字组成,且必须以字母开头。
python的变量名不能使用系统已有的关键字,包括:
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 | while |
表达式与打印结果:
python shell中输入任何已定义的表达式可以显示表达式的值,同时保留定义时的格式,但打印时会输出表达式经过解释后的结果。
数学运算:
使用双星号“**”表示求幂次,
除号的左右均为整数时,解释器自动将结果截断为整数,将除数和被除数中任何一个改为浮点型即可使结果成为浮点型。
python支持复数运算,可以使用两种方式表示python中的复数:
>>> a = 1+i #或
>>> a = complex(1 , 5)
字符串操作:
加号“+”用来连接字符串
星号“*”用来重复一段字符串若干次:
>>>print "Hi\n"*3
Hi
Hi
Hi
函数:
函数的名称以字母或下划线开头,同样不能与关键字重复。
多返回值得函数要保证每一种可能的执行结果都对应着特定的返回值。
类型转换:
int() #将符合数学格式的字符串或浮点数转换为整数,但是字符串必须符合整数的格式而不能以浮点形式出现,如“1.23”
float() #将整数和字符串转换成浮点数
str() #将其他格式转换成字符串
模块加载:
使用 import module来加载模块,则需要用module.func()来调用模块中的方法或属性。
使用from module import method,则直接使用method()调用目标方法。
lambda:
labmda arg1, arg2,..., argn:<expression>
能使用一行语句快速定义一个函数,
可以将结果赋给某个变量使其成为一个函数,也可以直接传参进行运算。
>>> (lambda x, y: x**y)(5,2)
25
>>> power = lambda x, y:x**y
>>>power (5,2)
25
raw_input():
raw_input可以用于获取输入信息,括号内的内容可以作为对用户输入前的提示:
>>>name = raw_input("Input your name:\n")
Input your name:
darren
>>>print name
darren
字符串片段:
str[m:n],
返回字符串的一部分,从下标为m开始到下标小于n为止。如果没有m,默认从第一个字符开始,如果没有n,则自动搜索到字符串的末尾。
>>>str[1:] #从下标为1开始到字符串结尾
>>>str[:5] #从字符串开头到下标为4的子串(前5个元素)
>>>str[:] #输出字符串全部
>>>str[4:2] #输出结果为空字符串
>>>str[2:2] #输出结果为空字符串
>>>str[-1] #输出字符串的最后一个元素
字符串模块:
python字符串处理模块
>>> import string
>>> string.find(str1,str2,start,end) #从str1中指定范围[start, end)(左闭右开)中寻找str2,如果找到返回起始下标,否则返回-1。其中start和end均为可选项。
>>> print string.lowercase #包含了所有的小写字母
abcdefghijklmnopqrstuvwxyz
>>> print string.uppercase #包含了所有的大写字母
ABCDEFGHIJKLMNOPQRSTUVWXYZ
>>> print string.digits #包含了0-9的数字
0123456789
针对上面的字符集,可以使用谓词in判断某个字符是否在某个字符集中
List:
列表中的元素可以是任意类型,甚至是列表的嵌套。
列表的元素可以是变量,修改变量的值,并不影响列表中的元素值。
>>> m= 10
>>> n= 100
>>> list=[m,n,'test']
>>> print list
[10, 100, 'test']
>>> m=99
>>> print list
[10, 100, 'test']
List操作:
list.append() #在列表list的末尾追加元素
list.insert(loc, value) #在列表的loc下标处插入元素value
list1.extend(list2) #将list2合并到list1,合并后的list2不变
list.index(element) #返回元素的索引值
list.remove(element) #只删除第一次出现的元素,后面的相同元素不会被删除
list.pop() #删除并显示列表末位的值
len(list) #返回列表长度
in
not in #二者均为布尔操作符,判断某一元素是否在某一列表中,返回0或1
list1+list2 #连接两个列表
list*n #将一个列表重复n遍
del list[m:n] #删除列表中的某些元素
字符串和列表的区别:
同值不同名的字符串只存一次,但是有两个名字,这两个名字指向统一的值;
同值不同名的列表,有两个名字,也指向不同的值,但是可以通过赋值语句list2=list1使得两个列表同步变化。
可以用id()进行验证。