Python-基础-day3
2019-02-25 16:14:36来源:博客园 阅读 ()
基础数据类型
1、什么是数据类型?
我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不清1和‘汉’的区别的,因此,在每个编程语言里都会有一个叫数据类型的东东,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传数字给它,你想让他处理文字,就传字符串类型给他。Python中常用的数据类型有多种,如下:
整数(int) 、字符串(str)、布尔值(bool)、列表(list)、元组(tuple)、字典(dict)、集合(set)
2、基础数据类型
2.1、数字(int)
数字使用来计算的,使用场景不多,我们知道有这个数据类型,会使用一种即可:
#数字int #bit_length() 当十进制用二进制表示时,最少使用的位数 aihuidi = 11 data = aihuidi.bit_length() print(data)
2.2、布尔值(bool)
布尔值就两种:True、False。含有条件就时正确与不正确(否)
真 1 True
假 0 False
2.3、
字符串(str)
字符串的索引与切片
索引即下标,就时字符串组成的元素从第一个开始,初始索引为0以此往后推。
#索引:
aihuidi = 'ABCDEFGHIJKLMNOPQRSTUVWSXYZ' print(aihuidi[0]) print(aihuidi[3]) print(aihuidi[8]) print(aihuidi[23])
切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。
#切片: aihuidi = 'ABCDEFGHIJKLMNOPQRSTUVWSXYZ' print(aihuidi[0:8]) print(aihuidi[3:16]) print(aihuidi[0:]) #默认打印到最后一个 print(aihuidi[0:-1]) #-1 是列表中的最后一个元素,但是要满足顾头不顾腚的原则,所以取不到Z元素 print(aihuidi[0:5:2]) #加步长 print(aihuidi[5:0:-2]) #反向加步长
字符串的常用方法。
name = "aihuidi" print(name.capitalize()) #首字母大写 print(name.swapcase()) #大小写反转 hhh = 'dong liu weu mng' print(hhh.title()) #每个单词的首字母大写 #内同居中,总长度为20,空白处以*填充 a1 = '1a3a45haj' ret2 = a1.center(20,"*") print(ret2) #a在字符串中的元素出现的个数 ret3 = a1.count("a",0,8) #可切片 print(ret3) a4 = "aihuidi is my hhh" ret4 = a4.startswith('aihuidi') #.startswith判断是否以'aihuidi'开头,是的话返回True,不是返回False ret4 = a4.startswith('my',11,13) print(ret4) ret4 = a4.endswith('h') #.endswithh判断是以'h'结尾,是的话返回True,不是返回False print(ret4) #寻找字符串中的元素是否存在 ret5 = a4.find("is",8,10) print(ret5) #如果存在返回找到的元素的索引,找不到返回-1 ret6 = a4.index("is",8,10) #如果存在返回找到的元素的索引,找不到报错 print(ret6) #.split 以什么分割,最终形成一个列表,然而此列表不含有这个分割的元素 ret7 = 'title,Tilte,atre,'.split('t') print(ret7) #format的三种使用,格式化输出 res='{} {} {}'.format('aihuidi',19,'hhh') res1='{2} {0} {1}'.format('aihuidi',19,'hhh') res2='{name} {age} {your}'.format(your='hhh',age='19',name='aihuidi') print(res) print(res1) print(res2) #strip用于移除字符串头尾指定的字符,注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。 name = '*aihuidi**' print(name.strip('*')) #去除首尾的* print(name.lstrip('*')) print(name.rstrip('*')) #replace字符串中的 old(旧字符串) 替换成 new(新字符串) name = 'aihuidi hhhh is shi ge ddddd aihuidi' print(name.replace('aihuidi','你是',1)) #把'aihuidi'替换成'你是' #is系列 name = 'aihuidi678' print(name.isalnum()) #字符串由字母或数字组成的 print(name.isalpha()) #字符串只由字母组成 print(name.isdigit()) #字符串只由数字组成
2.3、元组(tuple)
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")
2.4、列表(list)
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以 [] 括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
list = ['aihudi',233,(5,6,'hhh'),[7,8,'dddd'],{'nnnn'}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素,
而且列表是有序的,有索引值,可切片,方便取值。
#增
list = ['aihuidi',1,6,8,'hhhh',9] list.insert(0,55) #按照索引去增加 list.insert(2,66) list.append('mmm') #增加到最后 list.extend(['q,f,b']) #迭代的去增 list.extend('jjjj') print(list) #删 li = ['hhhh','nnnn',1,6,8,'add'] ll = li.pop(1) #按照位置进行删除,有返回值,"返回的就是你所删除的那个" print(ll) del li[1:4] #可以按位置删除,也可以切片删除没有返回值 print(li) li.remove('add') #按照元素进行删除,没有返回值 print(li) li.clear() #清空列表 #改 lll = [2,4,6,8,10,'aihuidi','a'] lll[0] = 12 lll[5] = 'hhhhh' lll[2:4] = ['b','n'] print(lll) #查 切片去查,或者循环去查。
其他一些操作用法
#count用法:计算或 统计某个元素出现的次数 aaa = ["a","b","a","k","e"] print(aaa.count("a")) #index用法:从列表中找出某个值第一个匹配项的索引位置 print(aaa.index("k")) #sort用法:用于在原位置对列表进行排序 bbb = [3,5,1,4,2] bbb.sort() print(bbb) #reverse用法:将列表中的元素反向存放 bbb.reverse() print(bbb)
2.5、字典(dict)
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。
字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典的语法:
#key-value info = { 'stu1': "aihuidi", 'stu2': "hhhh", 'stu3': "dddd", } print(info) print(info["stu1"])
基础使用:
info = { 'stu1': "aihuidi", 'stu2': "hhhh", 'stu3': "dddd", } # print(info) # print(info["stu1"]) #增加 info["stu4"] = "laili" print(info) #修改 info["stu1"] = "爱辉弟" print(info) #删除 info.pop("stu1") print(info) #标准化删除方式 del info["stu2"] print(info) #另一种删除方式 info.popitem() #随机删除 print(info) #查 info1 = {'stu01': 'aihuidi', 'stu02': 'zhidao','stu03': 'hoade'} value = info1['stu02'] #有就返回值,没有就报错 value1 = info1.get('stu06',"没有") #有就返回对应的值,没有就返回设定的值''没有'' print(value) print(value1)
字典的循环
#字典的循环 dic = {"name": "aihuidi","age":19,"nono":"aiai"} for key in dic: print(key) for item in dic.items(): print(item) for key,value in dic.items(): print(key,value)
其他操作
item = dic.items() print(item,type(item)) # dict_items([('name', 'jin'), ('sex', 'male'), ('age', 18)]) <class 'dict_items'> # 这个类型就是dict_items类型,可迭代的 keys = dic.keys() print(keys,type(keys)) # dict_keys(['sex', 'age', 'name']) <class 'dict_keys'> values = dic.values() print(values,type(values)) # dict_values(['male', 18, 'jin']) <class 'dict_values'> #同上
输出结果如下:
2.6、集合(set)
集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的。
以下是集合最重要的两点:
- 去重,把一个列表变成集合,就自动去重了
- 关系测试,测试两组数据之前的交集、差集、并集等关系
原文链接:https://www.cnblogs.com/aihuidi/p/10424859.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Python 不同列表时间测试
下一篇:json文件转换成excel
- python3基础之“术语表(2)” 2019-08-13
- python_0基础开始_day07 2019-08-13
- 【Python】语法基础 | 开始使用Python 2019-08-13
- Python基础总结之初步认识---class类的继承(终)。第十六天 2019-08-13
- python3基础之“小练习(3)” 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash