Python基础教程:序列、输入与字符串格式化

需积分: 10 1 下载量 199 浏览量 更新于2024-09-11 收藏 14KB TXT 举报
"这是一份关于Python编程语言的基础学习笔记,涵盖了序列操作、输入输出、字符串格式化以及元组和列表的基本使用。" 在Python中,序列是一种基本的数据结构,包括字符串、列表、元组、Unicode字符缓冲对象和xrange对象。序列可以使用加号 (+) 进行合并,乘号 (*) 用于复制序列。例如,`a + b` 会合并两个序列 `a` 和 `b`,而 `a * n` 会将序列 `a` 自身复制 `n` 次。 Python中的切片操作是序列处理的重要部分。切片语法 `a[index1:index2]` 可以用来获取序列的一部分。其中,`index1` 和 `index2` 分别表示开始和结束的索引。当索引为正数时,`index1` 必须小于 `index2`,否则结果为空。相反,当索引为负数时,依然遵循 `index1 < index2` 的规则,但步长由两个索引值之差决定。例如,`a[0:10:2]` 会提取索引差为2的元素,即1, 3, 5, 7, 9。需要注意的是,这里的差指的是索引值的差,而非元素值的差。 `input()` 和 `raw_input()` 是Python中处理用户输入的函数。`input()` 会将用户输入视为表达式执行,只接受数字或加引号的字符串。而 `raw_input()` 直接返回输入的原始字符串,其返回类型为字符串。 在列表赋值时,若涉及切片并设置步长,替换的值需与被替换的值一一对应。如 `numbers[0:5:2]` 包含3和5,因此赋值时应为 `numbers[0:5:2] = [X1, x2]`。 元组与列表类似,但元组是不可变的。这意味着一旦创建,元组的元素不能被修改。元组可以用圆括号 () 表示,多个元素间用逗号隔开。元组也可以用于函数返回多个值,或者在不需要修改数据时作为数据结构使用。 字符串在Python中是不可变的,所以不能像列表一样通过切片赋值。字符串格式化通常使用百分号 (%) 语法,如 `%s` 代表字符串, `%d` 代表整数。转换说明符用于指示如何将后面的值插入到格式化字符串中。例如,`"%s %d" % ("hello", 123)` 会将 "hello" 和 123 插入到字符串中。 对于快速检查一个变量是否为字符串,可以尝试将其与空字符串连接:`variable + ''`。如果变量已经是字符串,这个操作不会抛出异常。 `Template` 类提供了一种安全的字符串格式化方法,可以防止代码注入。通过 `$` 符号或 `{}` 括号来标记需要替换的部分,如 `Template("Hello, $name!")`.replace(name="Alice")。 在格式字符串中,`%*+.-"` 等符号有特定含义。`*` 可以从元组中读取宽度,`+` 表示无论正负数都要显示符号,`.` 后面的数字表示精度,对于实数表示小数位数,对于字符串表示最大字段宽度。 这些知识点构成了Python初学者的基础知识体系,对理解Python的序列操作、输入输出、字符串格式化以及元组和列表的使用至关重要。