字符编码问题
ASCII 编码:只能编码英文,一个字节表示一个字符。
Unicode 编码:支持所有语言,一般是两个字节表示一个字符,容易造成浪费。
UTF-8 b编码:是一种“可变长度”编码,会根据字符类型,把一个Unicode字符编码成1~6个字节,英文通常是一个字节,汉字通常是四个字节,越生僻的字符编码长度越长。
使用情况:在计算机内存中统一使用Unicode编码,当需要储存和传输时转换成UTF-8编码。
给python编程带来的问题:
由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
//第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
//第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,在源代码中插入的中文可能会有乱码并提示错误。
//最好确保编辑器在保存时也是UTF-8编码,保证万无一失。
字符串的格式化问题
方法与C语言类似:
print 'hello %s'%(a) # a是字符串变量名
#%d 整数, %s 字符串, %f 浮点数, %x 十六进制数
列表
一种有序的集合,可添加、删除、修改其中的元素,即可正序位次访问,也可倒序位次访问,正序从0开始,倒序从-1开始。表中可有不同的数据类型。
例如:list = ['a', 2, 'c']
列表元素的添加
list.append('xxx') #追加元素到表尾
列表元素的插入
list.insert(index,element) #index是位置,element是要插入的元素
列表元素的删除
list = ['a','b''c']
list.pop() #删除列表list的最后一个元素
list.pop(i) #删除列表 i 位置的元素
列表元素的替换
直接给索引位置重新赋值即可
元组
元组与列表很相似,最大的不同之处就是元素一旦赋值之后便不可修改。
例如:tuple = (1,'b',c)
元组不可修改使数据更安全。
字典
使用键值对的方式存储,键和值一一对应,方便查找,键和值用冒号分割,不同的键值对用逗号分割。正如他的名字一样,他的查找方式是根据键来查找值。
例如:
初始化:
dict = {'a':1, 'b':2, 'c':3}
插入:
dict['d'] = 4
删除:
dict.pop('a') # 会返回键对应的值
# dict['a'] =1
集合
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。要创建一个set,需要提供一个list作为输入集合:
s = set([1,2,3,4])
s.add(key) # 添加
s.remove(key) # 删除
条件判断
if + 条件 :
执行语句
elif + 条件 :
执行语句
else:
执行语句
# 与C语言不同之处在于冒号的存在,和else if 变为elif。
读取用户输入
a = intput() # 若输入数字可直接输入,输入字符串或字符需要加引号
循环
break可提前退出循环,continue可跳过当前循环
for ..in 循环:依次把list、tupl、数组、字符串中的每个元素迭代出来,常用到range(x)函数(生成0~x的列表)
a = 'abcdef'
for x in a:
执行语句
while 循环:条件满足执行循环,条件不满足退出
while + 判断条件:
执行语句
python 常用函数
数学计算类函数
abs() --> 取绝对值
max() --> 取整个序列中的最大值
min() --> 取整个序列中的最小值
len() --> 取序列的长度
cmp(x,y) --> x=y返回0,x<y返回-1,x>y返回1
pow(x,y) --> 取x的y次幂
round(x,y) --> 修改x的精度为y
range(begin,end) --> 生成 begin~end 的列表
类型转换类函数
type(x) --> 返回x的类型
int(x) --> 将一个数字字符串转为数字
ord(x) --> 返回一个字符的ASCII值
chr(x) --> 返回数字所对应的ASCII字符(0~255)
hex() --> 转换成16进制
oct() --> 转换成8进制
函数的定义
用def语句,后面为括号,括号后面是冒号,冒号内的缩进块是函数内容,括号内是参数。
- 如果未想好函数内容可以填充一个paas参数代替函数内容,相当于定义一个空函数。
- python函数可以返回多个值,实际上返回的是一个元组。
- python函数支持递归。
函数的参数
参数有任意性,可以是任意数据类型。有可选参数设定,在可选参数前加上**,存入的可选参数组成一个元组