Python是解释型语言,运行慢,代码量少
Python适合的领域:
- Web网站和各种网络服务
- 系统工具和脚本
- 作为“胶水”语言包装其他语言开发的模块
一、变量
- 变量名必须是大小写英文、数字和下划线(_)的组合,且不能用数字开头
- Python是动态语言,变量本身类型不固定,反之属于静态语言
二、字符串
r'...'
: r 表示这是一个 raw 字符串,里面的字符就不需要转义了
'''...'''
: 表示这是一个多行字符
u'...'
:表示该字符串使用Unicode编码
其中在python文件头加上 # -*- coding: utf-8 -*-
,告诉Python解释器,用UTF-8编码读取源代码。Python文件保存的时候需要用UTF-8来保存。
三、List
- 定义 :
L = ['?','?','?']
,[] 符号,List是按照顺序存储元素的。 - 读取 :
L[index]
,index从0开始。其中,L[-1]表示最后一个元素,-2表示倒数第二个······ - 添加 :
-
L.append('?')
,将元素加到List尾部 -
L.insert(index,'?')
,将元素插入到指定index的位置
-
- 删除 :
L.pop()
,不传参数表示删除最后一个元素,可传入一个index。 - 替换 :替换的话直接用
L[index] = '?'
就好了。
四、Tuple
- 定义:
T = ('?','?','?')
,() 符号。和List很相似,也是顺序存储,但是是不可变得,一经创建就不可以修改,不可以添加、删除、修改。这个不可变是指的 指向不可变,比如元素指向一个List,就永远指向这个List,但是List的元素还是可以改变的。读取的方式和List相同。
定义一个空的Tuple T=()
;定义只有一个元素的 Tuple 得在元素后加一个逗号 “,”,例如T=(1,)
。
五、if-elseif-else
例 :
if condition 1:
...
elif condition 2:
...
elif condition 3:
...
else:
...
**特别注意 **:这一系列条件判断会从上到下依次判断,如果某个判断为 True,执行完对应的代码块,后面的条件判断就直接忽略,不再执行了
六、循环
for
语法 :
L = ['?','?','?']
for item in L:
......
item这个变量是在 for 循环中定义的,意思是,依次取出list中的每一个元素,并把元素赋值给 item,然后执行for循环体(就是缩进的代码块)
while
语法:
while condition :
...
while循环每次先判断 condition,如果为True,则执行循环体的代码块,否则,退出循环。
break:退出整个循环;
continue:跳过当前代码块,进入下一次循环。
七、dict
key:value 集合。key不可以重复,元素无序存储。dict作为 key 的元素必须不可变,Python的基本类型如 字符串、整数、浮点数 都是不可变的,都可以作为 key。但是list是可变的,就不能作为 key
- 定义 :
d = {
key: value,
key: value,
key: value
}
- 读取 :
1.d[key]
,如果key不存在会报错。可以使用if key in d:
来判断
2.d.get(key)
,如果key不存在会返回 None - 更新 :
直接使用d[key]=value
赋值语句,如果key不存在就插入到该dict,key存在就替换掉原来的值。
八、Set
相当于dict的key集合,不可重复,元素无序存放,存入的元素也必须是不变对象。
- 定义:
s = set(['A', 'B', 'C'])
调用 set() 并传入一个 list,list的元素将作为set的元素。
- 添加 :
s.add(item)
- 删除 :
s.remove(item)
如果set不存在该item,删除会报错。
九、函数
python内置函数可以在这里查看:https://cloud.tencent.com/developer/section/1366576
- 函数定义 :
def function_name(args):
...
return ...
return None可以简写为return。
- 函数的默认参数 :
def function_name(a,b,c=1):
...
return ...
该函数既可以穿两个参数也可以传三个参数,其中默认参数必须定义在参数列表的最后一个。
- 可变参数函数定义 :
def fn(*args):
...
在参数上加一个 “*” 号。
十、切片
:
操作符,表示一个范围
List、Tuple切片
L[0:3]
表示List中前三个元素(左闭右开),如果:
左边是0可以省略。
L[::2]
表示从第1个元素开始到最后,每个两位取一次.
:
也支持倒数切片,使用-1,-2,-3......
字符串切片
>>> 'ABCDEFG'[:3]
'ABC'
>>> 'ABCDEFG'[-3:]
'EFG'
>>> 'ABCDEFG'[::2]
'ACEG'
十一、迭代
在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration)。迭代永远是取出元素本身,而非元素的索引。
enumerate() 函数
['Adam', 'Lisa', 'Bart', 'Paul'] -> [(0, 'Adam'), (1, 'Lisa'), (2, 'Bart'), (3, 'Paul')]
该函数可以把一个list转换成一个包含两个元素的tuple的list,第一个元素是list中的索引值。
zip() 函数
zip() 可以吧两个list合并成一个list
zip([10, 20, 30], ['A', 'B', 'C']) -> [(10, 'A'), (20, 'B'), (30, 'C')]