为了账号安全,请及时绑定邮箱和手机立即绑定

python-1数据类型

标签:
Python

一、     数据类型

1.字符串 str

ps:单双引号皆可包裹字符串;”+”可以拼接两个字符串

字符串的内置函数:  name=”monDay”

注意:以下函数都不会改变原字符串,而是生成新的拷贝

name.capitalize()  # (Monday)

#字母大写,其余字母小写(若首字符为空格,则第一个字母不会大写)

name .lower()  #将全体字符串写 (monday)

name .upper()  #将全体字符串写 (MONDAY)

name .swapcase() #大写转换为小写,将小写转换为大写 (MONdAY)

name .zfill(10)   # (0000monDay)

#定义字符串长度,若长度不足10,用0补齐在前面; 若长度足够,则无变化

name .count('a')  # 统计a出现的次数,返回1,若a不存在,(返回0)

name .index(‘b’)   # 索引元素位置,找不到元素会导致程序报错 (报错)

name .find(‘a’)  # 索引找不到元素会返回-1  (4)

trip()  #去掉开头、结尾的指定元素

lstrip()  #去掉左边(开头)的指定元素

rstrip()  #去掉右边(结尾)的指定元素

replace(old,new,num)  #替换元素,替换次数,次数可选(不写次数替换全部)

person.update(user)   # 给dict添加更新key-value,参数userdict

books.get(key[,   value]) #获取字典key对应的value,若key不存在,会返回默认值None;用books[key]获取value,若key不存在,会报错!

对比update:有key则修改,无key则更新

setdefault:有key则返回key值,无key则添加key到dict中,返回新value

get获取指定key的值,有则返回,无则返回给的值,不会添加到dict中!!


list(books.keys())   # 获取dict中的key,得到一个伪列表(无法修改、索引、使用函数),结合list使用,可以得到一个真列表

list(books.   values()) #取dict中的value,用法同keys



books.clear()   # 清空字典,和列表的clear功能一样,返回None

books.pop(‘C++’)    # 删除指定key-value,返回value,若key不存在会报错

del   books #直接删除整个字典

in与not in, 判断dict中是否有指定的key



4.集合 set

无重复数据,无序没有索引,可以通过set对list去重

用来处理字符串、列表的一种临时类型不适合存储内容!!!

两种写法:(1) a_set={1,2,4}    (2) b_set=set([1,2,3])

a_set.add(‘Mon’)    #集合无序,所以加入元素后顺序不定(可能不在末尾)

a_set.update(iterable)   #一次添加多个元素iterable:集合/列表/元组/字符串

set.remove(item)   删除set中的元素,不存在会报错!!!无返回值 item是元素不是索引

a_set.clear()  #清空set

del   a_set  #不能通过索引删除指定元素!

a.difference(b)    #返回属于a且不属于b的元素组成的集合(a的差集)

a.intersection(b,c)    #括号中可以有多个set,以此返回a与b、c的交集.返回的是集合,可以通过list(a.intersection(b))将其变为一个列表

a.union(b,c)   #a、b、c两个集合所有的不重复元素 → a bc的并集

a.isdisjoint(b) #判断两个集合是否不包含相同元素,有返回false,无返回true

5.元组tuple

元组创建后不能修改添加,因此元组占用资源比列表小

name=tuple(('Jack','Rose'))

sex=('boy','gril')

TD=(900,)  #只有一个元素时,要带逗号,否则不会认为这是一个tuple

tuple_empty=()  #空元组

name=name+sex  #这属于创建一个新的元组代替旧的,不属于修改

6.各类型间转换

字符串→数字:字符串必须全是数字,不能有符号、字母 

字符串整形:int('字符串变量')  字符串浮点数:float('字符串变量')

数字→字符串:无要求    str(数字变量)

字符串→列表:str.split(sep=none,maxsplit) #切割字符串,返回一个list

 sep默认为空格,maxsplit值无上限(若省略则寻找所有分隔符进行分隔)

b   ='a,b' b.split(',') #[‘a’,’b’]  c ='a|b|c|d' c.split('|',1)    #[‘a’,’ b|c|d ’]

d='a|b|c|d'   d.split('|',2)    #[‘a’,’ b’,’c|d ’]  sep不能是空字符串!!

列表→字符串:'sep'.join(interable)  #用sep拼接interable返回一个str

test1 = ['a', 'b', 'c'] test_str='|'.join(test1)  #'a|b|c'

列表、元组 集合 set() 

列表、集合 元组 tuple()  元组、集合 列表 list()



三种格式化的方法:

1.在字符串中用%s表示要格式化的字符,打印时需要 % 连接

2.在字符串中用{}表示要格式化的字符,打印时使用 字符串.fomat(参数1,参数2,……)

3.定义格式化的字符串时前面带一个f,即 f'格式化字符串',但里面的内容需要提前定义好,打印格式化字符串是和打印普通变量一样



2.列表 list

列表是各种数据结合,长度无限制,但最好别太长,列表嵌套列表

两种写法:(1) presents=list(['炸锅', '按摩仪'])  (2)week=['Monday','other']

列表的内置函数:   books = [‘C++’]

books.append('python')   # 向列表中添加元素到末books = [‘C++’,’ python’]

books.insert(0,'C')  # 向列表中指定位置添加元素 books =   ['C' ,‘C++’]

books.count(‘C’)   #函数,统计列表中元素的数量,若为返回0,此次返回1

books   .clear() # 清空列表中的所有元素,变为一个空列表[]

books   .remove(‘C++’)  #删除列表中的指定元素,若不存在会报错,

有多个元素时,第一个,是对原list的操作,而不是返回新list

del   books  #删除整个变量

books.reverse()  # 颠倒列表顺序

books.sort()  # 排序,(列表中的类型必须相同,才能排序)

books.copy()    # 拷贝,但内存地址不同,返回一个新列表

books.extend()  #将其他list、tuple中的元素一次性导入到当前列表

相同元素也不会覆盖,导入后是普通元素,不是列表中嵌套列表

索引: 对单个元素的访问:从左开始,从0开始

字符串的索引与列表相同,不能删除修改字符串的元素,但list可以

切片:对一定范围内元素的访问 [3:8]    即第4~8个元素 左闭右开



3.字典 dict

字典中的key是唯一的  eg.  person   = {'name': 'Lisa', 'age': 25}

key:value键值对,key不支持列表,value支持所有类型

字典没有索引,用key索引    eg.  person ['name']='Lily' 

若有name,则是对name的value的修改,若无name,则会新增'name':'Lily'

字典的内置函数

person.setdefault('sex','girl')    #获取key对应的value,返回value

若key不存在,会添加key-value;若存在,则gril无用



Python


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消