您的位置:首页 > 编程语言 > Python开发

Course1-Python数据类型总结

2016-02-24 17:16 666 查看
一. 开始正式学习前的tips:

Python和其他语言有很多类似, 也有一些差异, 下面先总结了一些基本语法上的注意事项

1. 注意缩进

2. 一行语句分为多行显示: \

3. 注释: 单行注释#,多行注释:'''或"""

4. 等待用户输入: raw_input("\npress entery key to exit.")

5. Python 关键字: 不可作为常量,变量后其他标识字符, 如: class, in, while...

6. 在网页查看本地Python文档:

  >在cmd运行: python -m pydoc -p 4567 #4567位端口号

  >在浏览器输入: http://localhost:4567/, 即可看到本地的module

二. Python数据类型: Numbers, String, List, Tuple(元组), Dictionary

在学习这个之前还是得先了解下变量。

变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。

基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。

Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程。

每个变量在内存中创建,都包括变量的标识,名称和数据信息。

每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

在创建变量时,对象就会被创建(Python是面向对象的语言), 如: var1 = 123。 可以用del来删除一些对象引用, 如: del var1。

Notes: 1). 同时为多个变量赋值: a = b = c =1

      2). 多个对象指定给多个变量: a, b, c = 1, 2, "test"

      3). 获取变量类型: type(a)

1. Numbers: int, long, float, complex(复数)

Notes: 1). long类型建议使用大写L(小写L容易与1混淆). test = 12345678L

      2). 数学常量: pi,e

常用的操作:

1). 数学函数: abs(x)#求绝对值, max(a1,a2,...), min(a1,a2,...)#返回给定参数的最大最小值,sqrt(x)#返回x的平方根,random()#随机生成下一个实数,它在[0,1)范围内, range()#从指定范围内,按指定基数递增的集合中获取一个随机数

2. String

python的字串列表有2种取值顺序:

  1). 从左到右索引默认0开始的,最大范围是字符串长度少1

  2). 从右到左索引默认-1开始的,最大范围是字符串开头

str = "hello world"

print str
print str[0]    #输出第一个字符
print str[2:5]  #输出第三至第五之间的字符串
print str[2:]  #输出从第三个字符开始的字符
print str[:-2]  #输出从开始到倒数第二个字符之间的字符串


常用的字符串的内置函数:

string.islower()/string.isupper() #判断字符串是小写/大写

string.isdigit()/string.isalpha() #判断字符串是数字/字母

string.lower()/string.upper() #转换为小写/大写

string.join(seq) #合并新字符串

string.replace(str1,str2) #字符串替换,str1替换成str2

string.strip() #去掉前后空格

string.lstrip()/string.rstrip() #去掉字符串首/尾空格

3. List

列表可以完成大多数集合类的数据结构实现。支持字符,数字,字符串甚至可以包含列表(嵌套)。

列表用[ ]标识。是python最通用的复合数据类型。

列表中的值得分割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始的,从右到左索引默认-1开始,下标可以为空表示取到头或尾。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

first_list = [ 'abc', 123 , 4.56, 'defg', 78.9 ]
second_list = [123, 'hig']

print first_list # 输出完整列表
print first_list[0] # 输出列表的第一个元素
print first_list[1:3] # 输出第二个至第三个的元素
print first_list[2:] # 输出从第三个开始至列表末尾的所有元素
print second_list * 2 # 输出列表两次
print first_list + second_list # 打印组合的列表


常用的列表内置函数:

del first_list[2] #删除列表元素

cmp(list1,list2) #比较两个列表元素

len(list1) #列表元素个数

max(list1)/min(list1) #列表元素最大/最小值

list.index(obj) #找出对象在列表中的索引位置

list.append(obj) #在列表末尾添加新对象

list.insert(index,obj) #将对象插入列表指定位置

list.count(obj) #统计某个元素在列表中出现次数

list.pop(obj=list[-1]) #移除列表中的一个元素(最后一个)

list.remove(obj) #移除列表中某个值的第一个匹配项

list.reverse() #反向列表中元素

list.sort([func]) #对列表进行对应排序

4. Tuple(元组)

元组类似于List(列表)。

元组用"()"标识。内部元素用逗号隔开。但是元素不能二次赋值,相当于只读列表。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

first_tuple = [ 'abc', 123 , 4.56, 'defg', 78.9 ]
second_tuple = [123, 'hig']

print first_tuple # 输出完整元组
print first_tuple[0] # 输出元组的第一个元素
print first_tuple[1:3] # 输出第二个至第三个的元素
print first_tuple[2:] # 输出从第三个开始至列表末尾的所有元素
print second_tuple * 2 # 输出元组两次
print first_tuple + second_tuple # 打印组合的元组


以下操作是无效的

first_tuple[2] = 1000 #元组不允许更新

对列表的此操作是有效的

first_list[2] = 1000

Notes: 1). 只有一个元素的元组的表示方法: tuple1 = (1,) #如果表示为tuple1 = (1)则tuple1不是元组

      2). 删除整个元组: del first_tuple #不可以删除元组中的元素值

常用的元组内置函数:

cmp(tuple1,tuple2) #比较两个元组的元素

len(tuple1) #计算元组元素个数

max(tuple1)/min(tuple1) #元组最大/最小值

tuple(list) #列表转元组

5. Dictionary(字典)

字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。

两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

1). 不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

2). 键必须不可变,可以用数字,字符串或元组充当,所以用列表就不行

#!/usr/bin/python
# -*- coding: UTF-8 -*-

dict1 = {}
dict1['one'] = "the first one"
dict1[2] = "the second one"
dict2 = {'name': 'daly', 'id': 291, 'dept': 'qa'}
print dict1['one'] #输出键为'one'的值
print dict1[2]  #输出键为2的值
print dict2     #输出完整的字典
print dict2.keys()  #输出所有键
print dict2.values() #输出所以值


常用字典操作:

删除字典元素: del dict1['one'] #删除键是'one'的条目, dict1.clear() #清空词典所有条目, del dict1 #删除词典

cmp(dict1,dict2) #比较两个字典

len(dict1) #元素个数

str(dict1) #输出字典可打印的字符串表示

6. 数据类型转换, 几个内置的数据类型转换函数。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: