【Python】新手入门(9):数值和序列

news2024/10/24 15:13:54

🐍【Python】新手入门(9):数值和序列

在这里插入图片描述

🌈 个人主页:高斯小哥
🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订阅和支持~
💡 创作高质量博文(平均质量分92+),分享更多关于深度学习、PyTorch、Python领域的优质内容!(希望得到您的关注~)


🌵文章目录🌵

  • 🔢一、数值类型
    • 整数
    • 浮点数
    • 复数
    • 数值运算
  • 📚二、序列类型
    • 列表
    • 元组
    • 字符串
    • 序列操作
    • 序列的遍历
  • 📊三、序列的常用函数和方法
    • 列表常用方法
    • 字符串常用方法
  • 🔍四、数值和序列的综合应用
  • 💡五、学习建议
  • 🎉六、总结

🔢一、数值类型

  在Python中,数值类型是非常基础和重要的数据类型。Python支持多种数值类型,如整数、浮点数、复数等。这些类型在编程中经常被用来进行各种数学运算和逻辑运算。

整数

  整数是最基础的数值类型,用于表示没有小数部分的数。在Python中,整数可以表示为十进制、八进制、十六进制等形式。

# 十进制整数
decimal_num = 10

# 八进制整数(以0o或0O开头)
octal_num = 0o12  # 等于十进制中的10

# 十六进制整数(以0x或0X开头)
hex_num = 0xA    # 等于十进制中的10

print(decimal_num, octal_num, hex_num)

输出:

10 10 10

浮点数

  浮点数用于表示带有小数部分的数。在Python中,浮点数使用小数点表示。

# 浮点数
float_num = 3.14
print(float_num) # 3.14

复数

  复数由实部和虚部组成,虚部以字母j表示。在Python中,可以使用complex()函数创建复数,或者直接赋值。

# 复数
complex_num = 3 + 4j
print(complex_num)
print(complex_num.real)  # 访问实部
print(complex_num.imag)  # 访问虚部

输出:

(3+4j)
3.0
4.0

数值运算

Python支持基本的数学运算,如加法、减法、乘法、除法、取余等。

# 数值运算
num1 = 5
num2 = 3

sum_result = num1 + num2
diff_result = num1 - num2
mult_result = num1 * num2
div_result = num1 / num2
mod_result = num1 % num2

print(sum_result, diff_result, mult_result, div_result, mod_result)

输出:

8 2 15 1.6666666666666667 2

📚二、序列类型

   序列是Python中用来表示一组有序元素的数据类型。 Python中有多种序列类型,如列表(list)、元组(tuple)、字符串(str)等。这些类型在编程中非常常用,可以用来存储和操作一组相关的数据。

列表

  列表是Python中最常用的序列类型,它可以包含任意类型的元素,并且元素的数量是可变的。

# 列表
my_list = [1, 2, 3, 'a', 'b', True]
print(my_list)

# 访问列表元素
print(my_list[0])  # 访问第一个元素
print(my_list[-1]) # 访问最后一个元素

# 修改列表元素
my_list[0] = 'first'
print(my_list)

# 添加元素
my_list.append('new_element')
print(my_list)

# 删除元素
my_list.remove('new_element')
print(my_list)

输出:

[1, 2, 3, 'a', 'b', True]
1
True
['first', 2, 3, 'a', 'b', True]
['first', 2, 3, 'a', 'b', True, 'new_element']
['first', 2, 3, 'a', 'b', True]

元组

  元组与列表类似,也是一组有序的元素。但元组是不可变的,即创建后不能修改其元素。

# 元组
my_tuple = (1, 2, 3, 'a', 'b', True)
print(my_tuple)

# 访问元组元素
print(my_tuple[0])  # 访问第一个元素

# 尝试修改元组(会报错)
my_tuple[0] = 'first'  # TypeError: 'tuple' object does not support item assignment

输出:

(1, 2, 3, 'a', 'b', True)
1

字符串

  字符串是字符的序列,用于表示文本信息。字符串在Python中是不可变的。

# 字符串
my_string = "Hello, Python!"
print(my_string)

# 访问字符串中的字符
print(my_string[0])  # 访问第一个字符
print(my_string[-1]) # 访问最后一个字符

# 字符串切片
substring = my_string[0:5]  # 获取子字符串
print(substring)

# 字符串拼接
another_string = " World!"
combined_string = my_string + another_string
print(combined_string)

# 字符串方法(如长度、大小写转换等)
print(len(my_string))  # 获取字符串长度
print(my_string.upper())  # 转换为大写
print(my_string.lower())  # 转换为小写

输出:

Hello, Python!
H
!
Hello
Hello, Python! World!
14
HELLO, PYTHON!
hello, python!

序列操作

序列类型支持很多相同的操作,如索引、切片、连接、重复等。

# 切片操作
my_list = [0, 1, 2, 3, 4, 5]
slice = my_list[1:4]  # 切片操作,获取索引1到3的元素(不包括4)
print(slice)

# 连接操作
list1 = [1, 2, 3]
list2 = [4, 5, 6]
concatenated_list = list1 + list2
print(concatenated_list)

# 重复操作
repeated_list = list1 * 3
print(repeated_list)

输出:

[1, 2, 3]
[1, 2, 3, 4, 5, 6]
[1, 2, 3, 1, 2, 3, 1, 2, 3]

序列的遍历

我们可以使用for循环来遍历序列中的每一个元素。

# 遍历列表
my_list = ['apple', 'banana', 'cherry']
for item in my_list:
    print(item)

# 遍历字符串
my_string = "hello"
for char in my_string:
    print(char)

📊三、序列的常用函数和方法

Python的序列类型提供了很多内置的函数和方法,用于查询和操作序列。

列表常用方法

# 添加元素到列表末尾
my_list.append('new_item')

# 移除列表中的第一个匹配项
my_list.remove('item_to_remove')

# 列表排序
my_list.sort()  # 原地排序,不返回新列表
sorted_list = sorted(my_list)  # 返回新列表,原列表不变

# 列表反转
my_list.reverse()  # 原地反转,不返回新列表
reversed_list = reversed(my_list)  # 返回反转后的迭代器,不是列表

字符串常用方法

# 查找子字符串位置
index = my_string.find('substring')

# 替换子字符串
new_string = my_string.replace('old', 'new')

# 分割字符串
split_list = my_string.split('delimiter')

# 判断字符串是否以指定前缀或后缀开始或结束
starts_with = my_string.startswith('prefix')
ends_with = my_string.endswith('suffix')

🔍四、数值和序列的综合应用

在实际编程中,数值和序列经常一起使用,用于处理各种数据和执行复杂的操作。

# 使用列表存储数值并计算总和
numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
print(total)

# 使用字符串和列表处理文本数据
text = "One and only one"
words = text.split()  # 将文本拆分为单词列表
word_counts = {}  # 创建一个空字典用于存储单词计数

for word in words:
    if word in word_counts:
        word_counts[word] += 1
    else:
        word_counts[word] = 1

# 打印每个单词及其出现的次数
for word, count in word_counts.items():
    print(f"{word}: {count}")

输出:

15
One: 1
and: 1
only: 1
one: 1

💡五、学习建议

  学习数值和序列时,建议多做实践练习,尝试编写各种小程序来加深理解。可以从简单的例子开始,逐步增加难度,挑战自己的编程能力。此外,阅读官方文档和参考其他教程也是很好的学习方式。

🎉六、总结

  数值和序列是Python编程中非常重要的基础知识。通过掌握这些知识,我们可以更加有效地处理和操作数据,实现各种复杂的逻辑和算法。希望本博客能够帮助你更好地理解数值和序列的概念和用法,为你在Python编程的道路上打下坚实的基础。

  编程是一个需要不断实践和探索的过程。只有不断地编写代码,解决问题,才能真正掌握和运用好Python这门强大的编程语言。

  最后,如果你在学习过程中遇到任何问题或困惑,不妨多向社区求助,参与讨论,分享你的经验和心得。Python社区是一个充满活力和智慧的大家庭,相信你会在这里找到很多志同道合的朋友,一起成长和进步。

🚀 祝你学习愉快,编程之路充满惊喜和收获!

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

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

相关文章

MySQL为什么要用B+树?

二叉树(二叉查找树) 平衡二叉树(B树就是B-树)(解决了二叉查找树的极端情况) Q:具体是怎么解决的呢? A: 树左右两边层数相差不大于1一旦符合条件1的时候,就进行左旋/右…

重装系统后正版office如何安装

前言 重装系统后,正版office如何安装 登录官网 https://www.microsoft.com 下载office https://account.microsoft.com/services

KOA优化最近邻分类预测(matlab代码)

KOA-最近邻分类预测matlab代码 开普勒优化算法(Kepler Optimization Algorithm,KOA)是一种元启发式算法,灵感来源于开普勒的行星运动规律。该算法模拟行星在不同时间的位置和速度,每个行星代表一个候选解,…

STM32标准库——(19)PWR电源控制

1.PWR简介 PWR属于外设部分 调用时需要先开启时钟 2.电源框图 这个图可以分为三个部分,最上面是模拟部分供电叫做VDDA,中间是数字部分供电,包括两块区域,VDD供电区域和1.8v供电区域,下面是后备供电,叫做VB…

python中的文件操作2

文件遍历 在Python中,遍历文件通常指的是逐行读取文件中的内容。这种方式对于处理大型文件特别有用,因为它不需要一次性将整个文件加载到内存中。下面是几种常见的遍历文件内容的方法: 1. 使用with语句和for循环 这是最推荐的方式&#xf…

模拟实现std::string类(包含完整、分文件程序)

std库中的string是一个类,对string的模拟实现,既可以复习类的特性,也可以加深对std::string的理解。 🌈一、搭建框架 ☀️1.新命名空间 本质上string是一个储存在库std里面的类,现在需要模拟实现一个string类&#…

MySQl基础入门④

上一遍知识内容 1.使用语句方式选择与查看数据库 打开我们navicat软件之后。 先不要点左边的连接内容,而是直接点击工具,再点击命令界面,也可以直接快捷键F6启动。 在我们的命令窗口输入以下命令: USE dataname;按回车。 这个语…

片上网络(NoC)技术的发展及其给高端FPGA带来的优势

片上网络(NoC)技术的发展及其给高端FPGA带来的优势 1. 概述 在摩尔定律的推动下,集成电路工艺取得了高速发展,单位面积上的晶体管数量不断增加。 片上系统(System-on-Chip,SoC)具有集成度高、功耗低、成本低等优势,已经成为大规模集成电路系统设计的主流方向,解决了…

RHEL9实现系统间复制文件

以下环境使用的是RHEL9学员练习环境 文件传送至远端 - sftp sftp是一个文件传输程序,类似于ftp目标可以指定为[user]host[:path]或URL格式为sftp://[user]host[:port][/path]sftp和ftp都是FTP协议的客户端工具,工作模式和使用方式均相同,但是…

Linux文件描述符剖析

文章目录 文件描述符文件描述符分配规则重定向软硬链接软链接(Symbolic Link):硬链接(Hard Link): 文件描述符 文件描述符(File Descriptor)是一个非负整数,用于标识打开…

【电路笔记】-NPN晶体管

NPN晶体管 文章目录 NPN晶体管1、概述2、双极NPN晶体管配置3、NPN晶体管中的α和β关系4、示例5、共发射极配置1、概述 NPN 晶体管是三端三层器件,可用作放大器或电子开关。 在前面的文章中,我们看到标准双极晶体管或 BJT 有两种基本形式。 NPN(负-正-负)配置和PNP(正-负…

腾讯云服务器和阿里云服务器哪家更优惠?2024价格对比

2024年阿里云服务器和腾讯云服务器价格战已经打响,阿里云服务器优惠61元一年起,腾讯云服务器61元一年,2核2G3M、2核4G、4核8G、4核16G、8核16G、16核32G、16核64G等配置价格对比,阿腾云atengyun.com整理阿里云和腾讯云服务器详细配…

好物周刊#44:现代终端工具

https://github.com/cunyu1943 村雨遥的好物周刊,记录每周看到的有价值的信息,主要针对计算机领域,每周五发布。 一、项目 1. Github-Hosts 通过修改 Hosts 解决国内 Github 经常抽风访问不到,每日更新。 2. 餐饮点餐商城 针对…

火柴排队(逆序对 + 离散化)

505. 火柴排队 原题链接 思路 如下是画图分析的一些过程 在这里贪心的思路是排序,然后两个数组都是从小到大那样对应的话最终的答案可达到最小 而我们只能交换相邻的火柴,故在这里先假设一个简化版本,即A有序,而只需要对B进行…

【学习笔记】数据结构与算法06 - 堆:上堆、下堆、Top-K问题以及代码实现

知识来源:https://www.hello-algo.com/chapter_heap/heap/#4 文章目录 2.5 堆2.5.1 堆(优先队列2.5.1.1 堆的常用操作 2.5.2 堆的存储与表示2.5.2.1 访问堆顶元素2.5.2.2 入堆时间复杂度 2.5.2.3 堆顶元素出堆时间复杂度 2.5.3 堆的常见应用2.5.4 建堆问…

WEB自动化测试----------Webdriver API 的使用

🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 &#x1…

PTA L2-015 互评成绩

学生互评作业的简单规则是这样定的:每个人的作业会被k个同学评审,得到k个成绩。系统需要去掉一个最高分和一个最低分,将剩下的分数取平均,就得到这个学生的最后成绩。本题就要求你编写这个互评系统的算分模块。 输入格式&#xf…

[项目设计] 从零实现的高并发内存池(五)

🌈 博客个人主页:Chris在Coding 🎥 本文所属专栏:[高并发内存池] ❤️ 前置学习专栏:[Linux学习] ⏰ 我们仍在旅途 ​ 目录 8 使用定长内存池脱离new 9. 释放对象时不传大小 10.性能优化 10.1…

使用Kali搭建钓鱼网站教程

一、前言 使用kali工具一分钟制作出和目标网站一模一样的钓鱼网站。目标用户使用钓鱼网站登录自己的账号,账号密码将被自动劫持。 二、钓鱼网站的制作过程 1.在虚拟机VMvare中登录kali linux 2.准备一个目标网址 3.在kail中搜索使用工具 4.在弹出的选项中选择第一…

AttributeError: ‘ChatGLMTokenizer‘ object has no attribute ‘sp_tokenizer‘

目录 问题描述 在使用ChatGLMlora微调的时候,报错“AttributeError: ChatGLMTokenizer object has no attribute sp_tokenizer“ ​编辑问题解决: 问题描述 在使用ChatGLMlora微调的时候,报错“AttributeError: ChatGLMTokenizer object h…