Python开发之路Day5----基本数据类型和内置方法(…

2019-04-11 10:46:35来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

一、课前小练习

  #定义一个员工列表,格式化输出员工的姓名、年龄和性别。

1 info = [
2        ['egon',18,'male'],
3        ['kevin',19,'male'],
4        ['wusir',20,'female'],
5 ]   
6 
7 for name,age,gender in info:
8 print('My name is %s,my age is %s,my sex is %' %(name,age,gender))
View Code

二、可变与不可变类型

可变类型:变量的值改变了,但是id不变,从而说明他只是在改变原值,这就是可变类型。

不可变类型:变量的值改变了,同时id也改变了,说明产生了一个新的值,这就是不可变类型。

 1 x=9
 2 print(id(x))
 3 x=10
 4 print(id(x)) #类型可变
 5 
 6 l=['a','b']
 7 print(id(l))
 8 l[0]='A'
 9 print(l)
10 print(id(l)) #不可变类型
View Code

三、基本数据类型和内置方法

3.数字类型(详解)

 3.1整型(int)

   用途:用于记录年龄、身份证号、数量、等级等等。

   定义:age = 18

   数据类型的转换:只能讲出数字的字符串转换成int。

1 x = int('12345')
2 print(x,type(x))
3 x = int('1234')
View Code

3.2浮点型(float)

    用途:用于记录描述身高、薪资、体重等状态。

    定义:salary = 3.1 # salary = float(3.1)

 总结:数字类型只能存一个值,而且是不可变的。

4.字符串类型重点掌握

   用途:用于记录描述事物的状态。

   定义:通过使用单双引号来定义。 # name = 'egon'  name = str('egon')

   相关操作:1.数据类型的转换:所有的类型都可以转换成字符串类型。

         # res = str('hello word')

         # print(res,type(res))

   内置方法的操作:

4.1 按照索引的位置(正反方向),只能取

1 # msg='hello'
2 # print(msg[0],type(msg[0]))
3 # print(msg[-1])
4 # print(msg[-2])
View Code

4.2 切片(顾头不顾尾)

1 # msg='hello world'
2 # res=msg[0:3:1] # 0 1 2
3 # print(res)
4 # print(msg)
5 
6 # res=msg[:]
7 # res=msg[::2] # 0 2 4 6 8 10
8 # print(res)
View Code

4.3 长度len

1 # msg='hello world'
2 # print(len(msg))
View Code

4.4 成员运算in和not in:判断一个子字符串是否存在于大字符串中

1 msg='kevin is dsb'
2 
3 # print('kevin' in msg)
4 # print('dsb' in msg)
5 # print('aaa' not in msg)
6 # print(not 'aaa' in msg)
View Code

4.5 移除空白strip: 用来去除字符串左右两边的字符,不指定默认去除的是空格

1 # msg='      he llo     '
2 # res=msg.strip()
3 # print(res,id(res))
4 # print(msg,id(msg))
5 
6 # print('******eg**on*****'.strip('*'))
7 
8 
9 # print('***+-\/***egon#@$*****'.strip('*+-\/#@$'))
View Code

4.6 切分split:针对有规律的字符串,按照某种分隔符切成列表

1 info='egon:18:male'
2 # res=info.split(':')
3 # print(res,type(res))
4 # print(res[0],res[1])
5 
6 # cmd='get|a.txt|33333'
7 # print(cmd.split('|',1))
View Code

4.7 用:号作连接符号将纯字符串的列表拼接成一个字符串

1 l=['egon', '18', 'male']  # 'egon:18:male'
2 # res=l[0]+':'+l[1]+':'+l[2]
3 res=':'.join(l)
4 # print(res)
View Code

4.8 循环操作

1 # for item in 'hello':
2 #     print(item)
View Code

4.9 需要掌握的操作(低一级)

 1 #1、strip,lstrip,rstrip
 2 # print('******egon***********'.strip('*'))
 3 # print('******egon***********'.lstrip('*'))
 4 # print('******egon***********'.rstrip('*'))
 5 
 6 #2、lower,upper
 7 # print('Abc123'.lower())
 8 # print('Abc123'.upper())
 9 
10 #3、startswith,endswith
11 # msg='alex is dsb'
12 # print(msg.startswith('alex'))
13 # print(msg.endswith('b'))
14 
15 #4、format的三种玩法
16 # res='my name is %s my age is %s' %('egon',18)
17 # print(res)
18 
19 # res='my name is {name} my age is {age}'.format(age=18,name='egon')
20 # print(res)
21 
22 # 了解
23 # res='my name is {} my age is {}'.format('egon',18)
24 # res='my name is {0}{1} my age is {1}{1}{1}{1}'.format('egon',18)
25 # print(res)
26 
27 #5、split,rsplit
28 # msg='a:b:c:d'
29 # print(msg.split(':',1))
30 # print(msg.rsplit(':',1))
31 
32 #6、replace
33 # msg='kevin is kevin is hahahah'
34 # res=msg.replace('kevin','sb',1)
35 # print(res)
36 
37 #7、isdigit
38 # print('123123'.isdigit()) # 如果字符串是由纯数字组成的,则返回True
39 # print('123123   '.isdigit())
40 # print('123123asdf'.isdigit())
41 # print('12312.3'.isdigit())
View Code

5.0 需要了解的操作(不要求强烈会操作)

 1 1、find,rfind,index,rindex,count
 2 # print('123 ke123ke'.find('ke'))
 3 # print('123 ke123ke'.rfind('ke'))
 4 # print('123 ke123ke'.index('ke'))
 5 # print('123 ke123ke'.rindex('ke'))
 6 
 7 # print('123 ke123ke'.find('xxxx'))
 8 # print('123 ke123ke'.index('xxxx'))
 9 # print('123 ke123ke'.count('ke',0,6))
10 
11 #2、center,ljust,rjust,zfill
12 # print('egon'.center(50,'*'))
13 # print('egon'.ljust(50,'*'))
14 # print('egon'.rjust(50,'*'))
15 
16 # print('egon'.rjust(50,'0'))
17 # print('egon'.zfill(50))
18 
19 #3、captalize,swapcase,title
20 # print('abcdef dddddd'.capitalize())
21 # print('abcAef dddddd'.swapcase())
22 # print('abcAef dddddd'.title())
23 
24 #4、is数字系列
25 num1=b'4' #bytes
26 num2='4' #unicode,python3中无需加u就是unicode
27 num3='四' #中文数字
28 num4='Ⅳ' #罗马数字
29 
30 # bytes与阿拉伯数字组成的字符串
31 # print(num1.isdigit())
32 # print(num2.isdigit())
33 # print(num3.isdigit())
34 # print(num4.isdigit())
35 
36 # 阿拉伯数字组成的字符串
37 # print(num2.isdecimal())
38 # print(num3.isdecimal())
39 # print(num4.isdecimal())
40 
41 # 阿拉伯数字\中文\罗马组成的字符串
42 # print(num2.isnumeric())
43 # print(num3.isnumeric())
44 # print(num4.isnumeric())
View Code

  总结:字符换类型只存在一个值,并且它是有序的,是不可变的。

5.列表类型(list)

   用途:按照位置来记录值,通过索引来取值。

   定义:在[]内用逗号把多个值分开。 # l = ['1','2','3']

   数据类型的转换:但凡能够被for循环遍历的数据类型都可以传给list,被其转换成列表

1 # res=list('hello')
2 # res=list(123)
3 # print(res)
4 
5 # res=list({'a':1,'b':2,'c':3}) # []
6 # print(res)
View Code

    由于列表的常用内置方法和字符串类似,所以这里以偏概全:(不做具体分析)但很重要

 1 #3.1、按索引存取值(正向存取+反向存取):即可存也可以取
 2 l=['a','b','c','d','e']
 3 # print(l[0])
 4 # print(l[-1])
 5 # print(id(l))
 6 # l[0]='A'
 7 # print(id(l))
 8 
 9 # 强调强调强调!!!:对于不存在的索引会报错
10 # l[5]='AAAA'
11 
12 # dic={"k1":111}
13 # dic['k2']=2222
14 # print(dic)
15 
16 #3.2、切片(顾头不顾尾,步长)
17 # l=['a','b','c','d','e']
18 # print(l[1:4])
19 # print(l[::-1])
20 
21 #3.3、长度
22 # l=['a','b','c','d','e']
23 # print(len(l))
24 
25 #3.4、成员运算in和not in
26 # l=['a','b','c','d','e']
27 # print('a' in l)
28 
29 #3.5、追加与insert
30 # l=['a','b','c','d','e']
31 # l.append('xxx')
32 # l.append('yyy')
33 # print(l)
34 
35 # l.insert(0,'xxxx')
36 # print(l)
37 
38 #3.6、删除
39 l=['a','bbb','c','d','e']
40 
41 # del是一种通用的删除操作,没有返回值
42 # del l[0]
43 # print(l)
44 
45 # dic={'k1':1}
46 # del dic['k1']
47 # print(dic)
48 
49 # l.remove(指定要删除的那个元素),没有返回值
50 # res=l.remove('bbb')
51 # print(l)
52 # print(res)
53 
54 # l.pop(指定要删除的那个元素的索引),返回刚刚删掉的那个元素
55 # l=['a','bbb','c','d','e']
56 # l.pop(-1)
57 # res=l.pop(1)
58 # print(l)
59 # print(res)
60 
61 #3.7、循环
62 # l=['a','b','c','d','e']
63 # for item in l:
64 #     print(item)
View Code

    类似需要掌握的操作:

 1 l=['aaa','bb',345]
 2 # l.clear()
 3 # l.append([1,2,3])
 4 
 5 # for i in [1,2,3]:
 6 #     l.append(i)
 7 # l.extend([1,2,3])
 8 
 9 # l.reverse()
10 
11 # 只有在类中中所有元素都是同种类型的情况下才能用sort排序
12 # l=[1,3,2]
13 # l.sort(reverse=True)
14 
15 l=['z','d','a']
16 l.sort()
17 print(l)
View Code

 总结:列表可以存多个值,并且有序、可变。

其他的数据类型下次补齐,等待更新...............

 


原文链接:https://www.cnblogs.com/wanglei957/p/10579348.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:pyspider -- 禁止请求非200响应码抛异常

下一篇:数据分析处理库Pandas——时间