追梦路上前行

Python基础 基本数据类型

基本数据类型

1.数字

  int,float浮点型,复数型,bool型 

  bool型只有两个值:True和False

2 .字符串

  字符串是一个有序的字符的集合,用于存储和表示基本的文本信息,' '或'' ''或''' '''中间包含的内容称之为字符串。

  s = 'Hello,abc?'

  按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序

  补充:

  1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r'l\thf'

  2.unicode字符串与r连用必需在r前面,如name=ur'l\thf' 

   常用操作:

 1 # 索引
 2 s = 'hello'
 3 print(s[1], s[-1])
 4 print(s.index('o'))
 5 
 6 # 查找
 7 print(s.find('l'))
 8 print(s.find('o'))
 9 
10 #  移除空白
11 s = "   hello,world! "
12 print(s.strip())
13 print(s.lstrip())
14 print(s.rstrip())
15 s1 = "****hello,world!**"
16 print(s1.strip('*'))
17 
18 
19 # 长度
20 s = 'hello'
21 print(len(s))
22 
23 # 替换
24 s = "hello world"
25 print(s.replace('h', 'z'))
26 
27 # 切片
28 s = 'xssccwddwwecxwasc'
29 print(s[0:5])
30 print(s[5:9])
31 print(s[:5])
32 print(s[:])
33 print(s[0:8:2])
34 print(s[::2])
35 print(s[::-1])
View Code

  

3.列表类型

 

  定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素

 

  列表的创建

  list=['alex','123','eric']

  或list=list('alex')

  或list=list(['alex','123','eric'])

  列表的特点和常用操作:

  1.可存放多个值

  2.按从左到右的顺序定义列表元素,下标从0开始顺序访问,有序

  3.可修改指定索引位置对应的值,可变

  常用操作:

 1 # 索引
 2 l = ['alex','egon','yuan','eric']
 3 print(l[0])
 4 print(l[2])
 5 
 6 # 切片
 7 print(l[0:2])
 8 print(l[2:4])
 9 print(l[2:])
10 print(l[:])
11 print(l[::2])
12 print(l[::-1])
13 
14 # 追加
15 l.append('eva')
16 print(l)
17 
18 # 删除
19 l.remove("eva")
20 print(l)
21 l.pop()
22 print(l)
23 
24 # 长度
25 print(len(l))
26 
27 # 包含
28 print("sev"in l)
29 print('alex' in l)
30 
31 # 循环
32 for i in l:
33     print(i)
View Code

  列表与字符串--split和join

1 # 分割
2 s = "hello world"
3 print(s.split(" "))
4 s1 = "hello,world"
5 print(s1.split(","))
6 
7 # 连接
8 l = ['hi','eva']
9 print(','.join(l))
View Code

 

4.元祖  

元组的定义和特性

定义:与列表类似,只不过[]改成()

特性:

  1.可存放多个值
  2.不可变
  3.
按照从左到右的顺序定义元组元素,下标从0开始顺序访问,有序

元祖的创建:

  ages=(11,22,33,44,55)

  或ages=tuple((11,22,33,44,55))

常用操作: 

 1 #索引
 2 >>> ages = (11, 22, 33, 44, 55)
 3 >>> ages[0]
 4 11
 5 >>> ages[3]
 6 44
 7 >>> ages[-1]
 8 55
 9 
10 #切片:同list  
11 
12 #循环
13 >>> for age in ages:
14     print(age)
15 
16 
17 11
18 22
19 33
20 44
21 55
22 
23 #长度
24 >>> len(ages)
25 5
26 
27 #包含
28 >>> 11 in ages
29 True
30 >>> 66 in ages
31 False
32 >>> 11 not in ages
33 False
View Code

元祖特性详解:

1.可存放多个值,如果只有一个值:

t=(1,)

元祖不仅可以存放数字,字符串,还能存放更加复杂的数据

2.不可变

元祖本身不可变,如果元祖中包含其他可变元素,这些元素可以改变。 

5.字典

 

字典是Python语言中唯一的映射类型。

 

定义:{key1:value1,key2:value2}

特性:

  1.key-value结构

  2.key必须可hash,且必须为不可变数据类型,必须唯一

  3.可存放多个值,可修改,可以不唯一

  4.无序

字典的创建与常见操作:

  字典的创建:

1 person = {"name": "alex", "age": 20}
2 # person = dict(name='seven', age=20)
3 # person = dict({"name": "egon", "age": 20})
4 # person = dict(['name','alex'],['age',19])
5 dic={}.fromkeys(['k1','k2'],[])
6 print(dic)
7 dic['k1'].append(1)
8 print(dic)
View Code

  字典的常见操作:

 1 dic = {"name":'123',"age":18}
 2 print(dic.keys())
 3 print(dic.values())
 4 print(dic.items())
 5 
 6 # 新增
 7 dic["new_key"] = "new_value"
 8 dic.setdefault('key',None) #如果字典中不存在Key键,由 dic[key] = default 为它赋值;
 9 print(dic)
10 
11 # 删除
12 # print(dic.pop('key'))
13 # dic.clear()
14 
15 # 修改
16 dic2={"aaa":111}
17 dic['key']='new_value'
18 dic.update(dic2)
19 
20 # 查看
21 print(dic['key'])
22 dic.get('key') # 返回字典中key对应的值,若key不存在字典中,则返回default的值(default默认为None)
23 
24 # 循环
25 for k in dic.keys():
26     print(k)
27 for k,v in dic.items():
28     print(k,v)
29 
30 for k in dic:
31     print(k)
32 
33 # 长度
34 print(len(dic))
View Code

 6.集合

集合是一个数学概念:由一个或多个确定的元素所构成的整体叫做集合。

集合中的元素有三个特征:

1.确定性(元素必须可hash)

2.互异性(去重)

3.无序性(集合中的元素没有先后之分),如集合{3,4,5}和{3,5,4}算作同一个集合。

注意:集合存在的意义就在于去重和关系运算

集合的关系运算:

 1 l={'abc',111,'zxc'}
 2 p={'abc',222,'zxc'}
 3 # 集合求交集
 4 print(l&p)
 5 print(l.intersection(p))
 6 
 7 # 集合可以去重
 8 set1={1,2,3,1,2}
 9 print(set1)
10 # 改为不可变集合
11 set2=set("hello")
12 print(set2)
13 set2=frozenset(set2)
14 print(set2)
15 
16 # 集合的合集
17 print(l|p)
18 print(l.union(p))
19 
20 # 集合的差集
21 print(l-p)
22 print(l.difference(p))
23 
24 # 集合的对此差集
25 print(l.symmetric_difference(p))
26 print(l ^ p)
View Code

包含关系

in,not in:判断某元素是否在集合内
==,!=:判断两个集合是否相等

两个集合之间一般有三种关系,相交、包含、不相交。在Python中分别用下面的方法判断:

  • set.isdisjoint(s):判断两个集合是不是不相交
  • set.issuperset(s):判断集合是不是包含其他集合,等同于a>=b
  • set.issubset(s):判断集合是不是被其他集合包含,等同于a<=b 

集合常用操作:

 1 """
 2 单个元素的增加 : add(),add的作用类似列表中的append
 3 
 4 对序列的增加 : update(),而update类似extend方法,update方法可以支持同时传入多个参数:
 5 """
 6 
 7 a={1,2}
 8 a.update([3,4],[1,2,7])
 9 print(a)
10 a.update("hello")
11 a.add("hello")
12 print(a)
13 
14 """
15 元素的删除
16 
17 集合删除单个元素有两种方法:
18 
19 元素不在原集合中时:
20 
21 set.discard(x)不会抛出异常
22 
23 set.remove(x)会抛出KeyError错误
24 """
25 a={1,2,3,4}
26 a.discard(1)
27 print(a)
28 a.discard(1)
29 print(a)
30 # a.remove(1)
31 
32 """
33 pop():由于集合是无序的,pop返回的结果不能确定,且当集合为空时调用pop会抛出KeyError错误,
34 
35 clear():清空集合
36 """
37 
38 a={3,"a",2.1,1}
39 a.pop()
40 print(a)
41 a.pop()
42 a.clear()
43 print(a)
44 a.pop()
View Code

 

posted on 2018-05-29 10:37  hello1230  阅读(373)  评论(0)    收藏  举报

导航