python中标准的六个数据类型详解

2024-09-05 06:58

本文主要是介绍python中标准的六个数据类型详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python3中有六种标准的数据类型

数字(Number)
Python 数字数据类型用于存储数值。
Python 支持三种不同的数值类型:整型(int)、浮点型(float)、复数(complex)
整型:通常称为整数,是整数或者负数,不带小数点。python3整型类型没有大小限制。int型数字:0、10 -780、-089、-0x270、0x90。
浮点型:浮点型由整数部分与小数部分组成。float型数字:0.0、15.2、-2.9、-32.5e10、32+e18。
浮点数可以用科学计算法表示:2.5e2 = 2.5 x 10^2 = 250
复数型:复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。complex:3.14j、9.23e-35j、4.53e-7j。
python数字类型相互转换
int(x) 将x转换为一个整数。
float(x) 将x转换到一个浮点数。
complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
python数字运算
和其他不一样的是:  /  :返回的是浮点数、// :向下取整数、 ** : 幂运算
>>>7/2
3.5
>>17//3
5
>>>2**3
8
字符串(String)
双引号或者单引号中的数据,就是字符串。
str1 = "hello,world"
str2 = "Jim"
单字符在python中也是当做一个字符串来使用。
python访问字符串中的值
var1 = "hello world"
var2 = "python3"
print("var1[0]",var1[0]   #var1[0] h
print("var2[3:6]",var2[3:6])   #var2[3:6] hon
python字符串的分片
通过上边界不包括在内。
str = "string"
str[1:3] # "tr" 
#获取从偏移为1到偏移为3的字符串,不包括偏移为3的字符
str[1:] # "tring"
#获取从偏移为1到最后的一个字符,不包括最后一个字符
str[:3] #"str"
# 获取从偏移为0的字符一直到偏移为3的字符串,不包括偏移为3的字符串
str[:-1] #strin"
#获取从偏移为0的字符一直到最后一个字符(不包括最后一个字符串)     
str[:] #"string"
#获取字符串从开始到结尾的所有元素   
str[-3:-1] #"in"
#获取偏移为-3到偏移为-1的字符,不包括偏移为-1的字符 
str[::-1] # "gnirts"
#反转输出
“+”:实现字符串的拼接
string = "hello"+"world"  #"hello world"
字符串的方法
replace()方法
Python replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
str = "This is A Test"
print(str.replace("is", "was"))  # Thwas was A Test"
print(str.replace("is", "was", 1)) #Thwas is A Test
①find()方法
find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
语法: 
str.find(str,beg = 0, end = len(str))
参数:
str -- 指定检索的字符串
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。
返回值:
如果包含子字符串返回开始的索引值,否则返回-1。
str1 = "python web: www.python.org"
str2 = "we"
print(str1.find(str2)) # 7
print(str1.find(str2, 3)) # 7
print(str1.find(str2, 8)) # -1
②index()方法
和find()方法相似,唯一的区别就是find方法不包含索引值会返回-1,而index()不包含索引值会抛出异常。
③join()方法
连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。join是重要的字符串方法,用来在队列中添加元素。
注意:需要添加的元素必须都是字符串。
语法
str.join(sequence) 
str = "-"
a = [1,2,4]
b = ["a","b","c"]
print(str.join(a)) #wrong
print(str.join(b)) #a-b-c
④split()方法
和join方法相反,split方法把字符串分成序列。
语法
str.split(str="", num=string.count(str)).
str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num -- 分割次数。
返回值
返回分割后的字符串列表。
str = "ithis is string examplei"
print(str.split()) #['ithis', 'is', 'string', 'examplei']
print(str.split("s",1)) #['ithi', ' is string examplei']
print(str.split("i"))  #['', 'th', 's ', 's str', 'ng example', '']
记住一点儿:str1.split(str2)按照 str2分割时候,就把str2 换成 "," 形式。以" i  ipython  oi" 为例,把字符串的所有 i 换成 ","形式,结果为:" ", " ","python o"," "
⑤len()方法
Python len() 方法返回对象(字符、列表、元组等)长度或项目个数。
str = "i love python"
print(len(str)) #13
List = [1,3,5,7]
print(len(List)) #4
⑥lower()方法       Python lower() 方法转换字符串中所有大写字符为小写。
⑦upper()方法       Python lower() 方法转换字符串中所有小写字符为大写。
⑧isnumeric()方法  如果 string 中只包含数字字符,则返回 True,否则返回 False
⑨isspace()方法   如果 string 中只包含空格,则返回 True,否则返回 False.
str = "This Is A Test"
print(str.lower())  # this is a test
print(str.upper())  # THIS IS A TEST
str = "tt44333"
print(str.isnumeric()) #False
str = "44333"
print(str.isnumeric()) #True
print(str.isspace())  #False
str=" "
print(str.isspace()) #True
字符格式化操作
age = 10
str = "python"
print("今年%d岁"%age,"the string %s"%str)
列表(List)
当我们需要存储一组数据时候,就需要用序列,序列给每个元素都分配一个索引,第一个是0,第二个是1,依次论推。常用的序列有:列表和元组, 当我们需要改变序列的元素时候,就用列表,因为某些原因,序列不能修改时候,使用元组更加合适。
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。列表的数据项不需要具有相同的类型。
list1 = ["yqq", "boy", 27]
list2 = [1, 2, 3, 4]
list3 = ["a", "b", "c"] 
python列表的索引
可以通过下标访问列表中的值,也能通过下标来重新赋值。字符串不能通过下边类重新赋值。
list1 = ["yqq", "boy", 27]
list1[1] = "girl"
print(list1) #['yqq', 'girl', 27]
str = "4444"
str[0]="5"
print(str) #wrong
python列表的分片
使用索引可以实现单个元素的访问,分片可以操作一定范围的元素。
格式:list[n, m]
n: 提取部分的第一个元素的编号。
m: 分片剩余部分的第一个元素的编号。
第一个是分片的开始,m-n 是分片的个数(n:包含在分片中,m不包含字啊分片中)
list = [1,2,3,4,5,6,7,8,9,10]
print(list[3:6]) #[4,5,6]
print(list[0:1]) #[1]
print(list[7:10]) #[8,9,10]
print(list[-3:]) #[8,9,10]
print(list[-1:]) #[10]  #分片操作
print(list[-1]) #10   #访问列表的值
可以在分片时候,指定步长,步长可以为正数,也可以是负数。步长为负数,从右向左提取元素。
list = [1,2,3,4,5,6,7,8,9,10]
print(list[::2]) #[1, 3, 5, 7, 9]
print(list[::-1]) #[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
#从索引8到索引3,步长为 -1.
print(list[8:3:-1]) #[9,8,7,6,5]
print(list[0:10:-2]) #[]
print(list[5::-2]) #[6, 4, 2]
print(list[:5:-2]) #[10,8]   

序列相加
只有相同类型的序列才能相加
>>>[1,2]+[3,4]
[1,2,3,4]
>>>[1,2,3]+"hello"
wrong
序列迭代
依次输出列表的元素
for x in [1, 2, 3]:print x,
删除元素
del 语句来删除元素
list1 = ['physics', 'chemistry', 1997, 2000];
del list1[2]
python列表的函数
len(list) 列表元素个数
max(list) 列表元素的最大值
max(list) 列表元素的最小值
list(seq)  把seq转化为列表
aTuple = (123, 'Google', 'Runoob', 'Taobao')
list1 = list(aTuple)
print ("列表元素 : ", list1)  # 列表元素 :  [123, 'Google', 'Runoob', 'Taobao']
str="Hello World"
list2=list(str)
print ("列表元素 : ", list2) #列表元素 :  ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
python列表包含的函数
list.append(obj)  
列表的末尾添加新的对象
List =[1,2,3,4]
List1 =[3,4,5]
List.append(5)
print(List)  #[1, 2, 3, 4, 5]
List.append(List1)
print(List)#[1, 2, 3, 4, 5, [3, 4, 5]]
list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值
List =[1,2,3,4]
List1 =[3,4,5]
List.extend(List1)
print(List)#[1, 2, 3, 4, 5, 3, 4, 5]
List.append(List1)
print(List)#[1, 2, 3, 4, 5,[ 3, 4, 5]]
list.insert(index,obj)
函数用于将指定对象插入列表的指定位置。
List =[1,2,3,4]
List1 =[3,4,5]
List.insert(3, List1)
print(List)#[1, 2, 3, [3, 4, 5], 4]
list.pop()
函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
list.pop(obj=list[-1])
list.remove(obj)
函数用于移除列表中某个值的第一个匹配项。
list.count(obj)
用于统计某个元素在列表中出现的次数。
元组(Tuple)
某些情况下,我们需要的序列不可修改,这个时候,就需要用元组,元组和列表相似, 但是元组的元素值不可修改也不能删除,可以进行分片和连接。
元组创建很简单,用小括号括起来,用逗号隔开。元组使用小括号,列表使用中括号。
Tuple = () #创建元组
Tuple = ("a","b","c","d")
Tuple = ([1,2,3],"a",3,)
注意:一个元素的元组,后边加一个“,”。
Tuple =(30,)
访问元组
>>> tuple = ("abcd",1,[1,2,4])
>>> tuple[0]
'abcd'
>>> tuple[1]
1
>>> tuple[2]
[1, 2, 4]
>>> 
修改元组
>>> tuple = ("abcd",1,[1,2,4])
>>> tuple[0]="ad"  #wrong
元组合并
>>> tuple = ("abcd",1,[1,2,4])
>>> tuple1 =("ad",3,4)
>>> tuple + tuple1
('abcd', 1, [1, 2, 4], 'ad', 3, 4)
删除元组
元组的元素不允许删除,但是我们可以删除整个元组。
>>> tuple = ("abcd",1,[1,2,4])
>>> del tuple
任意的以“,”分开的序列,默认是元组。
>>> a = 1,2,3,4
>>> a
(1, 2, 3, 4)
>>> a =[1,2,3,4],5,"str"
>>> a
([1, 2, 3, 4], 5, 'str')
元组的函数
tuple()方法语法:Python 元组 tuple() 函数将列表转换为元组。
集合(Set)
以后补充.......
字典(Dictionary)
列表中元素通过下标进行定位,但是元素位置发生变化,则很难定位,python提供一种新的类型,那就是字典。字典中元素可以通过 key 访问。
说明:
字典是由花括号括起来的包含,key : value 两部分。 dict = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}
字典和列表一样,也能够存储多个数据
列表中找某个元素时,是根据下标进行的
字典中找某个元素时,是根据'名字'(就是冒号:前面的那个值,例如上面代码中的'name'、'id'、'sex')
访问字典的值
dict = {"name":"yqq", "age":27}
print(dict["name"],dict["age"]) 
修改字典
通过 key 来修改值。
dict = {"name":"yqq", "age":27}
dict["age"] =25
print(dict)  # {'name': 'yqq', 'age': 25}
dict["school"] ="bj"
print(dict) # {'name': 'yqq', 'school': 'bj', 'age': 25}   
删除字典或者元素
del dict[key] #删除 key 条目
del dict  #删除字典
dict.clear() #清除所有条目
字典的方法
dict.len(),        测量字典中,键值对的个数。
dict.values()    返回一个包含字典 所有value的列表
dict.keys()     返回一个包含字典所有KEY的 列表
dict.items()     返回一个包含所有(键,值) 元祖的列表
dict =  {'name': 'yqq', 'school': 'bj', 'age': 25}
print(len(dict)) #3
print(dict.keys())  #dict_keys(['name', 'age', 'school'])
print(dict.values()) #dict_values(['yqq', 25, 'bj'])
print(dict.items()) #dict_items([('name', 'yqq'), ('age', 25), ('school', 'bj')])
字典的遍历
遍历键、遍历值、遍历项、遍历键值对
for key in dict.keys():print(key)
# name
# age
# school
for value in dict.values():print(value)
# yqq
# 25
# bj
for item in dict.items():print(item)
# ('name', 'yqq')
# ('age', 25)
# ('school', 'bj')
for key,value in dict.items():print("key=%s"%key,"value=%s"%value)
# key=name value=yqq
# key=age value=25
# key=school value=bj































这篇关于python中标准的六个数据类型详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1138267

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

6.1.数据结构-c/c++堆详解下篇(堆排序,TopK问题)

上篇:6.1.数据结构-c/c++模拟实现堆上篇(向下,上调整算法,建堆,增删数据)-CSDN博客 本章重点 1.使用堆来完成堆排序 2.使用堆解决TopK问题 目录 一.堆排序 1.1 思路 1.2 代码 1.3 简单测试 二.TopK问题 2.1 思路(求最小): 2.2 C语言代码(手写堆) 2.3 C++代码(使用优先级队列 priority_queue)

nudepy,一个有趣的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个有趣的 Python 库 - nudepy。 Github地址:https://github.com/hhatto/nude.py 在图像处理和计算机视觉应用中,检测图像中的不适当内容(例如裸露图像)是一个重要的任务。nudepy 是一个基于 Python 的库,专门用于检测图像中的不适当内容。该

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip