python第2天之变量类型及其对应的方法整合

前言

查看变量类型type(变量)

Python是一种动态类型语言,它具有丰富的变量类型和对应的方法。在Python中,我们可以根据变量的类型来选择合适的方法来操作这些变量。

下面将介绍一些常见的变量类型及其对应的方法。

一、整型(int)

(一)简介

整数类型是Python中最基本的数据类型之一,它用来表示整数。

对于整数类型的变量,我们可以使用一系列方法来对其进行操作,比如加减乘除、取模、幂等等。

(二)方法

1、abs():返回绝对值

2、pow(x,y):计算x的y次方

例如:

a = -10
b = 5
print(a + b)  # 输出-5
print(a * b)  # 输出-50
print(a % b)  # 输出0
print(a ** b)  # 输出-100000
print(abs(a))  #输出10
print(pow(a,b)) #输出-100000

二、浮点型(float)

(一)简介

浮点数类型用来表示带有小数点的数值。

对于浮点数类型的变量,我们可以使用一系列方法来对其进行操作,包括四则运算、取整、四舍五入等。

(二)方法

1、round(number,ndigits):对浮点数进行四舍五入,ndigits表示小数点后保留位数

例如:

c = 3.14
d = 2.718
print(c + d)  # 输出5.858
print(c * d)  # 输出8.53932
print(int(c))  # 输出3
print(round(d, 2))  # 输出2.72
round(d,2)  #输出2.72

三、字符串型(str)

(一)简介

字符串类型用来表示文本数据。字符串在 Python 中是不可变的。

对于字符串类型的变量,我们可以使用一系列方法来对其进行操作,包括字符串拼接、查找、替换、分割等。

(二)方法

1、find():a.find('b')字符串b在字符串a中首次出现的位置【不存在返回-1】

2、rfind():a.rfind('b')字符串b在字符串a中最后一次出现的位置【不存在返回-1】

3、index():a.index('b')字符串b在字符串a中首次出现的位置【不存在报错】

4、rindex():a.index('b')字符串b在字符串a中最后一次出现的位置【不存在报错】

5、count():a.count('b') 字符串b在字符串a中出现的次数【不存在返回0】

6、replace():a.replace('b','c')将字符串a中的b字符串替换成c字符串

7、split(str,num)[str指的是要切割的字符串标记,num指的是第几个]:a.split('b') 将字符串a在字符串b处进行切割【如果分割字符串时,需要使用空白进行切割,那么参数中什么也不需要写(\n,\t,\r等

8、splitlines():等价于split('\n')

9、partition(分割字符):将字符串分割成三部分(字符前,分割字符,字符后)(从左到右)

10、rpartition(分割字符):将字符串分割成三部分(字符前,分割字符,字符后)(从右到左)

11、join():a.join('b') 用b字符串连接a字符串中的每个元素

12、startwith():a.startwith('b') 判断字符串a是否以字符串b开头

13、endwith():a.endwith('b') 判断字符串a是否以字符串b结尾

14、判断

        isupper()  判断是不是大写字符

        islower()  判断是不是小写字符

        isdigit()  判断是不是数字字符

        isalpha()  判断是不是字母

        isalnum()  判断是不是字母或数字字符

        isspace()  判断是不是空字符(包含空格,换行符\n,制表  符\t (理解)注意''空字符串不是空白字符

15、转换

        upper()         转换成大写
        lower()          转换成小写
        title()             将每个单词首字符转换大写
        capitalize()    将第一个单词的首字符转换成大写

16、

        center()  按照指定宽度剧中现实空白处填充指定字符(如s.center(10,’-’)将s字符串10字符范围内居中显示,空余部分永‘-’填充)

        rjust() 按照指定宽度居右现实

        ljust() 按照指定宽度居左现实

17、

        strip()  去除两侧指定字符默认空白(换行、回车、空格)(如‘   hello  hello   ‘.strip()输出

        ‘hello  hello’)

        lstrip() 去除字符串右侧空白(空格,换行,回车等

        rstrip() 去除字符串左侧空白(空格,换行,回车等)

(三)定义

s = ‘ ’,””,’’’ ‘’ ’或  s = str()

字符串逆序

1.s[::-1]

四、列表类型(list)

(一)简介

列表类型用来表示一组有序的元素。列表是可变的,可以包含任意类型的对象,对象之间用逗号隔开,并且放在方括号中。

对于列表类型的变量,我们可以使用一系列方法来对其进行操作,包括元素增删、查找、排序等。

(二)方法

sort()          列表进行排序默认升序(小到大)      l.sort(reverse = True)降序

reverse()    将列表进行逆序 

append()    将参数中容器对象扩展到列表

extend()     将参数中容器对象中每个元素扩展到列表中

insert()        将元素插入到指定位置

count()        同字符串

index()        同字符串

in-not in      2 in l ,2 not in l                                          返回布尔类型

pop()          索引不写默认删最后一个

remove()    删除指定的元素,如果存在多个只删除第一个

del             del l[1]删除列表l中第二个元素

clear()        清空整个列表但不删除

(三)定义

l = [] l = list()

五、字典类型(dict)

(一)简介

字典类型用来表示键值对的集合。

对于字典类型的变量,我们可以使用一系列方法来对其进行操作,包括元素增删、查找、遍历等。

字典元素访问:字典没有索引,但可以通过key访问对应value
            通过key方式访问会报错(如果不存在),通过get(key)方式访问返回None(如果不存在)
字典元素遍历:
#1.	
for k in d:  ## k键,d[k] 值
print(f’{k},{d[k]}’)
#2.	
for k in d.keys():  ## k键,d[k]值
print(f'{k},{d[k]}’)
#3.	
for v in d.values(): ## v值
print(v)
4.	for k,v in d.items(): ## k键,v值
print(f’{k},{v}’)
 

(二)方法

增        d[‘’] =

改        d[‘’] = 值【字典中键key具有唯一性,输入的键存在则修改,不存在则添加一条数据】

查        1. d[‘’]    2. d.get

删        

        d.popitem()删除最后一个键值对
        d.pop(‘键’)删除指定键值对
        d.clear()清空字典中所有的键值对
        del d 删除字典

                del d[‘键’]删除对应键值

# 定义字典的函数
def creat_card():# 使用字典来保存每张名片的数据# name,age,addresscard = {}card['name'] = input('请输入姓名:')card['age'] = input('请输入年龄:')card['address'] = input('请输入地址:')return card
# 显示 名片字典内容函数
def show_card(card):for k in card:print(f'{k} : {card.get(k)}')
# 测试
show_card(creat_card())集合
定义:s = set()(注意:s={}定义的是列表)
集合不支持下标
集合特点:
1.	确定型
2.	互异性
3.	无序性
'''
set-list-tuple三者类型间转换
'''
s = 'hello'
l = list(s)
print(l)
print(set(l))
print(set(s))
l1 = str(l) # __str__
print(l1,'-----',type(l1))
print(''.join(l))

(三)定义

d = {}

六、元组(tuple)

(一)简介

元组类型用来表示一组不可变的元素。

对于元组类型的变量,我们可以使用一些方法来对其进行操作,包括访问、切片、计数和获取元素索引等。

元组中数据类型可以有多种(整形、浮点型、字符串型、布尔类型等)

NOTES:定义一个数字元素的元组要加逗号,不然会解析成数字s = tuple(1,)

(二)方法

# 元组的嵌套及遍历
# 定义一个嵌套元组
t = (1,2,3,(4,5,6),(7,8,9))# 遍历
for v in t:#isinstance()判断参数一是否是参数二的类型对象#通过isinstance判断遍历的元素是否是一个元组# 如果是继续遍历,如果不是直接输出if isinstance(v,tuple):for v2 in v:print(v2)else:print(v)
常用方法:
count()
index()'''
if 实现的三目运算符
'''
def test_func():# 输入一个数,判断奇偶n = int(input('number:'))# s = '偶数' if n % 2 == 0 else '奇数's = '奇数' if n % 2 != 0 else '偶数'print(s)
test_func()

(三)定义

s = () 或s = tuple()

七、集合类型(set)

集合是一个无序的不重复元素集,基本功能包括关系测试和消除重复元素。

示例方法:

  • add(element): 向集合添加一个元素。
  • remove(element): 移除集合中的指定元素。
  • union(other): 返回两个集合的并集。
  • intersection(other): 返回两个集合的交集。

八、布尔类型(bool)

布尔类型仅有两个值:TrueFalse。在逻辑运算中常用。

九、文件类型(file)

文件类型用于文件的读写操作。

示例方法:

  • open(filename, mode): 打开一个文件,返回一个文件对象。
  • read(size): 读取文件中的数据。
  • write(string): 向文件中写入字符串。
  • close(): 关闭文件。

小结

Python 提供了丰富的内置数据类型,每种类型都有自己特定的方法和操作,以便更有效地处理数据。了解和掌握这些类型和方法对于编写高效和优雅的 Python 代码至关重要。

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

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

相关文章

JAVA调优

1 JAVA虚拟机 1.1 基本组成 通常来说Java平台标准版(Java SE)包括 Java SE开发工具包(JDK)和Java SE运行时环境(JRE)。 JRE提供了运行以Java编程语言编写的applet和应用程序所必需的库,Java虚…

Microsoft Expression Web - 网页布局

在本章中,我们将介绍网页的基本布局。在创建我们的网页布局之前,我们需要考虑我们的内容,然后设计我们希望如何呈现该内容,因为它是在我们的网站上可见的内容。 由我们如何呈现我们的内容,以便我们的观众找到我们的网…

pdfjs,pdf懒加载

PDF.js是一个使用JavaScript实现的PDF阅读器,它可以在Web浏览器中显示PDF文档。PDF.js支持懒加载,也就是说,它可以在用户滚动页面时才加载PDF文档的某些部分,从而减少初始加载时间和内存占用。 注意点:如果要运行在多留…

Python教程 – 简单代码实现HTML 转Word

之前文章分享过如何使用Spire.Doc for Python库将Word文档转为HTML格式,反过来,该库也能实现HTML到Word文档的转换。通过代码进行转换,避免了手动复制粘贴费时间,并且可能会出现错误或格式混乱等问题。 Spire.Doc for Python库能…

拥抱未来:大语言模型解锁平台工程的无限可能

01 了解大型语言模型 (LLM) 大型语言模型(LLM)是一种人工智能(AI)算法,它使用深度学习技术和海量数据集来理解、总结、生成和预测新内容。凭借合成大量信息的能力,LLM 可以提高以前需要人类专家的业务流程的…

每日一题 - 231201 - Divisibility by Eight

Divisibility by Eight TAG - 整除特性、枚举 整除特性、枚举 整除特性、枚举时间复杂度 - O ( N 3 ) O(N^3) O(N3) // #include<bits/stdc.h> using namespace std; // #define int long long void solve() {string s;cin>>s;for( int i0;i<s.size();i )if(…

基于ASP.Net的图书管理系统的设计与实现

摘 要 图书馆管理系统是一整套高科技技术与书本管理知识结合的产物。它把传统书籍静态的服务这个缺陷完美化&#xff0c;完成多媒体数据的交互、远程网络连接、检查搜索智能化、多数据库无障碍联系、跨时空信息服务。图书管理系统用计算机程序替代了传统手工记录的工作模式&am…

【PyTorch】(三)模型的创建、参数初始化、保存和加载

文章目录 1. 模型的创建1.1. 模型组件1.1.1. 网络层1.1.2. 激活函数1.1.3. 函数包1.1.4. 容器 1.2. 创建方法1.1.1. 通过使用模型组件1.1.2. 通过继承nn.Module类 1.3. 将模型转移到GPU 2. 模型参数初始化3. 模型的保存与加载3.1. 只保存参数3.2. 保存模型和参数 1. 模型的创建…

Ruby和HTTParty库下载代码示例

ruby require httparty require nokogiri # 设置服务器 proxy_host "" proxy_port "" # 定义URL url "" # 创建HTTParty对象&#xff0c;并设置服务器 httparty HTTParty.new( :proxy > "#{proxy_host}:#{proxy_port}" ) …

MySQL之binlog日志

聊聊BINLOG binlog记录什么&#xff1f; MySQL server中所有的搜索引擎发生了更新&#xff08;DDL和DML&#xff09;都会产生binlog日志&#xff0c;记录的是语句的原始逻辑 为什么需要binlog&#xff1f; binlog主要有两个应用场景&#xff0c;一是数据复制&#xff0c;在…

训练自己的个性化Stable diffusion模型,LORA

一、背景 需要训练自己的LORA模型 二、分析 1、有sd-webui有训练插件功能 2、有单独的LORA训练开源web界面 两个开源训练界面 1、秋叶写的SD-Trainer https://github.com/Akegarasu/lora-scripts/ 没成功&#xff0c;主要也是cudnn和nvidia-smi中的CUDA版本不一致退出 2…

Netty Review - 探索Channel和Pipeline的内部机制

文章目录 概念Channel Pipeline实现原理分析详解 Inbound事件和Outbound事件演示Code 概念 Netty中的Channel和Pipeline是其核心概念&#xff0c;它们在构建高性能网络应用程序时起着重要作用。 Channel&#xff1a; 在Netty中&#xff0c;Channel表示一个开放的连接&#xff…

由于找不到msvcp120.dll的解决方法,msvcp120.dll修复指南

当你尝试运行某些程序或游戏时&#xff0c;可能会遇到系统弹出的错误消息&#xff0c;提示"找不到msvcp120.dll"或"msvcp120.dll丢失"。这种情况通常会妨碍程序的正常启动。为了帮助解决这一问题&#xff0c;本文将深入讨论msvcp120.dll是什么&#xff0c;…

C语言中的预处理指令

预处理指令是在编译之前由预处理器处理的命令。这些指令不是C语言的一部分,而是指导预处理器如何准备代码进行编译。预处理指令以井号(#)开头,主要可以分为以下几组: 一、 宏定义指令 #define: 定义宏。 #undef: 取消已定义的宏。宏可以定义常量,如 #define PI 3.14159。…

YOLOv8优化策略:检测头结构全新创新篇 | RT-DETR检测头助力,即插即用

🚀🚀🚀本文改进:RT-DETR检测头助力YOLOv8检测,保持v8轻量级的同时提升检测精度 🚀🚀🚀YOLOv8改进专栏:http://t.csdnimg.cn/hGhVK 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; 1.RT-DETR介绍 论文: https://arxiv.org/pdf/2304.08069.pdf 摘要:…

再探Java集合系列—LinkedHashMap

LinkedHashMap 继承了 HashMap 所以LinkedHashMap也是一种k-v的键值对&#xff0c;并且内部是双链表的形式维护了插入的顺序 LinkedHashMap如何保证顺序插入的&#xff1f; 在HashMap中时候说到过HashMap插入无序的 LinkedHashMap使用了双向链表&#xff0c;内部的node节点包含…

【Linux】 服务器优化之定时任务:自动清理日志,重启服务

文章目录 ⭐️背景&#x1f3c6;处理流程查看进程清理日志文件重启服务 &#x1f496;问题总结&#x1f44d;完整处理方案清理日志脚本自动重启服务计划任务定时清理日志文件定时重启服务 开机启动定时任务 ⭐️背景 部署在客户服务器项目无法访问&#xff0c;最后发现服务器上…

Docker 的基本概念和常用命令,应用程序开发中的实际应用。

Docker 是一种开源的容器化平台&#xff0c;能够帮助开发人员更加轻松地打包、部署和运行应用程序。以下是 Docker 的基本概念和优势&#xff1a; 基本概念&#xff1a; 镜像&#xff08;image&#xff09;&#xff1a;类似于虚拟机镜像&#xff0c;包含了应用程序运行所需的所…

CityEngine2023安装与快速入门

目录 0 引言1 安装2 CityEngine官方示例2.1 官方地址2.2 导入示例工程 3 结尾 &#x1f64b;‍♂️ 作者&#xff1a;海码007&#x1f4dc; 专栏&#xff1a;CityEngine专栏&#x1f4a5; 标题&#xff1a;CityEngine2023安装与快速入门❣️ 寄语&#xff1a;书到用时方恨少&am…

Linux基础命令之网络配置管理常用命令

在Linux中&#xff0c;有许多命令可以用于网络管理。以下是一些常用的Linux网络管理相关的命令 # 1、ifconfig 这是一个常用的网络配置工具&#xff0c;可以用来查看和配置网络接口。这个命令在大多数Linux发行版中都可以使用&#xff0c;包括Ubuntu、Debian、CentOS、Fedora…