python 语法总结

python 入门

Posted by Mio4kon on 2015-04-16

基本语法

等待用户输入,保存至name
name=raw_input('what your name:')
注:得到的内容永远是字符串的形式.如果想要整数
age=int(raw_input('age:'))

注释:
#这是注释

条件语句:

1
2
3
4
5
6
7
a = 100
if a >= 0:
print a
else:
print -a
#elif可以代表else if

循环:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#for each循环
>>> arrs = [1,2,3,4,5]
>>> for arr in arrs:
... print arr
...
1
2
3
4
5
#while循环
sum = 0
n = 99
while n > 0:
sum = sum + n
n = n - 2
print sum

不转义:

print r'\\\\' 结果为:\\\\

空值(null):

none

ASCII编码转换:

1
2
3
4
ord('A')
65
chr(65)
'A'

Unicode编码:

1
2
3
4
>>> print u'中文'
中文
>>> u'中'
u'\u4e2d

Unicode编码与UTF-8互转:

1
2
3
4
5
6
7
8
9
>>> u'ABC'.encode('utf-8')
'ABC'
>>> u'中文'.encode('utf-8')
'\xe4\xb8\xad\xe6\x96\x87'
>>> '\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')
u'\u4e2d\u6587'
>>> print '\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')
中文

文本头:

1
2
3
4
#!/usr/bin/env python
(告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释)
# -*- coding: utf-8 -*-
(告诉Python解释器,按照UTF-8编码读取源代码)

占位符(和c一样):

1
2
>>> 'hi,my name is %s , i have %d money.' %('mio4kon',1000)
'hi,my name is mio4kon , i have 1000 money.'

List:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
>>> arrs= ['a','b','c']
>>> arrs
['a', 'b', 'c']
>>> len(arrs)
3
>>> arrs[0]
'a'
#反向索引(倒数第一个元素)
>>> arrs[-1]
'c'
#添加元素
>>> arrs.append('d')
>>> arrs[-1]
'd'
#插入元素
>>> arrs.insert(1,'h')
>>> arrs
['a', 'h', 'b', 'c', 'd']
#删除元素
>>> arrs.pop(1)
'h'
>>> arrs
['a', 'b', 'c', 'd']
#修改元素
>>> arrs[0] = 1
>>> arrs
[1, 'b', 'c', 'd']
#(注意,list元素类型可以不一样!)
#range()函数可以生成一个整数序列
#range(5)生成的序列是从0开始小于5的整数

不可变的list(tuple,元祖)

1
2
3
>>> arrs = ('a','b','c')
>>> arrs
('a', 'b', 'c')

Map字典(dict)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
>>> d['Michael']
95
#把数据放入dict的方法,除了初始化时指定外,还可以通过key放入:
>>> d['Adam'] = 67
>>> d['Adam']
67
#如果key不存在,dict就会报错:
#要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:
>>> 'Thomas' in d
False
#二是通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
>>> d.get('Thomas')
>>> d.get('Thomas', -1)
-1

set

set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>>> s = set([1, 2, 3])
>>> s
set([1, 2, 3])
#重复元素在set中自动被过滤:
>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
set([1, 2, 3])
>>> s.add(4)
>>> s
#通过add(key)方法可以添加元素到set中
set([1, 2, 3, 4])
#两个set可以做数学意义上的交集、并集等操作
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
set([2, 3])