版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
人工智能与计算机应用Python基本数据类型Python基本数据类型一、常量和变量二、数值类型三、字符串型四、列表五、元组六、字典七、集合本节内容常量和变量在程序运行过程中,不能变化的数据称为常量;而有些数据是可以随着程序的运行而发生变化的,这类数据称为变量。6.2.1常量和变量20helloX=20X=101.常量常量是一旦初始化之后就不能够修改的固定值。按其值的类型分为整型常量、浮点型常量、字符型常量等。【实战6-1】常量的使用。>>>2*1020>>>10/33.3333333333333335>>>print('中国梦'*3)中国梦中国梦中国梦
#重复输出3次字符串常量1.变量变量是程序设计语言中能存储计算结果或能表示值的抽象概念。每个变量必须有一个名称,这个名称被称为变量名。Python规定变量名由数字、字母或下画线组成,且第一个字符必须为字母或下画线,不能将Python关键字,如print、if、else、for等作为变量名。在使用变量之前,需要对其进行赋值。1.变量【实战6-2】变量的定义和使用。>>>str1='我爱'>>>str2='中国'>>>str1+str2'我爱中国' >>>score1=70>>>score1+=20 #相当于score1=score1+20>>>print(score1)908Python基本数据类型集合06字典05数值类型01字符串型02列表0304元组数值类型6.2.2数值类型数值类型(数字类型)主要有整型、浮点型、复数型、布尔型。1.整型整数是不带小数点的正整数或负整数。在Python中整型是没有限制大小的,其取值范围只与计算机的内存有关。整型有以下四种进制表现形式:(1)十进制:与数学上的写法相同,如:0、60、-1280等。(2)二进制:以0b开头,后跟二进制数的数据,如:0b1100,-0b100等。(3)八进制:以0o开头,后跟八进制数的数据,例如:0o237,-0o123等。(4)十六进制:以0x开头,后跟十六进制数的数据,例如:0x14b,-0x17等。各进制数之间可以使用bin()、oct()、hex()、int()等函数进行转换。数值类型2.浮点型浮点数由整数部分与小数部分组成。3.1415926、-6.0、78.3、0.0科学计数法:3.14e8表示3.14×108
数值类型3.复数型复数由实数部分和虚数部分构成,复数的实部和虚部都是浮点型。3+5j、1.1+7J数值类型4.布尔型Python中的布尔型数据只有两个取值:True(真)和False(假)。实际上,布尔型也是整型,True=1,False=0,可以用and、or、not进行逻辑运算,也可以和数字型进行计算。对于值为零的任何数字或空集(空列表、空元组、空字典),在Python中的布尔值都是False。字符串型6.2.3字符串型1.字符串的表示和创建字符串是有序的字符集合,是用于表示文本的数据类型。字符串可以用一对单引号、双引号、三个单引号或三个双引号引起来字符串中的字符包括数字、字母、中文字符、特殊符号以及一些不可见的控制字符,如换行符及制表符等。1.字符串的表示和创建【实战6-3】字符串的表示和创建。>>>str1='我爱中国'>>>print(str1)我爱中国>>>str2="中华民族伟大复兴">>>print(str2)'中华民族伟大复兴'>>>str3=‘他说:“我爱中国”’
#单引号表示的字符串中允许包含双引号>>>print(str3)'他说:"我爱中国"‘>>>str4='let'sgo'
#单引号表示的字符串中不允许包含单引号SyntaxError:invalidsyntax>>>str5="他说:"我爱中国""
#双引号表示的字符串中不允许包含双引号SyntaxError:invalidsyntax>>>str6="""这是一个
#用三个单引号或三个双引号来表示多行字符串多行字符""">>>print(str6)这是一个多行字符2.转义字符的使用对于一些不能直接输入的特殊字符通常用转义字符表示。转义字符含义转义字符含义\(在行尾时)续行符\\反斜杠符号\
'单引号\"双引号\n换行符\r回车符\t横向制表符\v纵向制表符\b退格符\000空\f换页\a响铃\oyy八进制数yy代表的字符,例如:\o12代表换行\xyy十六进制数yy代表的字符,例如:\x0a代表换行表6-1常见的转义字符转义符\2.转义字符的使用【实战6-4】转义字符的使用。>>>print("他说:"你吃饭了吗?"我回答:"我吃过了。"")SyntaxError:invalidsyntax
#双引号表示的字符串中不允许包含双引号>>>print("他说:\"你吃饭了吗?\"\n我回答:\"我吃过了。\"")他说:"你吃饭了吗?"我回答:"我吃过了。">>>print(r'你好\n中国')
#用r或R来指定一个原始字符串,不让转义字符生效你好\n中国3.字符串运算Python常用的字符串运算包括连接、比较、切片等。表6-2所示为常用的字符串运算,表中假设a='Hello',b='Python'。表6-2常用的字符串运算运算符相关描述实例+字符串连接>>>a+b'HelloPython'*重复输出字符串>>>a*2'HelloHello'[]使用索引获取字符串中的字符>>>a[0]'H'[:]使用切片截取字符串中的一部分>>>a[1:4]'ell'in判断一个字符或字符串是否出现在一个字符串中,若出现则返回True,否则返回False>>>'e'inaTruenotin判断一个字符或字符串是否出现在一个字符串中,若不出现则返回True,否则返回False>>>'H'notinaFalse字符串的序号01234正向递增序号-5-4-3-2-1反向递减序号4.字符串处理函数Python提供了一些和字符串相关的内置函数,它们能够快速地让对象执行简单的操作。表6-3为常用的字符串函数,假设表中a='hello',b='15',c=10.7。表6-3常用的字符串处理函数函数相关描述实例len()返回字符串的字符个数>>>len(a)5max()返回字符串中ASCII最大的字符>>>max(a)'o'min()返回字符串中ASCII最小的字符>>>min(a)'e'int()
将字符型转换成整数,如果
是数值型数据,则执行取整操作>>>int(b)15>>>int(c)10float()将字符型转换成浮点数>>>float(b)15.0str()将任何变量转换成字符串型变量>>>str(c)'10.7'eval()计算在字符串中的有效表达式并返回结果>>>eval('5*10')50tuple()将序列转换为一个元组>>>tuple(a)('h','e','l','l','o')list()将序列转换为一个列表>>>list(a)['h','e','l','l','o']set()将序列转换为可变集合>>>set(a){'e','h','o','l'}5.字符串处理方法Python提供了一系列用于字符串处理的方法,这些方法封装了一些关于字符串的简单操作。表6-4列出了常用的字符串方法,表中假设a='hello',b='Python'表6-4常用字符串方法方法相关描述实例str.join(seq)以str作为分隔符,将seq中的所有元素合并为一个新的字符串>>>a.join('你好吗')'你hello好hello吗'str.center(width,fillchar)将字符串按照width指定的宽度居中显示,且使用fillchar(默认为空格)填充多余的长度>>>a.center(11,'*')'***hello***'str.split(sep="",num=str.count(sep))以sep为分隔符截取字符串,如果num有指定值,则仅截取num+1个子字符串>>>c='h,e,l,l,o'>>>c.split(',')['h','e','l','l','o']str.splitlines([keepends])按照行('\r','\r\n','\n')分隔,返回一个包含各行作为元素的列表,如果参数keepends为False,不包含换行符,如果为True,则保留换行符>>>d='hello\n1111\r'>>>d.splitlines()['hello','1111']str.replace(old,new[,count])把字符串中的old换成new,如果count指定,则替换不超过count次>>>a.replace('e','555')'h555llo'str.capitalize()把字符串的第一个字符转换成大写>>>a.capitalize()'Hello'str.lower()把字符串的所有大写字符转换成小写>>>b.lower()'python'str.upper()把字符串的所有小写字符转换成大写>>>a.upper()'HELLO'str.swapcase()把字符串的大写字符转换成小写,小写字符转换成大写>>>b.swapcase()'pYTHON'str.isalnum()如果字符串中至少有一个字符,且所有字符都是字母或数字则返回True,否则返回False>>>a.isalnum()Truestr.isalpha()如果字符串中至少有一个字符,且所有字符都是字母则返回True,否则返回False>>>a.isalpha()Truestr.isdigit()如果字符串只包含数字,则返回True,否则返回False>>>a.isdigit()Falsestr.count(sub[,start[,end]])返回sub在字符串中出现的次数。如果指定了start或end,则返回指定范围内sub出现的次数>>>a.count('h')1str.find(sub[,start[,end]])检查sub是否包含在字符串中,如果指定了start或end,则在指定范围内检查,如果包含则返回开始的索引值,否则返回-1>>>a.find('llo')2方法为<a>.<b>()中的函数.<b>()列表6.2.4列表列表是一个可变的有序序列,可以存储各种数据元素。列表的长度与元素都是可变的,可自由地对列表中的数据进行添加、删除、修改元素等操作。1.列表的创建列表使用[]或list()来创建,列表中的元素使用中括号括起来,元素之间用逗号分隔。【实战6-5】列表的创建>>>list1=[]
#创建一个空列表>>>print(list1)[]>>>list2=list()#使用list函数创建一个空列表>>>print(list2)[]>>>list3=[‘星期一’,’星期二’,’星期三’,’星期四’]#用相同数据类型的数据创建列表>>>print(list3)['星期一','星期二',‘星期三','星期四']>>>list4=[0.5,1,’星期二’,’星期三’]#用不同数据类型的数据创建列表>>>print(list4)[0.5,1,'星期二','星期三']2.列表的索引和切片列表中的每个元素都有编号,这些编号代表了元素在列表中的位置,称为索引位置。从起始元素开始,索引值从0开始递增。此外,Python还支持索引值是负数。切片是对序列截取一部分的操作,切片的功能十分强大,它可以对列表的元素进行大范围操作。【实战6-6】列表的索引和切片>>>list1=['星期一','星期二','星期三','星期四','星期五']>>>print(list1[1])#访问列表中索引位置为1的元素'星期二'>>>list1[1]='语文'#用赋值语句改变列表元素的值>>>print(list1)['星期一','语文','星期三','星期四','星期五']>>>print(list1[1:4])#截取列表中索引位置1开始,4之前的元素['语文','星期三','星期四']>>>print(list1[:3])#截取列表中索引位置0开始,3之前的元素['星期一','语文','星期三']-101234正向递增序号反向递减序号-5-4-3-23.列表的基本操作列表的基本操作有列表元素的添加、删除,列表的合并等。【实战6-7】列表元素的添加、删除、合并等常用操作>>>list1=['星期一','星期二','星期三','星期四']>>>list1.append(‘星期五’)#用append()方法,在列表的末尾增加元素>>>print(list1)['星期一','星期二','星期三','星期四','星期五']>>>list1.insert(3,'星期日')#用insert()方法,在列表的指定位置插入元素>>>print(list1)['星期一','星期二','星期三','星期日','星期四','星期五']>>>dellist1[2]
#用del命令删除列表中指定元素>>>print(list1)['星期一','星期二','星期日','星期四','星期五']>>>list2=['星期六','星期日']>>>list3=list1+list2#用连接运算符+合并列表>>>print(list3)['星期一','星期二','星期日','星期四','星期五','星期六','星期日']>>>list4=list2*2
#用重复运算符*重复列表>>>print(list4)['星期六','星期日','星期六','星期日']>>>list4.remove(‘星期日’)#用remove()方法移除列表中指定值的第一个匹配项>>>print(list4)['星期六','星期六','星期日']元组6.2.5元组元组是一个不可变序列。当创建元组后,不可以修改、添加和删除元组中的元素,但可以访问元组中的元素。1.元组的创建元组由小括号内的元素和逗号组成。在使用元组之前,首先要创建元组。【实战6-8】元组的创建。>>>tup1=('星期一','星期二','星期三')>>>tup2=(1,2,3,4,5,6)>>>tup3=('hello','Python',50.1,100)>>>tup4=()#用小括号创建空元组>>>tup5=(30,)#元组中只包含一个元素时,需要在元素后面添加逗号>>>tup6=tuple()
#用tuple()函数来创建空元组>>>tup7=1,2#不使用小括号创建元组2.元组的基本操作元组与列表类似,索引值从0开始递增,可使用下标索引访问元组中的元素,可以进行切片、组合等操作。不能删除元组中的元素,但可以使用del语句删除整个元组。【实战6-9】元组的访问、连接、删除等操作。>>>tup1=('星期一','星期二','星期三','星期四') >>>print(tup1[0])'星期一'>>>print(tup1[1:3])('星期二','星期三')>>>tup1[0]='星期五'#元组元素不允许修改Traceback(mostrecentcalllast):File"<pyshell#3>",line1,in<module>tup1[0]='星期五'TypeError:'tuple'objectdoesnotsupportitemassignment>>>tup2=(1,2,3,4,5,6)>>>tup3=tup1+tup2#用+合并成一个新的元组>>>print(tup3)('星期一','星期二','星期三','星期四',1,2,3,4,5,6)>>>tup4=('hello',) >>>tup5=tup4*3 #将元组中的元素重复3次,返回一个新的元组>>>print(tup5)('hello','hello','hello')>>>deltup5#用del命令删除整个元组字典6.2.6字典Python提供了两个没有顺序的内建数据类型,分别是字典和集合。字典是由键和值组成的键-值对的无序集合。“City”:“南宁”
“School”:“广西民族大学”
字典有以下特征:字典中的数据必须以键-值对的形式出现。键在字典中必须是唯一的,每个键只能对应一个值。如果同一个键被多次赋值,则最后一次赋的值为该键对应的值。字典中的键是不可变的,为不可变类型,不能进行修改。字典中的值则没有任何限制,可以修改,也可以是任何数据类型。1.字典的创建Python提供了快速创建字典的方式,用一对大括号包含多个键-值对,其语法格式如下:
{键1:值1,键2:值2……}【实战6-10】字典的创建。>>>dict1={}#创建空字典>>>dict2={'学号':'1001','姓名':'张三','成绩':90}>>>dict3={'数学':80,'语文':90.5,'数学':82}#'数学'键被两次赋值>>>print(dict3)#后面赋的值82为'数学'键对应的值。{'数学':82,'语文':90.5}2.字典的基本操作字典的基本操作有字典访问、字典修改、字典删除及元组转字典等。【实战6-11】字典的基本操作。>>>dict1={'学号':'1001','姓名':'张三','成绩':90}>>>dict1['学号']='1002'#更新'学号'键的值>>>deldict1['姓名'] #删除'姓名'键>>>print(dict1){'学号':'1002','成绩':90}>>>dict1.clear() #清空字典dict1>>>print(dict1){}>>>deldict1#删除字典dict1集合6.2.7集合集合是一个无序的且不重复的元素集。集合由不同元素组成,使用集合可以很方便地删除重复元素。{‘星期一’,‘星期二’,2,4,(1,2,3)}{1,3,5,7,9}1.集合的创建在Python中,可以使用大括号{}创建集合,也可以使用set()函数创建集合。【实战6-12】集合的创建。>>>set1={1,1,3,5,7,7,9}#创建集合,去除重复元素>>>print(set1){1,3,5,7,9}>>>set2=set()#用set()函数创建空集合,不能使用大括号{}来创建空集合>>>print(set2)set()>>>list1=['星期一','星期二','星期一','星期三']>>>set3=set(list1)#用set()函数将列表转换为集合,并去除重复元素>>>print(set3){'星期三','星期二','星期一'}#集合是无序的,程序运行结果中元素的位置是随机的>>>set4=set(‘HelloPython’)#用set()函数将字符串转换为集合,并去除重复元素>>>print(set4){'P','o','y','h','t','e','n','l','H',''}
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年黑龙江客车驾驶员考试答案
- 2024年江苏客运从业资格证考试大纲
- 2024年广州客运考题
- 2024年河南客运试卷
- 2024年昆明客车驾驶员考试试题答案
- 成都某商品房临时用电施工方案
- 教育教学读书心得(5篇)
- 五分钟让青春无悔演讲稿800字(32篇)
- 用人单位授权委托书(33篇)
- 期末考试自我总结13篇
- 标准采购清单
- 乡镇对第三方会计师事务所代理村级财务的考核办法
- 小学数学西南师大五年级上册四小数混合运算教案
- 韩昌黎文集韩愈文集
- 小学四年级美术学业质量监测试题
- 求职个人简历表格【范本模板】
- 《企业财务分析》课程思政教学案例
- VFP数据库操作常用命令
- 沪科版七年级上册数学教学课件3.2 第3课时 比例与和、差、倍、分问题
- 中国旅游地理(第七版)第03章中国旅游资源地理
- syb游戏模块 基本企业周期
评论
0/150
提交评论