Python学习(2):注释、数字、文本、列表

1 关于注释

        Python 使用井号#作为单行注释的符号, 使用三个连续的单引号’’'或者三个连续的双引号"""注释多行内容。

2 数字

2.1 基本运算

        解释器像一个简单的计算器:你可以输入一个表达式,它将给出结果值。 表达式语法很直观:运算符 +-* 和 / 可被用来执行算术运算;圆括号 (()) 可被用来进行分组。 例如:

print(2 + 2)
print(50 - 5*6)
print((50 - 5*6) / 4)
print(8 / 5)

        整数(如,2420 )的类型是 int,带小数(如,5.01.6 )的类型是 float。

        除法运算 (/) 总是返回浮点数。 如果要做得到一个整数结果你可以使用 // 运算符;要计算余数你可以使用 %:

print(17 / 3)  # 经典除法运算返回一个浮点数
print(17 // 3)  # 向下取整除法运算会丢弃小数部分
print(17 % 3)  # % 运算返回相除的余数

2.2 乘方

        Python 用 ** 运算符计算乘方,** 比 - 的优先级更高, 所以 -3**2 会被解释成 -(3**2) ,因此,结果是 -9。要避免这个问题,并且得到 9, 可以用 (-3)**2

print(5 ** 2)  # 5 的平方
print(2 ** 7)  # 2 的 7 次方

2.3 赋值

等号(=)用于给变量赋值,如果变量未定义(即,未赋值),使用该变量会提示not defined错误:

width = 20
height = 5 * 9
print(width * height)

        除了 int 和 float,Python 还支持其他数字类型,例如 Decimal 或 Fraction。Python 还内置支持 复数,后缀 j 或 J 用于表示虚数(例如 3+5j )。

3 文本

3.1 定义

        除了数字 Python 还可以操作文本(由 str 类型表示,称为“字符串”)。  它们可以用成对的单引号 ('...') 或双引号 ("...") 来标示,结果完全相同 。与其他语言不同,特殊字符如 \n 在单引号('...' )和双引号("..." )里的意义一样。这两种引号唯一的区别是,不需要在单引号里转义双引号 " (但此时必须把单引号转义成 \' ),反之亦然。

print('猪肉')  # 单引号
print("鸡蛋")  # 双引号
print('1975')  # 用引号括起来的数字也是字符串

3.2 转义

        要标示引号本身,我们需要对它进行“转义”,即在前面加一个 \。 或者,我们也可以使用不同类型的引号:

print('doesn\'t')  # 使用 \' 来转义单引号
print("doesn't")  # 或者改用双引号

        在 Python shell 中,字符串定义和输出字符串看起来可能不同。 print() 函数会略去标示用的引号,并打印经过转义的特殊字符,产生更为易读的输出。如果不希望前置 \ 的字符转义成特殊字符,可以使用 原始字符串,在引号前添加 r 即可:

print('C:\some\name')  # 这里 \n 表示换行符!
print(r'C:\some\name')  # 请注意引号前的 r

3.3 多行

        字符串文字可以跨越多行。一种方法是使用三重引号:"""...""" 或 '''...''' 。行尾会自动包含在字符串中,但可以通过在行尾添加 \ 来避免这种情况。 在下面的示例中,不包含首行换行符::

print("""\
Usage: thingy [OPTIONS]
     -h                        Display this usage message
     -H hostname               Hostname to connect to
""")

3.4 拼接

        字符串可以用 + 合并(粘到一起),也可以用 * 重复,相邻的两个或多个 字符串字面值 (引号标注的字符)会自动合并,这项功能只能用于两个字面值,不能用于变量或表达式:

print(3 * 'un' + 'ium')  # 3 乘以 'un',再加 'ium'
print('Py' 'thon')  # 自动拼接

        合并多个变量,或合并变量与字面值,要用 +

prefix = 'Py'
print(prefix + 'thon') 

3.5 索引与切片

        字符串支持 索引 (下标访问),第一个字符的索引是 0。单字符没有专用的类型,就是长度为一的字符串,索引还支持负数,用负数索引时,从右边开始计数,注意,-0 和 0 一样,因此,负数索引从 -1 开始。

print('Python'[1])
print('Python'[-1])

        除了索引操作,还支持 切片。 索引用来获取单个字符,而 切片 允许你获取子字符串。切片索引的默认值很有用;省略开始索引时,默认值为 0,省略结束索引时,默认为到字符串的结尾。注意,输出结果包含切片开始,但不包含切片结束。

word = 'Python'
print(word[:2])  # 从开头到 2 号位 (不含) 的字符
print(word[4:])  # 从 4 号位 (含) 到末尾
print(word[-2:])  # 从倒数第二个 (含) 到末尾

        索引越界会报错,但是切片会自动处理越界索引:

word = 'Python'
print(word[4:42])  
print(word[42:])  

        Python 字符串不能修改。因此,为字符串中某个索引位置赋值会报错,要生成不同的字符串,应新建一个字符串:

word = 'Python'
print('J' + word[1:])
print(word[:2] + 'py')

3.6 长度

        内置函数 len() 返回字符串的长度:

s = 'supercalifragilisticexpialidocious'
print(len(s))

4 列表

4.1 定义

        Python 支持多种 复合 数据类型,可将不同值组合在一起。最常用的 列表 ,是用方括号标注,逗号分隔的一组值。列表 可以包含不同类型的元素,但一般情况下,各个元素的类型相同。和字符串一样,列表也支持索引和切片:

squares = [1, 4, 9, 16, 25]
print(squares)
print(squares[0])  # 索引操作将返回条目
print(squares[-3:])  # 切片操作将返回一个新列表

4.2 添加与合并

        列表内容可以改变,还支持合并操作,你也可以在通过使用 list.append() 方法,在列表末尾添加新条目:

squares = [1, 4, 9, 16, 25]
squares[2] = 36
print(squares)
merged = squares + [36, 49, 64, 81, 100]
print(merged)
merged.append(121)
print(merged)

4.3 浅拷贝

        Python 中的简单赋值绝不会复制数据。 当你将一个列表赋值给一个变量时,该变量将引用 现有的列表。你通过一个变量对列表所做的任何更改都会被引用它的所有其他变量看到。:

rgb = ["Red", "Green", "Blue"]
rgba = rgb
print(id(rgb) == id(rgba))  # 它们指向同一个对象
rgba.append("Alph")
print(rgb)

        切片操作返回包含请求元素的新列表。为切片赋值可以改变列表大小,甚至清空整个列表:

letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
print(letters)
# 替换一些值
letters[2:5] = ['C', 'D', 'E']
print(letters)
# 现在移除它们
letters[2:5] = []
print(letters)
# 通过用一个空列表替代所有元素来清空列表
letters[:] = []
print(letters)

4.4 长度与嵌套 

        内置函数 len() 也支持列表:

letters = ['a', 'b', 'c', 'd']
print(len(letters))

还可以嵌套列表(创建包含其他列表的列表),例如:

a = ['a', 'b', 'c']
n = [1, 2, 3]
x = [a, n]
print(x)

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

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

相关文章

加载Tokenizer和基础模型的解析及文件介绍:from_pretrained到底加载了什么?

加载Tokenizer和基础模型的解析及文件介绍 在使用Hugging Face的transformers库加载Tokenizer和基础模型时,涉及到许多文件的调用和解析。这篇博客将详细介绍这些文件的功能和它们在加载过程中的作用,同时结合代码片段进行解析。 下图是我本地下载好模…

Excel批量设置行高,Excel表格设置自动换行后打印显示不全,Excel表格设置最合适的行高后打印显示不全,完美解决方案!!!

文章目录 说个问题(很严重!!!)写个方案会Python看这里Python环境搭建不存在多行合并存在多行合并 不会Python看这里 说个问题(很严重!!!) 平时处理Excel表格…

goview——vue3+vite——数据大屏配置系统

低代码数据大屏配置系统: 数据来源是可以动态api配置的: 配置上面的api接口后,在数据过滤中进行数据格式的转化。 以上内容,来源于https://gitee.com/dromara/go-view/tree/master-fetch/ 后端代码如下,需要更改…

ADC相关算法以及热敏电阻测温

目录 前言 一、平均值滤波算法 二、快速排序算法的使用 三、中位值滤波算法 四、二分查找法 4.1 二分查找法查找某个元素是否存在 4.2 二分查找法查找接近目标数值的元素的下标 五、NTC热敏电阻实现测温 5.1 分层设计 5.2 软件流程图 ​编辑 5.3 API接口及数据结构 5…

计算机的错误计算(一百九十四)

摘要 用两个大模型计算 其中,一个大模型通过化简,得出正确结果 0;而另外一个在化简过程中出现错误,得出了错误结果。 例1. 计算 下面是一个大模型的推导化简过程。 以上为一个大模型的回答。 下面是另外一个大模型的回复。 点评…

任意文件包含漏洞原理解析及演示

原理 文件包含漏洞:即file inclusion,意思是文件包含,是指当服务器开启allow_url_include选项时,就可以通过PHP的某些特性函数(include(),require()和include_once(),requir_once())…

Linux系统之tree命令的基本使用

Linux系统之tree命令的基本使用 一、tree命令介绍二、tree工具安装三、tree命令帮助3.1 查询帮助信息3.2 tree命令帮助解释 四、tree命令的基本使用4.1 直接使用4.2 *限制显示的层级4.3 仅显示目录4.4 不显示隐藏文件4.5 显示文件大小4.6 彩色输出4.7 输出到文件4.8 输出不同格…

微信小程序性能优化、分包

性能优化是任何应用开发中的重要组成部分,尤其是在移动环境中。对于微信小程序而言,随着用户量的增加和应用功能的丰富,性能优化显得尤为关键。良好的性能不仅提升用户体验,还能增加用户留存率和应用的使用频率。我们将探讨如何在…

【星海随笔】删除ceph

cephadm shell ceph osd set noout ceph osd set norecover ceph osd set norebalance ceph osd set nobackfill ceph osd set nodown ceph osd set pause参考文献: https://blog.csdn.net/lyf0327/article/details/90294011 systemctl stop ceph-osd.targetyum re…

Unity游戏环境交互系统

概述 交互功能使用同一个按钮或按钮列表,在不同情况下显示不同的内容,按下执行不同的操作。 按选项个数分类 环境交互系统可分为两种,单选项交互,一般使用射线检测;多选项交互,一般使用范围检测。第一人…

DVWA安装

这里讲的很清楚,如果是win10的话可能会出现端口80占用的情况, 使用管理员身份运行 cmdnet stop http //停止系统http服务sc config http start disabled //禁用服务的自动启动,此处注意等号后面的空格不可少

Oracle考试多少分算通过?

OCP和OCM认证的考试及格分数并不是固定的,而是根据考试的难度和考生的整体表现来确定。对于OCP认证,考生需要全面掌握考试要求的知识和技能,并在考试中表现出色才有可能通过。而对于OCM认证,考生则需要在每个模块中都达到一定的水…

18_HTML5 Web IndexedDB 数据库 --[HTML5 API 学习之旅]

HTML5 Web IndexedDB API 是一种在用户浏览器中存储大量结构化数据的机制,它允许存储和检索键值对,其中键可以是任何有效的JavaScript对象。IndexedDB 主要用于需要复杂查询的数据密集型Web应用。 IndexedDB 的特点: HTML5 Web IndexedDB A…

【Seata】分布式事务问题和理论基础

目录 1.分布式事务问题 1.1本地事务 1.2分布式事务 2.理论基础 2.1CAP定理 2.1.1一致性 2.1.2可用性 2.1.3分区容错 2.1.4矛盾 2.2BASE理论 2.3解决分布式事务的思路 1.分布式事务问题 1.1本地事务 本地事务,也就是传统的单机事务。在传统数据库事务中…

【数据库初阶】Linux中库的基础操作

🎉博主首页: 有趣的中国人 🎉专栏首页: 数据库初阶 🎉其它专栏: C初阶 | C进阶 | 初阶数据结构 亲爱的小伙伴们,大家好!在这篇文章中,我们将深入浅出地为大家讲解 Linux…

数据结构与算法Python版 图

文章目录 一、图二、抽象数据类型图三、图的实现-邻接列表法 一、图 表示图的英文单词 painting:用画刷画的油画drawing:用硬笔画的素描/线条画picture:真实形象所反映的画,如照片等,如take pictureimage&#xff1a…

Word表格另起一页解决办法

Word表格另起一页解决办法 表格设置根据内容自动调整,取消指定高度第1步 第2步

Python数据可视化案例——折线图

目录 json介绍: Pyecharts介绍 安装pyecharts包? 构建一个基础的折线图 配置全局配置项 综合案例: 使用工具对数据进行查看?: 数据处理 json介绍: json是一种轻量级的数据交互格式,采用完全独立于编程语言的…

【Seata】seata的部署和集成

一、部署Seata的tc-server 1.下载 首先我们要下载seata-server包,地址在http://seata.io/zh-cn/blog/download.html 当然,课前资料也准备好了: 2.解压 在非中文目录解压缩这个zip包,其目录结构如下: 3.修改配置 修…

链表 之 无头结点【哨兵位】单向非循环链表【单链表】增删改查 等方法

系列文章目录 🎈 🎈 我的CSDN主页:OTWOL的主页,欢迎!!!👋🏼👋🏼 🎉🎉我的C语言初阶合集:C语言初阶合集,希望能…