Python学习基础知识

1、Python中的布尔运算
(1)、Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True
(2)、 Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
2、Python中的List
添加
(1)、list 的 append() 方法,把新同学追加到 list 的末尾
(2)、 用list的  insert() 方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素
删除
(1)、用list的pop()方法删除最后一个元素,pop(1)删除第二个元素
替换
(1)、 通过list中对元素的赋值来实现
3、tuple
(1)、tuple和list类似,但是创建完成后就不能改变,只能取值
定义: t = ('Adam', 'Lisa', 'Bart')
取值:t[0]
(2)、创建单元素tuple(在元素后面加一个,):
t = ('123',)
(3)、如果在tuple中创建了一个list元素,list中的元素是可以改变的
t = (1,2,3,['A','B'])
4、Python中的if
(1)、>>> age = 20>>> if age >= 18:... print 'your age is', age... print 'adult'...your age is 20adult
(2)、if-else
score = 55
if score >= 60:
print 'passed'
else:
print 'failed'
(3)、if-elseif-else
score = 85

if score >= 90:
print 'excellent'
elif score >= 80:
print 'good'
elif score >= 60:
print 'passed'
else:
print 'failed'
5、Python中的for
(1)、L = [75, 92, 59, 68]
sum = 0.0
for i in L:
sum += i
print sum / 4
(2)、1~100
for i in range(1,100):
...
...
6、Python中的while
sum = 0
x = 1
while x<100:
sum += x
x+=2
print sum
7、Python中的dict(键值对)
d = {
'Adam': 95,
'Lisa': 85,
'Bart': 59
}
dict的长度:len(d)
取值:d.get('Lisa')
或者
if 'Lisa' in d:
print d['Lisa']
8、Python中的set
set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像
s = set(['Adam','Lisa','Bart','Paul','Adam'])
print s
输出:set(['Lisa', 'Paul', 'Adam', 'Bart'])
(1)、添加
s = set([1, 2, 3]) s.add(4) print sset([1, 2, 3, 4])
(2)、删除
s = set([1, 2, 3, 4]) s.remove(4) print sset([1, 2, 3])
9、list切片(tuple也一样操作)
(1)、取list中的前三个元素(索引从0~3,包括0不包括3):
L = ['1','2','3']
L[0:3]
(2)、L[:] 表示从头到尾全部元素
(3)、L[::3] 第三个参数表示每3个元素取1个(隔2个取1个)
L[2:50:3] 表示不大于50里面,去3的倍数(2:索引其实位置,50:不大于50,3:每三个取一个)
倒叙切片:
>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']>>> L[-2:] #从-2索引开始到最后['Bart', 'Paul']>>> L[:-2] #从第一个元素到-2索引的元素(不包含结束索引-2)['Adam', 'Lisa']>>> L[-3:-1] #包含起始索引,不包含结束索引['Lisa', 'Bart']>>> L[-4:-1:2]['Adam', 'Bart']
例:取1~100里面最后10个5的倍数的数字
L[-46::5]
字符串切片:
>>> 'ABCDEFG'[:3]'ABC'>>> 'ABCDEFG'[-3:]'EFG'>>> 'ABCDEFG'[::2]'ACEG'
10、list和tuple迭代:
L = ['Adam', 'Lisa', 'Bart', 'Paul']
for index, name in enumerate(L):
print index+1, '-', name
使用 enumerate() 函数,我们可以在for循环中同时绑定索引index和元素name。但是,这不是 enumerate() 的特殊语法。实际上,enumerate() 函数把:
['Adam', 'Lisa', 'Bart', 'Paul']
变成了类似:
[(0, 'Adam'), (1, 'Lisa'), (2, 'Bart'), (3, 'Paul')]
dict迭代:
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }print d.values()# [85, 95, 59] for v in d.values() : print v
1.  values()  方法实际上把一个 dict 转换成了包含 value 的list。
2. 但是  itervalues()  方法不会转换,它会在迭代过程中依次从 dict 中取出 value,所以 itervalues() 方法比 values() 方法节省了生成 list 所需的内存。
3. 打印 itervalues() 发现它返回一个 <dictionary-valueiterator> 对象,这说明在Python中, for 循环可作用的迭代对象远不止 list,tuple,str,unicode,dict等 ,任何可迭代对象都可以作用于for循环,而内部如何迭代我们通常并不用关心。
11、生成list
(1)range(1,11)可以生成 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 的list
(2)
>>> L = []>>> for x in range(1, 11):... L.append(x * x)... >>> L[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
也可以这样:
[x * x for x in range(1, 11)]
(3)join()方法可以将list拼接成一个字符串
(4)条件过滤
[x * x for x in range(1, 11) if x % 2 == 0],可以生成x为偶数的平方
(5)多层嵌套
>>> [m + n for m in 'ABC' for n in '123']['A1', 'A2', 'A3', 'B1', 'B2', 'B3', 'C1', 'C2', 'C3']

猜你喜欢

转载自blog.csdn.net/Iloveyougirls/article/details/80570199