Python全栈开发Day2

时间:2022-05-25 03:27:45

  第二章 python数据类型


 

目录

1.布尔型

2.整型

3.浮点型

4.字符串

5.列表

6.元祖

7.可变、不可变数据类型和hash

8.字典

9.集合


1.布尔型

真或假
 1 或 0
True或False

2.整型

   Python中整数属于int类型,默认十进制,支持二进制,八进制,十六进制的表示方式

>>> bin(10)#二进制
'0b1010'
>>> oct(10)#八进制
'0o12'
>>> hex(10)#十六进制
'0xa'
>>>

3.浮点型

   浮点数是属于·有理数中某特定子集的数的数字示,在计算机中用近似表示任意某个实数。Python默认是17位精度,就是小数点厚16位。

>>> a = 3.151592653513651054608317828332
>>> a
3.151592653513651
>>>

4.字符串

   字符串是一个有序的字符的集合

>>> s = 'hello'
>>> s[0]#索引
'h'
>>> s[1]
'e'
>>> s[-1]
'o'
>>> s.index('e')
1
>>> s.find('e')#查找
1
>>> a = '  hello,world   '
>>> a
'  hello,world   '
>>> a.strip()#移除空白
'hello,world'
>>> a.lstrip()#移除左空白
'hello,world   '
>>> a.rstrip()#移除右空白
'  hello,world'
>>> b = 'hello,world'
>>> len(b)#长度
11
>>> b.replace('h','H')#替换
'Hello,world'
>>> s = 'helloworld'
>>> s[0:5]#切片
'hello'
>>> s[:5]#取前5位
'hello'
>>> s[5:]#取后所有
'world'
>>> s[:]#取全部
'helloworld'
>>>
>>> s[0:5:2]
'hlo'
>>> s[::2]#从h开始隔一个取一个
'hlool'
>>> s[::-1]#取反
'dlrowolleh'
>>>

5.列表

list: 列表, 有序的项目, 通过索引进行查找, 使用方括号"[]";

 

>>> l = ['alex','cat','dog','pig']#查找
>>> l[0]
'alex'
>>> l[0:2]#切片
['alex', 'cat']
>>> l[::2]
['alex', 'dog']
>>> l.append('rabbit')#添加
>>> l
['alex', 'cat', 'dog', 'pig', 'rabbit']
>>> l.remove('rabbit')#删除
>>> l
['alex', 'cat', 'dog', 'pig']
>>> l.pop()#从最后一个开始删除
'pig'
>>> l
['alex', 'cat', 'dog']
>>> len(l)#长度
3
>>> 'cat' in l#包含
True
>>> for i in l:#循环
>>>   print(1)
['alex', 'cat', 'dog']
>>>

6.元祖

tuple: 元组, 元组将多样的对象集合到一起, 不能修改, 通过索引进行查找, 使用括号"()";

>>> ages = (11,22,33,44,55)
>>> ages[0]#查找
11
>>> ages[-1]
55
>>> for i in ages:#循环
...   print(i)
...
11
22
33
44
55
>>> len(ages)#长度
5
>>> 11 in ages#包含
True
>>>

 

7.可变、不可变数据类型和hash

>>> l = [1,2,3,4]#列表
>>> id(l)
1466396532232
>>>
>>> a=1#数字
>>> id(a)
1661187136
>>>
>>> s = 'hello'#字符串
>>> id(s)
1466396546584
>>>
>>> t = (1,2,3,4)#元组
>>> id(t)
1466396477864
>>>
>>> hash("alex")
-909141948193867673

8.字典

dict: 字典, 字典是一组键(key)和值(value)的组合, 通过键(key)进行查找, 没有顺序, 使用大括号"{}";

键、值、键值对
                  1、 dic.keys() 返回一个包含字典所有KEY的列表
                  2、 dic.values() 返回一个包含字典所有value的列表
                  3、 dic.items() 返回一个包含所有(键、值)元组的列表
                  4、 dic.iteritems()、dic.iterkeys()、dic.itervaluses()  与它们对应的非迭代方法一样,
不同的是它们返回一个迭代子,而不是一个列表 新增 1、dic['new_key'] = 'new_value'; 2、dic.setdefault(key, none) 如果字典中不存在Key键,由dic[key] = default 为它赋值; 删除 1、dic.pop(key[,default]) 和get方法相似,如果字典存在key,删除并返回key对应的valus;如果key不存在,
且没有给default的值,则引发keyerror异常; 2、dic.cler() 删除字典中的所有项或元素; 修改 1、dic['key'] = 'new_value'如果key在字典中存在,'new_value'将会替换原来的value值; 2、dic.update(dic2) 将字典dic2的键值对添加到字典dic中 查看 1、dic['key'],返回字典中key对应的值,若key不存在字典中,则报错; 2、dic.get(key , default = none) 返回字典中key对应的值,若key不存在字典中,则返回default的值(default默认为none) 循环 1、for k in dic.keys() 2、for k,v in dic.items() 3、for k in dic 长度 1、len(dic)

9.集合

set: 集合,无序, 元素只出现一次, 自动去重, 使用"set([])";

 set.isdisjoint(s):判断两个集合是不是相交

 set.issuperset(s):判断集合是不是包含其他集合,等同 a>=b

 set.issubset(s): 判断集合是不是被其他集合包含,等同 a<=b

  add(): 单个元素的添加,类似列表中的append

 update(): 对序列的添加,类似extend方法,支持同时添加多个参数

 set. discard(s):不会抛出异常

 set.remove(s):会抛出KeyError错误

 pop:由于集合无序的,pop返回的结果不能确定,当集合为空会抛出KeyError错误

 clear:清除集合

>>> a = {1,2}
>>> a.update([3,4],[1,2,7])
>>> a
{1, 2, 3, 4, 7}
>>> a.update("hello")
>>> a
{1, 2, 3, 4, 'h', 7, 'o', 'e', 'l'}
>>> a.add("hello")
>>> a
{1, 2, 3, 4, 'h', 7, 'o', 'e', 'hello', 'l'}
>>> a.discard(1)
>>> a
{2, 3, 4, 'h', 7, 'o', 'e', 'hello', 'l'}
>>> a.discard(1)
>>> a
{2, 3, 4, 'h', 7, 'o', 'e', 'hello', 'l'}
>>> a.remove(1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 1
>>> a.pop()
2
>>> a
{3, 4, 'h', 7, 'o', 'e', 'hello', 'l'}
>>> a.clear()
>>> a
set()
>>> a.pop()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'pop from an empty set'
>>>