Python基础学习之常用六大数据类型

2018-09-18  本文已影响9人  _Amauri

刚开始学习一门编程语言,除了了解运行环境与语言类型之外,最基本还是从该语言的基本数据类型开始学起。

Python六大常用数据类型:

int 整数

float 浮点数

str 字符串

list 列表

tuple 元组

dict 字典

讲解这些先说一下python中的变量与变量名。

变量其实本质上是一个具有特殊格式的内存,变量名则是指向这个内存的别名。

python中的变量不需要声明,所有的变量必须赋值了才能使用。

赋值的步骤:

a = 100

第一步:准备好值100

第二部:准备好变量名a

第三部:将值与名字进行关联

一、整数

python将其他一些静态语言中的int、long,也就是整型和长整型合并为了一个。

python中的int是边长的,也就是说可以存储无限大的整数,但是这是不现实的,因为没有这么多的内存够分配。

整型不仅支持十进制,还支持二进制、八进制、十六进制。

可以通过下面的方式来互相转换:

print(bin(20)) #转换二进制

print(oct(20)) #转换八进制

print(hex(20)) #转换十六进制

二、浮点型

浮点数也就是小数,如22.1,44.2,也可以使用科学计数法,比如:1.22e8。

python支持对整数和浮点数直接进行四则混合运算。

整数运算结果仍然是整数,浮点数运算结果仍然是浮点数,但整数和浮点数混合运算的结果就变成浮点数了。

a = 1

b = 1.1

print(type(a+b)) #<class 'float'>

三、字符串

字符串在任何编程语言中都是最常用的数据类型。

字符串的创建很简单,也是上面所说的三步,但是要加上单引号或者双引号。

a = "hello python"

也可以使用 “”" 创建多行字符串:

a = """

    hello

    python

"""

字符串可以通过下面方式进行截取或者连接:

print (str[0:4])      输出第一个到倒数第四个的所有字符           

print (str[0])        输出单字符 第1个字符

print (str[3:])      输出从第四个开始之后的所有字符

print (str * 2)      输出字符串两次

print (str + "bbbb")  连接字符串

字符串常用函数:

str.strip() 消除字符串s左右两边的空白字符(包括’\t’,’\n’,’\r’,’’)

len(str) 获取字符串长度

str.upper() 转换为大写

str.lower() 转换为小写

str.title() 每个单词首字母大写

str.capitalize() 首字母大写

字符串翻转:

a = 'abcde'

print(a[::-1])

字符串分割:

a = 'hello,python'

print(a.split(',')) #['hello', 'python'] 返回一个列表

相对应的还有一个将列表元素连接成字符串:

a = ['hello', 'python']

str = '-'

print(str.join(a)) # hello-python

四、列表

列表的写法是一个方括号内的值用逗号分隔。比如上面的[‘hello’, ‘python’]。

列表的数据项不需要具有相同的类型,列表中的每个元素都分配一个数字索引,第一个索引是0,第二个索引是1,依此类推。

访问列表中的值可以通过下面的方式:

list1 = [1, 2, 3, 4, 5, 6]

print(list1[2])

同样可以通过索引截取

print ("list1[2:5]: ", list1[2:5])

列表常用操作:

list1.append(‘7’) 追加一个元素在末尾,每次只能添加一个

len(list1) 返回列表元素个数

max(list1) 返回列表元素最大值

min(list1) 返回列表元素最小值

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

list1.index(obj) 从列表中找出某个值第一个匹配项的索引位置

list1.reverse() 反向列表中元素

list1.clear() 清空列表

list1.extend(seq) 在列表末尾一次性追加另一个序列中的多个值,也就是扩充了列表 

append与extend的区别:

A = ['a', 'b', 'c']

A.append(['d', 'e'])

print(A) # ['a', 'b', 'c', ['d', 'e']]

B = ['a', 'b', 'c']

B.extend(['d', 'e'])

print(B) # ['a', 'b', 'c', 'd', 'e']

extend方法只能接收list类型,它是把这个列表中的每个元素添加到原list中。

append可以接收任意类型,追加到原list的末尾。

五、元组

元组的创建也很简单,和list类似,只是把’[]‘换成了’()’。

tup1 = ('hello', 'python')

元组中只有一个元素的时候要注意:

tup2 = (10)

tup3 = ('a')

print(type(tup2)) #<class 'int'>

print(type(tup3)) #<class 'str'>

因为这样会被解释器当做运算符,所以正确的方法是在第一个元素后面添加逗号。

tup4 = ('a',)

print(type(tup4)) #<class 'tuple'>

元组同样可以使用下标索引来访问元组中的值:

tup5 = ('hello', 'python', 'hello', 'word')

print(tup5[1]) #python

print(tup5[1:3]) #('python', 'hello')

注意:

元组是不可以被修改的。

tup6 = ('hello', 'python', 'hello', 'word')

tup6[2] = 'aaa'

上面会出现一个异常: TypeError: ‘tuple’ object does not support item assignment.

但是元组中如果包含了一个列表,那么这个列表是可以被修改的。

tup7 = ('hello', 'python', 'hello', 'word', ['aa', 'bb', 'cc'])

tup7[-1][1] = 'ddd'

print(tup7) # ('hello', 'python', 'hello', 'word', ['aa', 'ddd', 'cc'])

元组运算符:

len(tup) 计算元素个数

tup1 + tup2连接生成新元组

tup * 4 元组复制

num in tup 元素是否存在,返回True/False

六、字典

python中的字典就是key,value的形式。使用大括号包含起来。字典中的成员的键是唯一的,如果出现多个同名的键,那么写在后面覆盖前面的值。

形式如下:

dict1 = {'a' : 1, 'b' : 2}

字典的常用操作最基本的也就是增删改查:

获取:

直接通过键来获取。

dict['b'] # 2

dict.keys() 获取字典中所有的键

dict.values() 获取字典中的所有的值

增加:

dict1['c'] = 3 #{'a': 1, 'b': 2, 'c': 3} #如果键存在则更新对应的值

修改:

直接给键进行再次赋值就可以修改键对应的值了。

如果键不存在,则变成添加成员。

还可以通过:

dict1.update({"a":"11"})

dict1.setdefault("a", "222") # 已存在的键则修改无效

dict1.setdefault("d","222") # 不存在的话则创建

dict1.setdefault("e") # 没有设置值为None

删除:

使用pop删除指定键对应的成员,同时返回该值

print(dict1) # {'a': '11', 'b': 2, 'c': 3, 'd': '222', 'e': None}

print(dict1.pop("a")) # a

print(dict1) # {'b': 2, 'c': 3, 'd': '222', 'e': None}

#在不设置默认值的情况下,使用pop删除不存在的键,会报错。

print(dict1.pop("f")) # 报错 KeyError: 'f'

如果设置了默认值, print(dict1.pop(“f”, None)),则不会报错,返回这个默认值。

判断是否删除成功可以通过下面方式来判断:

if dict1.pop("f", None) == None:

    print('键不存在')

else:

    print('删除成功')

以上则是python中最基本的数据类型以及用法,当然还有其他的数据类型,作者暂时只列举了这些。

上一篇 下一篇

猜你喜欢

热点阅读