【Python】九种数据类型详讲(内含常见常见的字符串函数汇总)

在这里插入图片描述


个人主页:【😊个人主页】
系列专栏:【❤️Python】


文章目录

  • 前言
  • Number(数字)
    • 整数类型
      • int (整型,长整型)
      • float(浮点型)
      • complex(复数)
  • Boolean(布尔类型)
  • Str (字符串类型)
    • 常见的字符串函数及使用方法:
      • len() 求字符串的长度
      • index() 可以找到字符首位在字符串的位置( 若字符不纯在报错)
      • find() 可以找到字符首位在字符串的位置( 若字符不纯不报错, 输出-1)
      • startswith() 判断字符串的开头是否以子字符开头 是为True 错为False (可以选择位置)
      • endswith() 判断字符串的结尾是否以子字符开头 是为True 错为False (可以选择位置)
      • join() 将后面的字符串中的 每个字符 用前面的字符隔开
      • 改变大小写 改变大小写
      • 位置改变
      • zfill() 只能填充 0(从左侧开始填充)
      • split() 注: 默认切割 " "
      • 剔除
      • replace() 替换
      • count() 计数
      • encode()加密
      • 判断字符串的类型


前言

今天,我们继续来详细的讲讲各种数据类型的特点和其的应用场景,如果对JAVA,C++,C等语言有一定对 数值类型:整数、浮点数、复数。字节类型:字符串、字节串都有了一定的了解,在Python,我们引进了全新的概念:组合类型:集合、元组、列表、字典。没有C系语言基础的小伙伴也不必着急,今天我们就来一一介绍。想了解更多Python内容请订阅内容【Python系列教程】
在这里插入图片描述

Number(数字)

在Python3中,支持 int、float、bool、complex(复数)四种数字类型。

整数类型

在这里插入图片描述

int (整型,长整型)

与数学中的整数含义相同,无取值范围;
整数包括二进制、八进制、十进制、十六进制等4种表示形式;

二进制:以0b或0B开头:0b1101,-0B10;
八进制:以0o或0O开头:0o456,-0O789;
十进制:123,-321,0;
十六进制:以0x或0X开头:0x1A,-0X2B。
如:0b1010 = 0o12 = 10 = 0xa

我们可以通过内置的 type() 函数可以用来查询变量所指的对象类型:

num = int("5655")
print(num,type(num))

在这里插入图片描述

注:在python3中只有int,没有long int 和long long int

我们还可以通过可以用 sys模块的maxsize来获取系统支持的最大整数

import sys
print(sys.maxsize)

在这里插入图片描述

float(浮点型)

在数学中我们经常将带有小数点的数称为实数,在计算机语言中也存在这一类的数,我们将之称为浮点数。

f = 0.01
m = 5e3
n = 5E3
print('f=',f,'m=',m,'n=',n)

在这里插入图片描述

不确定尾数问题:浮点数直接运算,可能产生不确定尾数。不确定尾数问题来源于浮点数在计算机中表示不精确的实际情况,广泛存在于编程语言中。可以使用round()辅助浮点数运算,消除不确定尾数

注:浮点数可以用小数点的形式表示,也可以用科学技术法的形式表示(可以用e或者E)

complex(复数)

复数类型与数学中的复数概念是一致的,复数的一般表现形式为 a+bj;
在这里插入图片描述

c = 2 + 3j
print(c,type(c),c.real,c.imag)

在这里插入图片描述

z = a+bj,a是实部,b是虚部,a和b都是浮点数;
z.real获得z的实部,z.imag获得z的虚部。

Boolean(布尔类型)

布尔类型是只有True和False两种值的数据类型。

常用的布尔运算包括and、or、not三种,布尔类型值可以相加,但一旦相加,类型就会转换为int类型
在这里插入图片描述

a = True
b = False
print(a and b)
print(a or b)
print(not a)
print(a+b)    # 当两个布尔型进行算数运算时就会转换成int类型

在这里插入图片描述

Str (字符串类型)

,Python中的字符串用将一系列元素放到双引号, 单引号, 三引号括起来,同时使用反斜杠 \ 转义特殊字符。
我们可以通过下面的方法截取字符串:

变量[头下标:尾下标]

在这里插入图片描述


str = 'Runoob'  # 定义一个字符串变量
print(str)           # 打印整个字符串
print(str[0:-1])     # 打印字符串第一个到倒数第二个字符(不包含倒数第一个字符)
print(str[0])        # 打印字符串的第一个字符
print(str[2:5])      # 打印字符串第三到第五个字符(包含第五个字符)
print(str[2:])       # 打印字符串从第三个字符开始到末尾
print(str * 2)       # 打印字符串两次
print(str + "TEST")  # 打印字符串和"TEST"拼接在一起

在这里插入图片描述

常见的字符串函数及使用方法:

len() 求字符串的长度

 print(len("fuyhu"))
结果 :5

index() 可以找到字符首位在字符串的位置( 若字符不纯在报错)

print("holle would".index("h"))
结果:为 0

find() 可以找到字符首位在字符串的位置( 若字符不纯不报错, 输出-1)

print("holle would".find("lle"))
结果 :2

startswith() 判断字符串的开头是否以子字符开头 是为True 错为False (可以选择位置)

   print("holle world".startswith("w", 6))
结果:True

endswith() 判断字符串的结尾是否以子字符开头 是为True 错为False (可以选择位置)

   print("holle world".startswith("rld"))
结果:True

join() 将后面的字符串中的 每个字符 用前面的字符隔开

print("w".join("holle world"))
结果:hwowlwlwew wwwowrwlwd

改变大小写 改变大小写

capitalize()字符串开头大写
        例:print("holle world".capitalize())
        结果:Holle world
title()
    字符串中 每个单词开头 大小写
        例:print("holle world".capitalize())
        Holle World
upper()
    字符全部转换为大写
       例: print("holle world".upper())
        HOLLE WORLD
lower()
    字符全部转换为小写
        例:print("Holle World".lower())
        holle world
swapcase()
    字符串中大小写转换
        例:print("Holle World".swapcase())
        hOLLE wORLD

位置改变

居中center()
    print("中".center(3)  3为总长度
     不足两侧添加字符(默认为“ ”)

居左 ljust()
    不足右侧添加字符(默认为“ ”)

居右 rjust()
    不足左侧添加字符(默认为“ ”)

zfill() 只能填充 0(从左侧开始填充)

split() 注: 默认切割 " "

将一个字符串分割为多个字符串(后形式为列表)(后面的数字代表分割几次)(字符串中有几个相同字符最多分几次且分割后这个子字符消失)

print("holle would".split("l", 2)) 
结果: ['ho', '', 'e would']

剔除

strip()
剔除 从两侧开始如果一样剔除 一旦不一样停止(包括" ")
    例;print("rqe  中  er".strip("r"))
        " "也要考虑
       结果: rqe   中  e

lstrip()
从左侧剔除
rstrip()
从右侧剔除

replace() 替换

  "2008/08/08".replace("/0","年"1)
    结果:“2008年8/08”
       "/0"被替换的字符
        "年-" 替换的新字符
        1  替换的次数(从左到右开始)

count() 计数

encode()加密

print("中国".encode())
    结果 :b'\xe4\xb8\xad\xe5\x9b\xbd'.
   decode()解密
    例:print(b'\xe4\xb8\xad\xe5\x9b\xbd'.decode())
    结果:中国

判断字符串的类型

isalnum()
    判断字符串是不是字母和数字(且不包括" ")
        print("dk12ifuify".isalnum())
isalpha()
    判断字符串是不是纯字母(且不包括" ")
        print("dkifuify".isalpha())
isdigit()
    判断字符串是不是纯数字(且不包括" ")
        print("12345678".isdigit())
islower()
    判断字符串是不是纯小写
isupper()
    判断字符串是不是纯大写
istitle() 判断字符串每个单词开头是不是大写
以上结果都为True 或False

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于 Transformers库的ResNet扩展

构建自定义模型:基于🤗 Transformers库的ResNet扩展 引言 在自然语言处理(NLP)领域,🤗 Transformers库已经成为了一个不可或缺的工具,它提供了大量的预训练模型和灵活的API,极大地…

用flutter实现五种寻路算法的可视化效果,快来看看!

前言 半年前我写了一篇《十几种排序算法的可视化效果,快来看看!👀》,还是很有意思的。这篇文章中的内容还被张风捷特烈张老师收录进了FlutterUnit:《FlutterUnit 周边 | 收录排序算法可视化》。今天让我们再来做一个有…

Postman保存API返回的token以全局使用的整个流程

1、 调通获取token的接口,包含传递参数的类型,和输入密码是否需要md5加密,根据接口的要求,传入数据 2、 查看接口响应的报文,可以看到token的有效时间,token的类型,里面的access_token就是想要获…

【密码学】RSA公钥加密算法

文章目录 RSA定义RSA加密与解密加密解密 生成密钥对一个例子密钥对生成加密解密 对RSA的攻击通过密文来求得明文通过暴力破解来找出D通过E和N求出D对N进行质因数分解通过推测p和q进行攻击 中间人攻击 一些思考公钥密码比对称密码的机密性更高?对称密码会消失&#x…

【Java自动化测试框架--TestNG】

目录 一、 背景介绍 二、核心概念与联系 2.1 JUnit核心概念 2.2 TestNG核心概念 2.3 JUnit与TestNG的联系 三. 核心算法原理的详细讲解 3.1 JUnit算法原理 3.2 TestNG算法原理 四、什么是TestNG 五、 TestNG配置 2.1 Maven项目的结构: 2.2 POM文件中配置: 2.3 Tes…

【C++】相机标定源码笔记- 立体视觉相机的校准和图像矫正类

类主要用于双目相机的标定和矫正。它包含了读取和保存相机模型、计算标定参数以及矫正图像的功能。通过这些功能,可以实现双目相机的标定和矫正,从而提高双目相机的精度和稳定性。 公有函数: 构造函数、带参构造函数、析构函数、读取双目相机…

【C】Structure

参考摘抄学习来自: C 结构体C语言必学知识点 "结构体"详细解析!C 语言之结构体最全面总结C typedef 文章目录 1 定义2 初始化3 结构体大小的计算4 访问结构成员5 结构作为函数参数6 指向结构的指针7 结构体数组8 动态申请结构体 1 定义 它允…

GPT-4o还没完全开放,Moshi就提前开源了

GPT-4o已经发布有段时间了,但大众迟迟没有等到成型的产品出来,这会的功夫,法国创业团队抢先OpenAI发布端到端实时音频模型——Moshi。单从响应时效上,体验下来应该比GPT-4o还要快,但是音色及语言多样性的支持上&#x…

从资金管理的角度 谈谈伦敦金投资技巧

刚进入伦敦金市场的时候,笔者认为技术分析是很重要的,所以将学习伦敦金投资技巧的精力全部投入到技术分析的学习中。经过一系列交易的亏损,笔者才发现,其实交易管理才是最重要的。如果管理得好,30%的胜率,投…

mysql修改字符集为UTF-8

启动 mysql 服务 systemctl start mysqld 登录 mysql mysql -uroot -p 查询 mysql 字符集 ## 在 mysql 命令行下查询 mysql 状态 mysql>status; 退出 mysql 并关闭 mysql ## 退出 mysql mysql>exit; ## 关闭 mysql systemctl stop mysqld 编辑 my.cnf 配置文…

数学建模----滑翔伞伞翼面积的设计及运动状态描述

摘要 滑翔伞作为一项融合了挑战、冒险和刺激于一体的运动,近年来在全球范围内受到了广泛的关注。滑翔伞在救援、探险、体育、娱乐、环保和交通等领域的应用展现了其重要价值。然而,中国在滑翔伞领域尚未取得突破,缺乏全球影响力和竞争力。因此…

[C++]——继承 深继承

一、继承概念 (1)、定义 继承(inheritance)机制是面向对象程序设计使代码复用最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程,是类…

qq六七年前的聊天记录怎么找?80%的人是这么做的

在使用QQ的过程中,六七年前的聊天记录可能承载了许多珍贵的回忆和重要的信息。然而,随着时间的推移,这些记录可能变得难以寻找甚至被遗忘。那么,qq六七年前的聊天记录怎么找呢?事实上,有80%的人通过以下三种…

PySide6 实现资源的加载:深入解析与实战案例

目录 1. 引言 2. 加载内置资源 3. 使用自定义资源文件(.qrc) 创建.qrc文件 编译.qrc文件 加载资源 4. 动态加载UI文件 使用Qt Designer设计UI 加载UI文件 5. 注意事项与最佳实践 6. 结论 在开发基于PySide6的桌面应用程序时&…

2024-07-05 base SAS programming学习笔记9(variables)

1.在数据集增加累加变量值(SUM) 求和语句(SUM STATEMENT):variableexpression variable是累积求和的变量名,为数值型,默认初始值为0;该variable值则会保留到一个观测 当expression有缺失值,在求…

事件分发机制:demo复现自定义ViewGroup点击事件不起作用

几年前遇到的一个bug,不弄清楚心里就是不舒服! 平时应用开发中,经常遇到的UI需求,例如抖音的设置界面,如下图所示: 很容易想到,自定义一个Layout,左边一个图标,中间文…

CentOS 离线安装部署 MySQL 8详细教程

1、简介 MySQL是一个流行的开源关系型数据库管理系统(RDBMS),它基于SQL(Structured Query Language,结构化查询语言)进行操作。MySQL最初由瑞典的MySQL AB公司开发,后来被Sun Microsystems公司…

QT学习(8)——QT绘图学习之绘图设备,QPixmap显示优化,QImage对像素修改,QPicture绘图的记录和重现

目录 引出绘图设备QPixmap使用初体验修改填充颜色 QImage 绘图设备对像素进行修改 QPicture 绘图设备,记录和重现绘图的重绘 总结绘图学习新建一个项目使用初体验画笔颜色、宽度设置画笔类型设置画刷的使用代码 高级设置抗锯齿画家移动状态保存和还原 画家画图片插曲…

Ubuntu 22.04.4 LTS 安装 php apache LAMP 环境nginx

1 安装php-fpm apt update apt-get install php-fpm #配置php-fpm服务启动 systemctl enable php8.1-fpm systemctl start php8.1-fpm #查看服务 systemctl status php8.1-fpm #查看版本 rootiZbp1g7fmjea77vsqc5hmmZ:~# php -v PHP 8.1.2-1ubuntu2.18 (cli) (built: J…

蓝牙信标和蓝牙标签我们如何区分,区分方法有哪些?

蓝牙信标和蓝牙标签其实是两种不同的技术,很多人可能会把蓝牙信标和蓝牙标签搞混,因为区分不开来,但实际上,区分这两种技术也很简单,因为它们各自都有不一样的特性,通过这些特性,我们也能正常区…