python基础数据总结

数字型数据类型

数字型数据基本知识

  • int(整数)

    • 整数包括正整数,负整数和零
  • float(浮点型)

    • 浮点数位带小数点的数字
  • complex(复数)

    • 复数由实部和虚部构成(如a+bj,a为实部,b为虚部,j为虚数单位j2=-1)
    comp=1+2j
    print(comp.real) #获取实部(结果为浮点型)
    print(comp.imag) #获取虚部(结果为浮点型)
  • bool(布尔)

    • 布尔(boolean),又叫逻辑,包括True和False,用于逻辑判断,这是一种特殊的整数类型,True可以用1表示,代表真;False可以用0表示,代表假
算术运算符
运算符 中文名称 功能描述
+ 两数相加
- 两数相减
* 两数相乘
/ 两数相除
// 整除 取两数相除的整数部分
% 取余 取两数相除的余数
** 进行幂计算

进制

  • 二进制

    • 只用0或1表示的数,二进制的基数为2,遵循逢二进一的原则,用0b开头表示二进制(早期的python不支持0b开头的二进制表示方式)
    • 在底层语言中,机器码就是二进制码,所以使用二进制码在计算机中执行速度最快
    a=0b0001	#定义一个二进制数据
    b=bin(16) #将十进制16通过bin()方法强行转化为二进制
    print(a)
    print(b)
  • 八进制

    • 用0到7表示的数,八进制的基数为8,遵循逢八进一的原则,用0o开头表示八进制
    a=0o0007	#定义一个八进制
    b=oct(16) #将十进制16通过oct()方法强行转化为八进制
    print(a)
    print(b)
  • 十进制

    • 用0到9表示的数,十进制的基数为10,遵循逢十进一的原则,直接用数字不加前缀表示十进制
    • 十进制是对于我们比较友好且常用的进制,我们平常定义的整数都是十进制(如18,90等)
  • 十六进制

    • 用0-9,a,b,c,d,e,f表示的数,十六进制的基数为16,遵循逢十六进一的原则,用0x开头表示二进制
    a=0x00e9	#定义一个十六进制
    b=hex(16) #将十进制16通过hex()方法强行转化为十六进制
    print(a)
    print(b)
二进制运算符
运算符 中文名称 功能描述
& 位与 a&b:将a与b的每一位一一相加,对应位全为1结果为1
| 位或 a|b:将a与b的每一位一一相加,对应位只要有一个1结果就为1
^ 位异或 a^b:将a与b的每一位一一相加,对应位不同就为1,相同则为0
~ 位取反 ~a:先将二进制a+1,然后取反,即-(a+1)
<< 左移 a<<n:将二进制a全部左移n位,右边低位补0
>> 右移 a>>n:将二进制a全部右移n位,左边高位补0

字符串数据类型

字符串基础知识

  • 字符串是用' '," "或'" "'括起来的任意字节的字符
  • 字符串的序号
    • 正向递增序号:从左到右为:0~n
    • 反向递增序号:从右到左为:-1~-(n+1)

字符串数据操作方法(增 查 改)

  • 增:只能合并(使用加号+),不能在其他位置添加

    s=s+'world'	#加号为合并增加
    print(s)
  • 查:可以通过索引或切片的方法

    • 索引:字符串[m],但m不能超出字符串的长度,即m<len(s)
    • 切片:字符串[m:n:k],根据步长k对字符串取[m,n),m,n,k可以采取反向序号
    #索引
    s='hello'
    print(s[1],s[2],s[0])
    #切片
    print(s[:])
    print(s[1:3:2])
    print(s[-1:-4:-1])
  • 改:不能通过下标进行修改,只能通过切片合并的方式进行修改

    s='hello'
    s=s[:1]+'i myfriend' #切片加合并的方式进行字符串的修改
    print(s)
  • 字符串处理函数

    del(x):x可以是字符串,数字,集合,列表,元组,字典,类等
    len(str):返回字符串长度
    str(x):将x转化为字符串
    chr(u):u为unicode编码,返回对应的字符
    ord(x):x为字符,返回unicode编码
  • 字符串常用处理方法

    str.upper()|str.lower():将字符串中的字符全部变为大写|小写 *****
    str.split('x'):将'x'字符的左右切开,返回一个列表 *****
    str.strip([char]):[char]可选,一般不选:主要用于去除字符串str首尾的空格以及转义字符 *****
    str.join(str1):将str1中除首尾部分每个字符后都添加上str(如 ','.join('123') )
    str.count(x):返回字符串x在字符串str中的次数
    str.replace(old_str,new_str):用new_str置换掉str中的old_str
    str.center(width[,fillchar]):将字符串长度修改为width长,str居中,剩余部分可加填充物fillchar
    str.capital():字符串首字母大写,其余小写
    str.swapcase():字符串中大小写交换
    str.title():字符串中每个单词的首字母大写
    str.find(char):通过char找下标,如果找到了就返回下标,如果没找到就返回-1
    str,index(char):通过char找下标,如果找到了就返回下标,如果没找到就报错

集合数据类型

集合基础知识

  • 集合的定义

    • 是多个元素的无序组合,是容器型数据类型之一
  • 集合的特点

    • 容器型数据类型

      • 集合,元组,列表,字典
    • 集合数据间无序且唯一
    • 集合中数据是无序的,不能是不可变数据类型,但集合本身却是可变数据类型
      • 可变数据类型:集合(set),列表(list),字典(dict)
      • 不可变数据类型:int , float , bool , str , tuple
  • 集合的作用

    • 数据去重
    • 关系测试(交差并补)
      • 交:S&T,返回一个集合,包含S与T中相同的元素
      • 差:S-T,返回一个集合,包含在S中但不在T中的元素
      • 并:S|T,返回一个集合,包含S与T中的所有元素
      • 补:S^T,返回一个集合,包含菲S与T中的元素

集合元素操作方法(增,删)

  • s.add(x):向集合中增加元素x
    s.update(s1):向集合s中更新s1元素,有相同就只保留一个
  • s.pop():取集合s中的第一个元素,同时更新集合s,若s为空会报错
    s.discard(x):删除集合s中的x元素,x元素不在集合内也不会报错
    s.remove(x):删除集合s中的x元素,x元素不在集合内会产生KeyError异常
    s.clear():移除s中所有元素
  • 其他

    s.copy():创建一个s集合的副本
    len(s):返回集合s的长度 *****
    set(x):将x转换为集合
    del(s):删除集合s *****
    x in s|x not in s:判断x在不在集合s中,在返回True,不在返回False

元组数据类型

元组基础知识

  • 元组定义:元组是序列的一种扩展,可以存储各种数据类型,用( )表示元组的开始和结束,元素之间用' , '分隔,元组只能查看其中的元素,不能增删改其中元素,可以存放比较重要的不能轻易被修改的数据

    • 若元组中只有一个元素且没有逗号,那么该元组的类型就是元素本身的数据类型

元组元素操作方法(查)

  • 查:通过下标去查找

    t=(1,2,3,'yzh')
    print(t[-1]) #通过下标查看
    print(t[1:]) #通过切片查看
    for i in t: #通过循环查看
    print(i)
  • 其他

    #合并元组
    t1=t1+t2:将t2的数据增加至t1处
    #删除元组
    del(t):删除整个元组
    #函数和方法
    tuple(x):将x转化为元组
    type(t):返回元组的类型
    len(t):返回元组的长度
    max(t):返回元组中最大的数,只支持同一种数据类型的数据按ascii码比较
    min(t):返回元组中最小的数,只支持同一种数据类型的数据按ascii码比较
    t.index(x):返回元组t中x的下标
    t.count(x):返回元组t中x的数量

列表数据类型

列表基础知识

  • 列表的定义:列表是一种可变的数据类型,可以存放各种数据类型数据,用[ ]表示,元素之间用 ' , '隔开,每个元素下都提供了一个对应的下标

列表元素操作(增 删 查 改)

  • #增加单值
    ls.append(x):在列表ls最后一个元素后增加元素x
    ls.insert(index,x):在列表ls下标index处插入一个元素x
    #增加多值
    ls.extend(ls1):将ls1中的数据增加至ls,不会改变ls本身的内存地址
    ls=ls+ls1():将ls1中的数据增加至ls,会改变ls本身的内存地址
  • ls.pop():从列表尾取出一个元素,更新列表
    ls.remove(x):从列表中删除第一次出现的x
    ls.pop(index):删除下标index处所在的元素
    ls.clear():清除所有元素
  • #通过值寻找值得下标
    ls.index(x[,start[,stop]]):start,stop可选,若x在列表ls中就返回x的下标,若没有就返回ValueError
    x in ls:判断元素x是否在ls中,在就返回True,不在就返回False
    #通过下标寻找对应得值
    ls[m:n:k]:通过下标去查看值
    for i in ls:循环查看
  • ls[m:n:k]=key:通过下标寻找值再修改,注意key中得值必须要与修改的值数量一致
  • 其他

    list(x):将x的数据类型转化为字符串数据类型
    ls1=sorted(ls):对ls中的元素进行排序,同时不改变ls的原本排序
    ls.copy():对ls进行副本复制
    ls.sort(key=None,reverse=False):对ls中的元素进行排序,但会不改变ls的内存地址。其中key可选,reverse=False时,ls中的元素按从小到大排序,当reverse=True时,ls中的元素按从大到小排序
    ls.reverse():将ls中元素进行翻转
    ls.count(x):统计ls中x元素的个数

字典数据类型

字典基础知识

  • 字典的定义:字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存,中间用 : 分隔。字典是可变数据类型,在Python3.5版本之前,字典是无序的,3.6以后是有序
  • 字典的特点
    • 唯一性:字典中的键必须唯一,若有相同的只会保留最后一个键值对元素
    • 不可变性:字典中的键是不可变数据类型,字典中的值可以为任意数据类型
  • 列表与字典的对比
    • 列表

      • 优点

        • 能承载多种数据类型,操作方法多,本身灵活,可以存储大量的数据类型
      • 缺点
        • 如果数据量大的话,他的查询速度比较慢
        • 列表只能按照顺序存储,数据与数据之间关联性不强。
    • 字典
      • 优点

        • 操作方法多,本身灵活,可以存储大量映射(关联)型数据类型
        • 查询速度快
      • 缺点
        • 内存消耗大

字典元素操作方法(增 删 查 改)

  • d[key]=value:当为key字典中没有的值时,字典增加元素
    d.setfault(k[,v]):k为新增的键,v为新增的值(v可选),当字典d中有k键时,会返回k对应的值
  • d.pop(k[,v]):k为要删除的键,v为对应的值(v可选),当k值不存在时,会返回v值
    d.popitem():随即取出一对键值对(3.6版本取出最后一对键值对),以元组类型返回,同时更新字典
    d.clear():删除字典中的所有键值对
  • #按键查找
    d[key]:通过字典d的键key来寻找对应的值
    d.get(k[,v]),k为要查看的键,v为对应的值(v可选),若k存在,则返回对应值,若不存在,则返回v值
    #按循环查找
    d.keys():以列表的形式返回所有键
    d.values():以列表的形式返回所有的键对应的值
    d.items():返回键值对列表,键值对以元组的形式返回
  • d[key]=value:key为字典d中存在的键,将key对应的值修改为value
    d.update(d1):将d1中的键值对增至d,若键重复则保留最后一个相同键值对
  • 其他

    del(d):删除整个字典d
    key in d.keys():检查key是否在字典的键中,在就返回True,不在就返回False
    d1=d.copy():复制一个d的副本
    d.fromkeys(iterable[,value]):生产制定的键值对,键为iterable中的元素,对应的值都为value

运算符优先级

身份运算符

运算符 描述
is 用于判断是不是引自一个对象(内存地址是否不一致),一致返回True,不一致返回False
is not 用于判断是不是引自一个对象(内存地址是否不一致),不一致返回True,一致返回False

成员运算符

运算符 描述
in 如果在指定序列中找到该值,就返回True,否则返回False
not in 如果在指定序列中没有找到该值,就返回True,否则返回False

逻辑运算符

运算符 中文名称 描述
and 只有当两侧逻辑值都为1时结果才为1,其他情况为0
or 只有两侧逻辑值有一个为1结果就为1
not 对逻辑值取反

比较运算符

运算符 中文名称 描述
> 大于 x>y;x的值大于y就返回True,否则返回False
< 小于 x<y;x的值小于y就返回True,否则返回False
== 等于 x==y;x的值等于y就返回True,否则返回False
!= 不等于 x!=y;x的值不等于y就返回True,否则返回False
>= 大于等于 x>=y;x的值大于等于y就返回True,否则返回False
<= 小于等于 x<=y;x的值小于等于y就返回True,否则返回False

赋值运算符

运算符 中文名称 描述
= 简单赋值 ——
+= 加法赋值 x+=y等于x=x+y
-= 减法赋值 x-=y等于x=x - y
*= 乘法赋值 x* =y等于x=x *y
/= 除法赋值 x/ =y等于x=x /y
//= 取整赋值 x// =y等于x=x //y
**= 取幂赋值 x** =y等于x=x **y
%= 取余赋值 x%=y等于x=x %y
<<= 左移位赋值 x<<=m等于x=x <<m
>>= 右移位赋值 x>>=m等于x=x >>m
&= 位与赋值 x&=y等于x=x &y
|= 位或赋值 x|=y等于x=x |y
^= 位异或赋值 x^=y等于x=x ^y

优先级表

优先级顺序 运算符 运算符名称
1 ** 幂运算
2 ~ + - 按位反转 正数符号,负数符号
3 * / // % 算术运算符的乘 除 整除 取余
4 + - 算术运算符的加 减
5 << >> 位运算符的左移 右移
6 & 位运算符的与
7 | ^ 位运算符的或 异或
8 == != <= >= < > 比较运算符
9 = += -= *= /= //= %= **= 赋值运算符
10 is is not 身份运算符
11 in not in 成员运算符
12 and or not 逻辑运算符

你想了解的python基础数据类型这里都有的更多相关文章

  1. Python基础数据类型-字符串(string)

    Python基础数据类型-字符串(string) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版 ...

  2. python基础数据类型考试题

    Python基础数据类型考试题 考试时间:两个半小时                      满分100分(80分以上包含80分及格) 一,基础题. 1,简述变量命名规范(3分) 2,字节和位的关系 ...

  3. 1--Python 入门--Python基础数据类型

    一.Python基础语法 初次使用Python,首先要明确三点: Python的标识符(例如变量名.函数名等),可用字母.数字和下划线构成,不能以数字开头,且区分大小写. Python对于缩进敏感.在 ...

  4. 老男孩Python==基础数据类型考试题

    转载 # Python基础数据类型考试题 # 考试时间:两个半小时 满分100分(80分以上包含80分及格) # 一,基础题. # 1, 简述变量命名规范(3分) # 1.变量由字母.数字.下划线任意 ...

  5. python基础数据类型1

    python基础数据类型1 part1: ''' ''': 三个单引号用于换行的字符串 字符串可以相加(拼接)相乘(重复) 在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代 ...

  6. Python基础数据类型-列表(list)和元组(tuple)和集合(set)

    Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...

  7. python 基础数据类型之list

    python 基础数据类型之list: 1.列表的创建 list1 = ['hello', 'world', 1997, 2000] list2 = [1, 2, 3, 4, 5 ] list3 = ...

  8. Python基础数据类型-字典(dict)

    Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...

  9. Python基础数据类型题

    Python基础数据类型 题考试时间:三个小时 满分100分(80分以上包含80分及格)1,简述变量命名规范(3分) 1.必须是字母,数字,下划线的任意组合. 2.不能是数字开头 3.不能是pytho ...

随机推荐

  1. 定了,这个vue.js开源项目,面试时,一定会考问

     因为现在的网店,都是用的商城系统, 而实体店都是入座后,扫码打开网上商城进行选购(餐饮,超市等),所以,vue.js迅速开发网上购物商城系统成为了香饽饽, 本人开源2020年4月开发的购物商城系统, ...

  2. python的sqlalchemy框架

    先看一下sqlalchemy框架中的映射,sqlalchemy一共有三种映射方式:传统映射(classic).现代化映射(modern).自定义映射.在这里,只为大家讲一下classic映射和mode ...

  3. Java的循环语句

    一.while 循环 while(循环条件){ 循环操作语句 } * 循环3要素: 变量的初值.变量的判断.变量的更新 * 缺少循环变量的更新,循环将一直进行下去 public class Whlie ...

  4. BlackNurse攻击:4Mbps搞瘫路由器和防火墙

    研究人员宣称,最新的知名漏洞BlackNurse,是一种拒绝服务攻击,能够凭借仅仅15到18Mbps的恶意ICMP数据包就将防火墙和路由器干掉. 该攻击会滥用Internet控制报文协议(ICMP)第 ...

  5. Android 工程师眼里的大前端:GMTC 2018 参会总结

    本文由玉刚说写作平台提供写作赞助 原作者:两位低调的 Android 高手 版权声明:本文版权归微信公众号玉刚说所有,未经许可,不得以任何形式转载 概述 2018年的GMTC大会于6月22号在北京刚刚 ...

  6. 一份中外结合的 Machine Learning 自学计划

    看了Siraj Raval的3个月学习机器学习计划的视频,感觉非常好,地址:https://www.youtube.com/watch?v=Cr6VqTRO1v0 结合一些我们学习中的经验得出一份Hy ...

  7. 求x>0时,y=x^3-6x^2+15的极值

    解: 当x→∞时,y也→∞,所以y没有最大值. y=x3-6x2+15=-4*(x/2)*(x/2)*(6-x)+15 而根据几何平均数小于等于算术平均数的定理,(x/2)*(x/2)*(6-x)在x ...

  8. Norwegian Wood

    0 前言 <挪威的森林>是村上春树很有名的一部小说,但我想大多数人阅读的时候都只是把书名当作一个符号,而不是作为故事去追究. 我国台湾知名文学评论家杨照先生说过:村上的书里有太多太多典故, ...

  9. python(数据类型)

    一.基本数据类型 (1)numbers 数字 整型 int a = 1 print (type(a)) 长整型 long python3.x 中无此类型 >>> 2 ** 100 1 ...

  10. GoF23:建造者模式

    目录 概念 角色分析 实现方式 方式一 角色分析 代码编写 方式二 角色分析 代码编写 总结 优点 缺点 应用场景 建造者也抽象工厂模式的比较 ​ 建造者模式也属于创建型模式,它提供了一种创建对象的最 ...