前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python中常用的知识点

python中常用的知识点

作者头像
数据分析与统计学之美
发布2021-11-25 09:54:48
2310
发布2021-11-25 09:54:48
举报
文章被收录于专栏:Python+数据分析+可视化
1、列表的5中常用创建方式
1)用[ ]创建列表
代码语言:javascript
复制
a = [1,2,3]
display(a)

结果如下:

在这里插入图片描述
在这里插入图片描述
2)用list()函数创建列表
代码语言:javascript
复制
b = list("abcd")
display(b)

结果如下:

在这里插入图片描述
在这里插入图片描述
3)用range()函数创建整数列表
代码语言:javascript
复制
c = list(range(10))
display(c)

结果如下:

在这里插入图片描述
在这里插入图片描述
4)用列表推导式创建列表
代码语言:javascript
复制
d = [i for i in range(10)]
display(d)

结果如下:

在这里插入图片描述
在这里插入图片描述
5)用list()函数和[ ]创建空列表
代码语言:javascript
复制
e = list()
display(e)

f = []
display(f)

结果如下:

在这里插入图片描述
在这里插入图片描述
2、列表中推荐使用的列表元素添加函数
1)append():真正的在列表尾部添加元素,速度最快,推荐使用。
代码语言:javascript
复制
a = [3,1.43,True,"哈哈"]
b = []
display(id(b))

for i in a:
    b.append(i)
display(b)   
display(id(b))    

结果如下:

在这里插入图片描述
在这里插入图片描述

综上所示:我们发现在列表尾部添加元素后,b的存储地址前后并没有改变属于原地操作列表,这样的话对内存的开销较小。

2)extend()方法:将一个列表的元素,添加到另外一个列表元素的尾部。
代码语言:javascript
复制
a = ["我很好",4,5,6]
b = [1,2,3,"嘿嘿"]
display(b)
display(id(b))

b.extend(a)
display(b)
display(id(b))

结果如下:

在这里插入图片描述
在这里插入图片描述
3)下面这些知识点要注意使用
  • insert()、remove()、pop()、del()在涉及大量元素时,尽量避免使用。因为,这些操作会让列表元素进行大面积移动,影响处理速度。
  • 使用"+"、"*"这样的操作符扩展列表,也会使得列表存储地址前后发生改变,属于创建了新列表,增加了内存。在涉及大量元素时,不建议使用。
3、列表中元素排序函数比较:sorted(x)和x.sort()
1)sorted(x)函数
代码语言:javascript
复制
a = [20,10,40,30]
display(id(a))

b = sorted(a)
display(b)
display(id(b))

结果如下:

在这里插入图片描述
在这里插入图片描述
2)x.sort()函数
代码语言:javascript
复制
c = [50,10,100,30]
display(id(c))

c.sort()
display(c)
display(id(c))

结果如下:

在这里插入图片描述
在这里插入图片描述
3)结果分析
  • sorted()函数属于python内置函数,sort()函数属于列表对象中的一个方法。
  • x.sort()属于原地修改列表的排序方法,sorted(x)属于建立新列表的排序方法。
  • x.sort()由于是原地修改列表的排序方法,因此不能用其他变量去接收排序结果,sorted(x)属于建立新列表的排序方法,因此需要创建一个新的变量接收这个变量。
4、字典的5中常用创建方式
1)直接使用{ }创建字典;
代码语言:javascript
复制
a = {"name":"张三","age":18,"job":"teacher"}
display(a)

结果如下:

在这里插入图片描述
在这里插入图片描述
2)使用dict()函数创建字典;
代码语言:javascript
复制
b = dict(name="黄伟",age=18,job="teacher")
display(b)
#传入一个元组组成的列表
c = dict([("name","黄伟"),("age",18),("job","teacher")])
display(c)

结果如下:

在这里插入图片描述
在这里插入图片描述
3)zip()函数:利用两个列表创建字典;
代码语言:javascript
复制
list1 = ["name","age","job"]
list2 = ["黄伟",18,"teacher"]
d = dict(zip(list1,list2))
display(d)

结果如下:

在这里插入图片描述
在这里插入图片描述
4)使用{ }和dict()创建空字典;
代码语言:javascript
复制
e = {}
display(e)

f = dict()
display(f)

结果如下:

在这里插入图片描述
在这里插入图片描述
5)使用fromkeys()函数创建值为空的字典;
代码语言:javascript
复制
#传入一个由字典的"键"组成的列表;
list1 = ["name","age","job"]
g = dict.fromkeys(list1)
display(g)

结果如下:

在这里插入图片描述
在这里插入图片描述
5、字典元素的访问方式
1)get():强烈推荐的字典元素访问方式(这种方式最好最常用)
代码语言:javascript
复制
a = {"name":"张三","age":18,"job":"teacher"}
display(a)

display(a.get("name"))
display(a.get("weight"))

结果如下:

在这里插入图片描述
在这里插入图片描述
2)items():获取字典中的键值对;
代码语言:javascript
复制
a = {"name":"张三","age":18,"job":"teacher"}
display(a)
display(a.items)

for i in a.items():
    print(i)

结果如下:

在这里插入图片描述
在这里插入图片描述
3)keys():获取字典中所有的键;values():获取字典中所有的值;
代码语言:javascript
复制
a = {"name":"张三","age":18,"job":"teacher"}
display(a)

display(a.keys())
display(a.values())

结果如下:

在这里插入图片描述
在这里插入图片描述
6、python中使用"+"和使用"join"拼接字符串的性能比较
代码语言:javascript
复制
import time

t1 = time.time()
s = ""
for i in range(1000000):
    s += "哈哈"
t2 = time.time()
display("用时:" + str(t2-t1))

t3 = time.time()
l = []
for i in range(1000000):
    l.append("哈哈")
m = "".join(l)
t4 = time.time()
display("用时:" + str(t4-t3))

结果如下:

在这里插入图片描述
在这里插入图片描述

综上所述:进行字符串拼接,推荐使用"join"进行字符串拼接,少用"+"。

7、字符串驻留机制
1)字符串驻留机制的含义
  • Python支持字符串驻留机制,对于符合标识符的字符串(注意:仅仅包含下划线_、字母、数字),才会启用字符串驻留机制。此时,保存一份相同且不可变的字符串,不同的值被存在驻留池中,因此,他们还是同一个东西。
2)“is"和”=="的不同点
  • "=="用于判断两个对象的内容是否相同,只关注两个对象的值是否相等。
  • "is"是用于判断两个对象的内存地址是否相同,真正判断两个对象是不是同一个对象。
  • 因此,is的要求更高,不仅要求值一样,同时还要求对象内存地址也是一样。

操作如下:

代码语言:javascript
复制
p = 'ab#'
q = 'ab#'
display(id(p),id(q))

# 判断两个对象的值是不是相等;
display(p == q)

# 判断两个对象是不是同一个对象;
display(p is q)

结果如下:

在这里插入图片描述
在这里插入图片描述
3)检测字符串驻留机制
代码语言:javascript
复制
m = '12_abv'
n = '12_abv'
display(id(m))
display(id(n))
display(m == n)
display(m is n)

p = 'ab#'
q = 'ab#'
display(id(p))
display(id(q))
display(p == q)
display(p is q)

结果如下:

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/01/04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、列表的5中常用创建方式
  • 1)用[ ]创建列表
  • 2)用list()函数创建列表
  • 3)用range()函数创建整数列表
  • 4)用列表推导式创建列表
  • 5)用list()函数和[ ]创建空列表
  • 2、列表中推荐使用的列表元素添加函数
    • 1)append():真正的在列表尾部添加元素,速度最快,推荐使用。
      • 2)extend()方法:将一个列表的元素,添加到另外一个列表元素的尾部。
        • 3)下面这些知识点要注意使用
        • 3、列表中元素排序函数比较:sorted(x)和x.sort()
          • 1)sorted(x)函数
            • 2)x.sort()函数
              • 3)结果分析
              • 4、字典的5中常用创建方式
                • 1)直接使用{ }创建字典;
                  • 2)使用dict()函数创建字典;
                    • 3)zip()函数:利用两个列表创建字典;
                      • 4)使用{ }和dict()创建空字典;
                        • 5)使用fromkeys()函数创建值为空的字典;
                        • 5、字典元素的访问方式
                          • 1)get():强烈推荐的字典元素访问方式(这种方式最好最常用)
                            • 2)items():获取字典中的键值对;
                              • 3)keys():获取字典中所有的键;values():获取字典中所有的值;
                              • 6、python中使用"+"和使用"join"拼接字符串的性能比较
                              • 7、字符串驻留机制
                                • 1)字符串驻留机制的含义
                                  • 2)“is"和”=="的不同点
                                    • 3)检测字符串驻留机制
                                    领券
                                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档