python数据类型及使用方法_python 基本数据类型及方法

python的基本数据类型

1.字符串str

1.1作用

不可变类型。

主要是表示文本的数据类型,形容事物的属性。Python中最常用的类型之一。

1.2方式

主要有四种方式:

'文本内容'。用单引号将内容包括。主要适用于单行。

"文本内容"。用法同单引号。主要适用于单行。

‘’‘文本内容’‘’。当文本内容较多时可使用,主要适用于多行。

str()。也可将其他数据类型转化为字符串类型。

Tip:在使用单、双引号时,切记不可在单引号中使用单引号、双引号中使用双引号。如需使用,可交叉使用。

# 1.单引号

print('这是一个单引号。')

# 2.双引号

print("很明显,这是一个双引号。")

# 3.三引号

print("""

花开堪折直须折,

莫待无花空折枝。

兄弟,看到喜欢的妹纸就要去追啊!!

""")

# 4.不能在单引号之中再次使用单引号,双引号也一样,如果你这样使用,电脑会懵逼。

print("这个是双引号'要是使用就要交叉使用',所以这里面有一个单引号")

1.3 基本操作

方法名

意义

count(x,start,end)

在范围内统计x出现的次数

len()

获得字符串的长度

endswith(x)

字符串是否以x结尾,返回True或者False

strip()

去掉字符串开头结尾的空格

capitalize()

首字母大写

title()

将字符串每个单词都大写开头

join(str)

将两个字符串进行拼接

encode()

将字符串编码成对应的编码

split(x)

将字符串以x为分割点分成列表

partition(x)

字符串以x为点将字符串分成三部分

index(X)

获取x的索引,没有则报错

find(x)

给出x的索引值,没有则返回-1

upper()

将字符串都变成大写

lower()

将字符串变成小写(支持ascii码)

casefold()

同上,但是可将不同形式的语言

isdigit()

判断字符串是不是全是数字,返回true或False

center(length)

将字符串填充到固定长度,且将原内容居中

replace(old,new)

用new来替换old

str.maketrans(a,b)

将a,b的ascii码编号形成k:v的字典

2.整型int

在Python2 中,超出固定长度的整型称为长整型,但是在Python3中,只有整型的概念。这里只对整型进行学习,复数什么的我也不会,只能说说整型了。

2.1 作用

顾名思义,简单理解就是数学中的整数,记录事物的数学属性。

2.2 定义方式

主要有两种方式:

直接输入。不需要想字符串一样加引号,直接获得

int()。对纯数字不带小数点的字符串可以进行转化。

寻思了一下,好像也没找到什么具体的操作方法,直接进行相关操作就行了,但是要记得在用input得到用户的输入时,其类型属于字符串,如需使用,可对信息进行int()。

3.浮点型float

这个就更简单了,相当于在带小数点的数字。如果整型后面加上小数点,就变成了浮点型。

使用方法可以参考整型。但是记得,浮点型的英文简写是float。

其他的我就不记录了,这行就是凑字数的,省的显得我写的少。

4.布尔类型

布尔型主要有两个值:True和False。

4.1 作用

布尔类型主要用于条件判断。

4.2 定义方式

所有的值都有自己的布尔值,大家只需要记得什么代表False就行了。

False:0,None,空。

除了以上三个,其余则全部为真。

定义方式主要有两种:

直接得到。根据值代表的含义直接得到,比如0就是代表False。或者直接赋值tag=True

通过对比判断得到。如4>3就是True,4<3就是False。

4.3 应用

在语法结构中使用较多,如if和while的判断条件。

然后具体情况在之后的语法篇可能会分析一波。

5.列表list

可变类型,使用频率相当之高的数据类型,可以将列表当做一个收纳盒,将各种数据类型放进去,甚至是列表本身。还能非常简单的取出来,是不是很神奇?记得我学习的时候脑海里只剩下一句话python NB。话不多说,赶紧的开始旅程了。

5.1作用

按照顺序很方便地存放一些具有相同的某种联系的多个值,也能方便的取出。

5.2 定义方式

主要方式有两种:

直接定义。在[]内用逗号隔开不同的任意数据类型。

user_info = ["tom",18,["playing","learning"]]

利用list()。可以使用list()方法转为列表。

old_tuple = ("jerry",20)

new_list = list(old_tuple) # new_list = ["jerry",20]

5.3 应用方式

列表的使用比较广泛,同一个列表可以存放不同类型的数据类型。在使用中大都将一些具有某种相同联系的数据存放在一个列表里。当然其中的值也可以没有关系,但是切记

存不是目的,目的是方便地取

5.4 基本操作

5.4.1 查

列表是根据索引进行取值,按照列表内从左到右的顺序依次从0开始数。

# 1.列表索引,这两个列表里的值代表各自位置索引

test_list1 = [ 0, 1, 2, 3, 4] # 从左是从0开始数

test_list2 = [-5,-4,-3,-2,-1] # 从右是-1开始数

# 2.取值

# 2.1 可以利用索引取值。

test_list = ["tom",20,["play","learn"]]

# 取出"tom"

test_list[0]

# 取出20

test_list[-2]

# 取出"play"

test_list[2][0]

5.4.2 增

列表属于可变数据类型。在列表里增加内容有以下几种方法。

方法

意义

append(x)

在列表的末尾增加元素x。x可是任意数据类型,但只能增加一次

insert(索引,x)

将x元素添加到索引位置之前。

extend(list1)

将list1的元素添加到列表的末尾。两个列表合并为1个。

5.4.3 删

方法

意义

remove(x)

将x从列表内删除,如果没有该元素报错。不能像pop一样删除元素重用

pop()

没有索引就删除最后一个元素,有索引就删除对应的元素,可以将删除元素赋值重用

clear()

将列表内清空。

5.4.4 改

# 根据列表元素的索引定位到该元素,然后进行重新赋值。

test_list = ["tom",20,["play","learn"]]

# 将tom 改成jerry

test_list[0] = "jerry"

# 将"play"改为"sleep"

test_list[-1][0] = "sleep"

5.4.5 其他操作

方法

意义

index(x)

查到x元素在列表内的索引,如果x不存在,则报错

count(x)

得出x在列表内出现的次数

reverse()

列表元素反转排序

sort()

对元素进行正向排序,不同数据类型不恩能够进行正向排序(操作不可逆)

sorted(list)

对列表进行排序,但是不会更改原有的元素排列

对列表进行遍历,主要使用一种方式。

test_list = ["tom",20,["play","learn"]]

for i in test_list:

print(i)

6 元祖tuple

不可变数据类型,元祖一旦定义之后,就不能对其内容进行修改,与列表这个多变的渣男不同。

6.1 作用

效果与列表相同,但是不可修改。有特定的应用场景(也是很重要的)。

6.2 定义方式

元祖的表现形式是括号(),元祖内的元素也是用逗号隔开。但是记得,如果只有一个元素,务必要在该元素之后加一个逗号。(列表就不是这样)

# 1. 直接定义获得

test_tuple = ("tom",)

test_tuple1 = ("tom",20,["play","learn"])

# 2.利用tuple()方法转换列表

test_list = [1,2,3]

test_tuple = tuple(test_list)

6.3 基本操作

6.3.1 查

因为列表属于不可变类型。所以不可进行增、删、改。只可进行查询的操作。方法同列表

# 1.元祖索引,这两个列表里的值代表各自位置索引

test_tuple1 = (0, 1, 2, 3, 4) # 从左是从0开始数

test_tuple2 = (-5,-4,-3,-2,-1) # 从右是-1开始数

# 2.取值

# 2.1 可以利用索引取值。

test_tuple = ("tom",20,["play","learn"])

# 取出"tom"

test_tuple[0]

# 取出20

test_tuple[-2]

# 取出"play"

test_tuple[2][0]

6.3.2 其他操作

方法

意义

index(x)

查询x在元祖中的索引值,无x则报错

count(x)

统计x在元祖中出现的次数

7 集合set

同数学上的集合是一个概念。

7.1 作用

根据数学概念即可知其功能。

去重。在集合内没有完全相同的元素。

关系测试。可进行数学上的并、交、差运算。

7.2 定义方式

集合同列表、元祖差不多一样的定义方式,是在{}内元素用逗号隔开。只有一个元素不用逗号也是可以的。但是要记住的是,集合不能为空,空{}是一个字典。

# 1.使用{}直接定义,元素用逗号隔开

test_set = {"tom",20,["play","learn"]}

# 2.使用set()方法进行转换。

test_list = ["tom",20,["play","learn"],"tom"]

test_set = set(test_list)

# 会把重复的"tom"去掉

test_set = {"tom",20,["play","learn"]}

7.3 基本操作

集合属于可变类型,但是集合最重要的功能是进行去重和关系测试。由于集合是没有顺序的,且不像字典一样有Key值,导致并不能对集合内的元素进行查询。

7.3.1 天生去重

在集合内本身就没有相同的元素。即使你向集合内添加一个与集合内相同的元素,也是没有添加进这个元素的。

# 即使在定义的时候就将集合内的元素重复,但是打印时候,集合内这些元素依然只有一个。

test_set = {1,2,3,4,1,2,3,4}

print(tset_set)

test_set = {1,2,3,4}

7.3.2 增、删

功能

方法

意义

add(x)

将x添加到集合内

remove(x)

将x从集合内删除,没有则删除

pop()

对集合内的元素进行随机删除

7.3.3 关系测试

test_set1 = {1,2,3,4,"tom"}

test_set2 = {1,7,8,9,"tom"}

# 并集:union()

print(test_set1.union(test_set2))

# {1, 2, 3, 4, 7, 8, 9, 'tom'}

# 交集:intersection()

print(test_set1.intersection(test_set2))

# {1,"tom"}

# 差集:difference()

# 去掉集合2中与集合1相同的部分后剩余的元素

print(test_set1.difference(test_list2))

# {2, 3, 4}

其他方法我就不一一赘述了,也不常用,用的时候可以慢慢试试。我英语也不太好,那个太长了。

8 字典dict

无序可变数据类型。

字典的使用就是开启小装逼之路, 用了字典就会觉得立马不一样了,在用列表的时候可以试试直接用字典来,方便存取。

8.1 作用

Python中唯一内建映射类型,也是除列表之外最灵活的数据结构类型。

8.2 定义方式

字典外用花括号{}来包括元素,元素间是用 逗号 来隔离相邻的项,元素内部的用 key:value 来实现,前者代表的是key(key必须是字典内的唯一元素,不能重复)。后者则是value(value可以是任意数据类型,不需唯一)。两者之间用冒号代表。

key就相当于一个盒子的标签,你找到这个标签,就可以打开这个盒子看到里面的存放的value。

# 1.直接赋值定义得来

test_dict = {"key":"value","name":"tom"}

# 2.可以用dict()函数。=左边是key,右边是value

test_dict = dict(name = "tom",age = 18,list1=[1,2,3])

# 输出结果为 {'name': 'tom', 'age': 18,"list1":[1,2,3]}

8.3 基本操作

列表是以索引来查询元素的,字典则是以key来进行一系列操作的。

8.3.1查

test_dict = {"name":"tom","age":18,"hobby":["play","learn"]}

# 1.根据key来查询元素

# 取出"tom"

test_dict["name"]

# 取出play

test_dict["hobby"][0]

# 2.使用get方法来获取value,若没有key,则会返回None。

test_dict.get("name")

# 3.使用setdefault()方法。当然这方法主要是用来增加字典元素的。

# 取出”tom"

test_dict.setdefault("name")

8.3.2增

a = {"1":"one","2":"two","3":"three"}

# 1.直接使用[key]的方式。

a["4"] = "four"

# 2.使用setdefault()。如果字典有这个key,则会返回原有的value(可以用来查)。

setdefault("key","value")

# 3.updata()的方法。在括号内新增键值对

D = {"1":"one","2":"two"}

D.updata("3":"three","4":"four")

8.3.4 删

a = {"1":"one","2":"two","3":"three"}

# 1.pop(key)。如果key不存在,则会报错

a.pop("1")

# 2.clear()。清空字典所有元素

a.clear()

# 3.popitem()。随机删除,估计存在的意义是抽奖删除。

a.popitem()

8.3.4 改

a = {"1":"one","2":"two","3":"three"}

# 利用[key]来改变元素值。与列表相似。

a["1"] = "1"

8.3.5 其他操作

方法

意义

{}.fromkeys(list,value)

创建以list中元素为key,None为value的字典,也可自定义value,选填

keys()

将字典的所有key当做列表形式打印,如需使用则可用list()成真正列表

values()

主要是value,同上

items()

将(key,value)元祖作为列表元素,用法同上

遍历字典内容主要有四种方式

a = {"1":"one","2":"two","3":"three"}

# 1 对key进行遍历。强烈推荐

for k in a:

print(k)

# 2 对key遍历的第二种形式。

for k in a.keys():

print(k)

# 3 对value进行遍历

for v in a.values():

print(v)

# 4 对key,value 进行遍历

for k,v in a.items():

print(k,v)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/311520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AVL添加平衡二叉树,是一种二叉排序树,其中每个结点的左子树和右子树的高度差至多等于1。-icoding-数据结构-C-typedef struct node{ int val;

AVL添加 平衡二叉树&#xff0c;是一种二叉排序树&#xff0c;其中每个结点的左子树和右子树的高度差至多等于1。 它是一种高度平衡的二叉排序树。现二叉平衡树结点定义如下&#xff1a; typedef struct node {int val;struct node *left;struct node *right;struct node *par…

[蓝桥杯2015决赛]密文搜索

题目描述 福尔摩斯从X星收到一份资料&#xff0c;全部是小写字母组成。 他的助手提供了另一份资料&#xff1a;许多长度为8的密码列表。 福尔摩斯发现&#xff0c;这些密码是被打乱后隐藏在先前那份资料中的。 请你编写一个程序&#xff0c;从第一份资料中搜索可能隐藏密码的位…

WTM系列视频教程:View和Taghelper

文字摘要&#xff1a;“又到了老刘胡说的时间了&#xff0c;今天我们主要聊一下View和TagHelper。在前后端不分离的模式下&#xff0c;View还是很重的一块。”“前几课有朋友反馈说收获很大&#xff0c;也有朋友反应基础内容太多&#xff0c;众口难调啊。这个系列教程还是希望有…

sketch里的ios控件_30个让你眼前一亮的iOS Swift UI控件!

前言笔者接触 iOS 开发有一段时间了&#xff0c;尤其特别喜欢UI部分&#xff0c;特意收集整理了30个让你惊艳的第三方开源控件&#xff08;swift&#xff09;&#xff0c;无论是应用到项目中还是用来学习都能让你大呼过瘾&#xff0c;废话不多说&#xff0c;直接上图上链接&…

堆辅助函数二叉堆是完全二叉树或者是近似完全二叉树。二叉堆有两种:最大堆和最小堆。“最小堆”的定义如下:typedef struct _otherInfo-icoding-C

堆辅助函数 二叉堆是完全二叉树或者是近似完全二叉树。二叉堆有两种&#xff1a;最大堆和最小堆。 最大堆(大顶堆)&#xff1a;父结点的键值总是大于或等于任何一个子节点的键值&#xff0c;即最大的元素在顶端&#xff1b; 最小堆(小顶堆)&#xff1a;父结点的键值总是小于或…

【要闻】Kubernetes不适合发行版模式、Windows业务无法达到营收指引

评论&#xff1a;发行版模式适用于Linux但不适用于Kubernetes人们经常将Kubernetes比喻成一种革命&#xff0c;众多相关公司纷纷涌现以利用其发展趋势证明了这一点。在从前&#xff0c;希望在Linux领域中赚钱的公司拿走了核心&#xff0c;将其与最佳实践和喜爱的应用程序捆绑在…

[蓝桥杯2015决赛]积分之迷-枚举(水题)

题目描述 小明开了个网上商店&#xff0c;卖风铃。共有3个品牌&#xff1a;A&#xff0c;B&#xff0c;C。 为了促销&#xff0c;每件商品都会返固定的积分。 小明开业第一天收到了三笔订单&#xff1a; 第一笔&#xff1a;3个A 7个B 1个C&#xff0c;共返积分&#xff1a;31…

python车辆识别硬件_Opencv python之车辆识别项目

图片车辆识别根据文章搭建好环境后开始进行做项目linkimport sysimport cv2from PyQt5.QtGui import *from PyQt5.QtWidgets import *from PyQt5.QtGui import QIcon, QPalette, QPixmap, QBrush, QRegExpValidatorclass mainWin(QWidget):def __init__(self):""&quo…

[蓝桥杯2016决赛]反幻方-next_permutation枚举

题目描述 我国古籍很早就记载着 2 9 4 7 5 3 6 1 8 这是一个三阶幻方。每行每列以及对角线上的数字相加都相等。 下面考虑一个相反的问题。 可不可以用 1~9 的数字填入九宫格&#xff0c;使得&#xff1a;每行每列每个对角线上的数字和都互不相等呢&#xff1f; 这应该能做到。…

堆初始化-二叉堆一般用数组来表示。例如,根节点在数组中的位置是0,第n个位置的子节点分别在2n+1和 2n+2-icoding-void init_min_heap(PMinHeap pq, int

堆初始化 二叉堆一般用数组来表示。例如&#xff0c;根节点在数组中的位置是0&#xff0c;第n个位置的子节点分别在2n1和 2n2。 因此&#xff0c;第0个位置的子节点在1和2&#xff0c;1的子节点在3和4。以此类推。这种存储方式便于寻找父节点和子节点。 在二叉堆上可以进行插入…

管理学定律--墨菲定律

如果有两种或两种以上的方式去做某件事情&#xff0c;而其中一种选择方式将导致灾难&#xff0c;则必定有人会做出这种选择。根本内容是&#xff1a;如果事情有变坏的可能&#xff0c;不管这种可能性有多小&#xff0c;它总会发生。一、墨菲定律来源1949年&#xff0c;一位名叫…

毕滢python小咖养成计划百度云_学技树-Python小咖养成计划

1.计算机操作基础.mp42.Python下载与配置.mp43.变量的概念.mp44.函数的调用和定义.mp45.数据的类型.mp46.字符串.mp47.if条件判断.mp48.while循环.mp49.for循环.mp410.列表.mp411.字典.mp412.类的概念.mp413.类的使用.mp4代码管理及答疑系统.pdf①项目一&#xff1a;数据分析(已…

[蓝桥杯2016决赛]平方末尾-数论,枚举

题目描述 能够表示为某个整数的平方的数字称为“平方数”。比如&#xff0c;25,64 虽然无法立即说出某个数是平方数&#xff0c;但经常可以断定某个数不是平方数。 因为平方数的末位只可能是&#xff1a;[0, 1, 4, 5, 6, 9] 这6个数字中的某个。 所以&#xff0c;4325435332必然…

数据结构-排序-分配类排序-知识点总结归纳3

分配类排序:核心是分配和收集,利用关键字的优先级进行排序的思想 高位优先排序:比如桥牌,先比较花色在比较面值;比如学号,比较级,院,班,号; 低位优先排序: 链式基数排序 思想:基于"分配"和"收集"的操作, 将单关键字转化为多关键字排序 将链表作为存储结…

Magicodes.IE基础教程之导出Pdf

说明本教程主要说明如何使用Magicodes.IE.Pdf完成Pdf收据导出要点导出PDF数据自定义PDF模板导出单据如何批量导出单据导出特性说明PdfExporterAttributePdfExporterAttribute特性用于设置Pdf导出的总体设置&#xff0c;比如方向、纸张等。主要包含如下设置&#xff1a;Name:文档…

mysql查询语句能否让一个字段不显示出来_天天写order by,你知道Mysql底层如何执行吗?

作者&#xff1a;不才陈某前言在实际的开发中一定会碰到根据某个字段进行排序后来显示结果的需求&#xff0c;但是你真的理解order by在 Mysql 底层是如何执行的吗&#xff1f;假设你要查询城市是苏州的所有人名字&#xff0c;并且按照姓名进行排序返回前 1000 个人的姓名、年龄…

排序-总结

排序 排序:重点在于对于记录的关键字进行排序,得到按关键字有序记录序列 分为: A.内部排序: 排序过程在内存中进行 B.外部排序: 待排序记录数据量过大,需要借助外部存储设备 排序的稳定性:排序后有相同关键字的记录顺序不变就是稳定的排序 插入类排序: 1.直接插入排…

.NET Core开发实战(第10课:环境变量配置提供程序)--学习笔记

10 | 环境变量配置提供程序&#xff1a;容器环境下配置注入的最佳途径环境变量的配置提供程序主要适应场景&#xff1a;1、在 Docker 中运行时2、在 Kubernetes 中运行时3、需要设置 ASP.NET Core 的一些内置特殊配置时环境变量和命令行这两个提供程序在早期是没有容器化的&…

python和qt哪个好_做个小的桌面用node还是QT比较好? - Web开发 - WebDev - 水木社区...

楼主说了自己水平不高&#xff0c;那就专注 py 一门语言就好了。electron 这边虽然现在已经简单了很多&#xff0c;但也是两个进程起步&#xff0c;main 和 renderer 进程的 api 又不一样&#xff0c;renderer 只有 node api 的子集。你大概觉得不挺简单的么&#xff0c;但对于…