本文目录一览:
Python 基础知识全篇-字符串(Strings)
- 单引号和双引号 字符串可以包含在单引号或双引号中。这种灵活的方式可以让我们在字符串中包含引号。
- 当我们需要创建一个多行字符串的时候,可以用三个引号。如下所示:
example_string = """这是一个 多行字符串"""
- 改变大小写
你可以很方便地改变字符串的大小写。
最常见的大小写形式是全小写(lower)、首字母大写(title)和全大写(upper)。如下所示:
注意:初始字符串没有被改变。example_string.lower() example_string.title() example_string.upper()
- 连接字符串
字符串连接示例如下所示:
first_name = "John" last_name = "Doe" full_name = first_name + " " + last_name
- 格式化字符串简介
- 空白符
空白符通常指计算机能够发现但不可见的字符。诸如空格、制表符、换行符等。
空格很容易创建,基本上在你拥有计算机的时候就会打出空格符。制表符和换行符是由特殊字符连接组成的。
- "\t" 代表制表符
- "\n" 代表换行符 你可以将它们添加进字符串的任意部分。
- 去除空白符
有时候我们想去除掉字符串开始或者结尾的空白符。Python 中有一些方法可以帮我们做到这点。如下所示:
lstrip
:去除左侧开端的空白符rstrip
:去除右端结尾的空白符strip
:去除两端空白符 看一个更清晰的例子:
example_string = " Hello World " print(example_string.lstrip()) # 输出: "Hello World " print(example_string.rstrip()) # 输出: " Hello World" print(example_string.strip()) # 输出: "Hello World"
- 动手试一试
Someone Said
找一条自己喜欢的名言,存储在变量。结合适当的介绍打印出来。例如:
First Name Cases 将你的姓存储在一个变量中。分别用 lowercase、Titlecase、UPPERCASE 三种方式打印姓。quote = "Ken Thompson once said, 'One of my most productive days was throwing away 1000 lines of code'" print(quote)
Full Name 将你的名和姓存储在不同的变量中,连接它们并打印。last_name = "Doe" print(last_name.lower()) # 输出: doe print(last_name.title()) # 输出: Doe print(last_name.upper()) # 输出: DOE
Name Strip 将你的姓存储在变量中。在姓的前后两端至少各包含两种空白符。first_name = "John" last_name = "Doe" full_name = first_name + " " + last_name print(full_name)
last_name = " \t\nDoe\t\n " print(last_name) # 分别打印出去掉左侧空白符,右侧空白符,都去掉空白符的姓。 print(last_name.lstrip()) # 去除左侧空白符 print(last_name.rstrip()) # 去除右侧空白符 print(last_name.strip()) # 去除两侧空白符
你见过的最全面的Python重点知识总结
由于总结了太多的东西,所以篇幅有点长,这也是作者"缝缝补补"总结了好久的东西,强烈建议收藏再慢慢看~
- 不要在
WHERE
子句中的=
左边进行函数、算术运算或其他表达式运算,否则系统将可能无法正确使用索引。 - 应尽量避免在
WHERE
子句中对字段进行表达式操作,这将导致引擎放弃使用索引而进行全表扫描。 - 不适合键值较少的列(重复数据较多的列),比如:
SET
、ENUM
列就不适合(枚举类型ENUM
可以添加NULL
,并且默认的值会自动过滤空格;SET
和ENUM
类似,但只可以添加 64 个值)。 - 如果 MySQL 估计使用全表扫描要比使用索引快,则不使用索引。
常见设计模式
- 单例模式
- 工厂模式
- 构造模式
Python 实现各种数据结构
- 快速排序
- 选择排序
- 插入排序
- 归并排序
- 堆排序(
heapq
模块) - 栈
- 队列
- 二分查找
Python 基础知识全篇-列表(Lists)
- 示例
列表是元素的集合,存储在一个变量中。列表中存储的元素类型没有限制,下面是列表的一个简单例子。
fruits = ["apple", "banana", "cherry"]
- 命名和定义列表
因为列表是对象的集合,所以给它们一个复数的名称是很好的做法。如果列表中的每一项都是一个
car
,就命名列表为'cars'
。这样给你了一种直接的方式代表列表('cars'
),'dog'
指代列表项。 在 Python 中,用中括号定义一个列表。如下所示:fruits = ["apple", "banana", "cherry"]
- 访问列表元素
列表中的元素通过位置来标识,从零开始。访问列表中的第一个元素,如下所示:
括号中的数字为列表的索引(index)。因为列表索引从 0 开始,列表元素的索引总是比它的位置小。因此 Python 被称为 zero-indexed 语言(诸如 C、Java)。 因此访问第二个元素,我们需要用索引 1,以此类推。print(fruits[0]) # 输出: apple
- 访问列表中最后一个元素
访问列表中的最后一个元素,可以用索引
-1
。
访问倒数第二个、倒数第三个也可以用这种语法。但是你不能用一个绝对值大于列表长度的负数访问。print(fruits[-1]) # 输出: cherry
- 动手试一试
First List
在列表中存储
'python'
、'c'
、'java'
。利用它们的位置打印出列表元素值。
First Neat List 在列表中存储languages = ["python", "c", "java"] print(languages[0]) # 输出: python print(languages[1]) # 输出: c print(languages[2]) # 输出: java
'python'
、'c'
、'java'
,对每一项,打印一条关于它的语句。 你的语句可以简单的写成,'A nice programming language is value'
。
Your First List 定义一个自己的列表,包含 3 或 4 个元素,打印一条至少包含一项元素的语句。你的语句可以简单的写成,for lang in languages: print(f"A nice programming language is {lang}")
'One item in my list is a__.'
。items = ["book", "pen", "notebook"] print(f"One item in my list is a {items[0]}")
python中set的用法小结
Python 提供了常用的数据结构,其中之一就是 set
,Python 中的 set
是不支持索引的、值不能重复、无需插入的容器。
简单记录下 set
常用的操作函数:
- 新建一个 set:
会转成单个字符的值进行插入,结果是s = set("Hello") # 结果是 {'H', 'e', 'l', 'o'}
'H'
,'e'
,'l'
,'o'
,'l'
因为重复只能插入一次。 - 增加一个元素:
add()
:用于增加一个元素值s.add("a")
update([])
:用于增加多个元素值,参数为 list
注意如果用s.update(["b", "c"])
add
增加多个值,会报参数类型错误。
- 删除一个元素:
remove()
:用于删除一个set
中的元素,这个值在set
中必须存在,如果不存在的话,会引发KeyError
错误。s.remove("a")
discard()
:用于删除一个set
中的元素,这个值不必一定存在,不存在的情况下删除也不会触发错误。s.discard("a")
- 随机删除函数:
set
提供了一个pop()
函数,这个函数随机返回一个元素值,然后把这个值删除。如果set
为空,调用这个函数会返回KeyError
错误。s.pop()
- 清空函数:
s.clear()
- 测试单个元素在集合内是否存在:
使用
in
或者not in
:"a" in s
- 测试两个集合是否包含,子集操作:
issubset
:测试是否s1
中的每一个元素都在s2
中s1.issubset(s2)
issuperset
:测试是否s1
中的每一个元素都在s2
中s2.issuperset(s1)
- 集合的并集:
s1.union(s2) # 等价于 s1 | s2
- 集合的交集:
s1.intersection(s2)
- 其他操作:
s1.difference(s2)
:包含s1
中有,但是s2
没有的元素的集合。s1.symmetric_difference(s2)
:包含s1
和s2
中不相同的元素的集合。 以上只是一部分操作的描述,如果有错误,敬请指正。