基础数据类型
2018-01-10 16:48:10 23 举报
AI智能生成
python的基础类型思维导图
作者其他创作
大纲/内容
list列表[]可变不可哈希数据类型
增
append在列表最后整体的添加
<pre><span>insert按照索引去增加</span></pre>
<pre><span>extend迭代的去增加</span></pre>
删
pop按照位置删除,有返回值
<pre><span>remove按照元素去删除</span></pre>
del可删除真个列表,按照索引去删除,可切片
clear清空列表
改
通过索引直接赋值改
切片改,首先删除被切片的数值,接着赋值几个数值就会增加几个数值
查
可切片或者循环查询
sort()正向排序,sort(reverse=True)反向排序,排序只能用于int类型,否则报错
reverse反转排序,排序只能用于int类型,否则报错
count统计某个元素出现的次数,len获取数据的长度
index查找第一个匹配元素的索引
join列表改成字符串,所有的可迭代对象都可以用join(必须放参数哦),用法‘我是字符串,也是分隔符’.join,返回新的值是字符串
range(里面放索引位置,可切片步长),可被看为一个纯数字的列表
在循环一个列表时,最好不要执行删除操作,因为这样会使列表索引发生改变,从而导致报错
dict字典{},可变不可哈希数据类型
字典的定义
<p><span>字典(dict)是一个存放无序的键值映射(key/value)类型数据的容器字典的键可以是数</span></p><p><span>字、字符串或者是元组,键必须唯一。在Python中,数字、字符串和元组都被设计成不可变类型,而常见的列表以及集合(set)都是可变的,所以列表和集合不能作为字典的键。键可以为任何不可变类型</span></p>
字典的特点
字典无序,最新的3.6版本好像是有序的
必须是不可变可哈希的数据类型组成
由一一对应的key和value组成
<pre>增</pre>
通过key直接赋值进行增加,如果有键则值覆盖,没有则添加新的 dic[PY9][key] = 6
setdefault(key,value),用法较少,有key不做任何改变,没有才添加
<pre>删</pre>
pop(key)通过key去删除,有返回值。可pop(key,None)来设置返回值 *****
popitem应该是随机删除,有返回值,返回值为删除的键值,py3.6删除最后一个
clear清空字典
del删除字典,也可以删除key
<pre>改</pre>
通过key直接赋值进行增加,如果有键则值覆盖,没有则添加新的
update用法:dic.update(dic2),意思是把dic2当中的键值对覆盖并且添加到dic当中
查
dic.keys()查键,dic.values()查值,dic.items()查键值对
dic.get('name'),找不到name会返回None,也可以dic.get('name',我是个返回值)
print(dic['name'])直接取name对应的值,找不到会报错
字典的循环for i in dic.keys(),dic.velue(),dic.items()
fromkeys dic=dict.fromkeys([1,2,3],'alex'), [1,2,3]是key位,后面是value位,用这种方法的value是同一个内存地址,对这样的增删改查结果同时改变
bool布尔值不可变可哈希数据类型
True
False
float浮点数,就是小数,不过小数点不固定
有限循环小数
无限循环小数
for和while循环
for i in结构
搭配if条件
eli不满足if走这里
else都不满足走这里
while True结构
break终止循环
<span>continue终止本次循环,继续下面的循环</span>
range指定范围,生成制定数字,可切片步长,可以认为range是一个看不见的由数字组成的列表
str字符串‘’,可相加和相乘,不可变可哈希数据类型
<pre>*** capitalize首字母大写</pre>
<pre>*** swapcase大小写反转</pre>
<pre>*** title每个隔开的(用数字或者特殊字符)单词的首字母大写</pre>
<pre>** center居中和空白填充</pre>
<pre><span>**** count数字符串元素出现的个数,可切片</span></pre>
* /t前面的补全
<pre><pre><span>* expandtabs默认将Tab键变为8个空格</span></pre></pre>
<pre>*** startswith 判断是否以...开头</pre>
<pre><span>*** endswith 判断是否以...结尾</span></pre>
<pre><span>*** find</span><span>寻找字符串中的元素(只找第一个)是否存在,找到返回索引,找不到-1,可切片</span></pre>
*** index<span>返回的找到的元素的索引,找不到报错。</span>
<pre>***** split 以什么分割,最终形成一个列表此列表不含有这个分割的元素,字符串转换成列表的方式<br></pre>
<pre>***** forma高大上的格式化输出(我可以添加索引,也可以添加能传参数的元素)相当于%s<br></pre>
<pre><span>***** strip去除两边空格</span></pre>
<pre><span>***** lstrip移除左边空格</span></pre>
<pre><span>***** rstrip移除右边空格</span></pre>
<pre>**** replace替换某个字符串,默认替换全部要替换的元素,也可以后面加次数,用法replace(‘旧元素’,‘新元素’,次数)<br></pre>
*** upper全部大写
*** lower全部小写
***** 公共方法之:len()查询字符串长度,在循环当中只len一次值
typle元祖(),不可变数据类型
元祖为只读列表,可查询,可切片
del可删除整个元祖
两个元祖相加可拼接成新的元祖
len计算元祖元素个数
max返回元祖元素最大值
min返回元祖元素最小值
cmp比较两个元祖元素
如果元组里面只有一个元素,且不加逗号,那么此元素该是什么类型就是什么类型
set集合{},可变数据类型
集合本身可变,内部元素不可变
把列表变为集合,原列表内重复的元素自动去重
增
add随机增加
<pre><span>update迭代随机增加</span></pre>
删
<pre><span>remove按元素删除</span></pre>
clear清空
del删除集合
pop随机删,有返回值
查
只能用for循环查
交集,用intersection或者&
并集union或者|<br>
差集difference或者- set1.difference(set2),结果剩下set独有的<br>
反交集symmetric_difference或者^ 两个集合相同的数据去掉<br>
超集issuperset或者> 返回波尔值<br>
<pre>子集issubset或者< 返回波尔值<br></pre>
frozenset让集合变为不可变数据类型
查只能用for循环查
set有去重概念,把别的数据变为集合之后打印集合就能去重,并集也是去重
int整数,<span>bit_length() 当十进制用二进制表示时,最少使用的位数</span>
深浅copy
浅copy
deepcopy深copy
<span>enumerate枚举,对于可迭代的,可同时获得索引和值</span>
复数complex 实数和虚数的结合就是复数
实数
有理数
整数
分数
有限小数
无限不循环小数,例如π
无理数
无限不循环小数
虚数 j 只存在想象当中
0 条评论
下一页