工匠回忆(一)

不久之前看过《python工匠》,腾讯大佬朱磊写的,后来一段时间零零散散也会翻开看看,强烈推荐!!!

1、变量注释

  变量与注释是最接近自然语言的东西,把变量与注释搞好,同样一段代码,却带来两种截然不同的体验

  1.1、变量开辟的必要性

  1.2、变量注意靠近使用

  1.3、注意变量描述性要强、同时注意其长度

  1.4、变量的命名要突出类型

  1.5、注释不是代码的翻译,要传达代码无法传达的信息(eg:这一段为什么要这么写)

  1.6、先写注释,后写代码

  1.7、注释最好不要用于屏蔽代码,已屏蔽的只会增加阅读负担

2、数值字符串

  2.1、字符的分割

工匠回忆(一)

   2.2、判断字符串是不是纯数字

工匠回忆(一)

   2.3、字符串的拼接

  用timeit比较+连接符的运行时间,我本地相差还是比较大的,书中相差无几

  2.4、布尔类型是整数类型的派生

1 print(int(True))

  基于这个特性,结合聚合函数可以计算一个序列中的偶数的个数

 

3、容器类型

  了解容器的底层实现,是非常重要的,有利于我们编出高效的代码

  1、列表

    列表推导式(不要写过于复杂的条件表达式、条件表达式用于生成全新的集合)

·    1.1、重要的编程思维,按需返回,而非一次性返回,使用生成器可以实现,按需返回可以提高代码的执行效率,节约内存

     1.2、在列表的开头插入元素,其后的元素都要向后移动,其时间复杂度是O(N),相比而言,可以使用队列,队列是一个双向链表,其时间复杂度是O(1)

  2、元组

    无元组推导式,这里引出命名元组(有两种实现方式),要注意区分和数据类的差别

  3、字典

    3.6及其以后都变成有序的,有序字典可用于去重并保持序列中元素顺序保持不变

1 from collections import OrderedDict
2 
3 a = [45, 6, 23, 145, 45, 90, 6]
4 result = OrderedDict.fromkeys(a).keys()
5 print(result)

  4、集合

    集合支持求差集、并集,可以是运算符也可以是方法

  4.1、在集合中查找成员元素,其原理很简单,集合的底层是基于哈希表数据结构的,给出一个元素,计算他的哈希值,然后在哈希表中去寻找

 

  在这一章节,自定义一种字典数据结构,需要继承抽象类中的MutableMapping

工匠回忆(一)

 

原文链接:https://www.cnblogs.com/shixiaogu/p/17366625.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:工匠回忆(一) - Python技术站

(0)
上一篇 2023年5月4日
下一篇 2023年5月4日

相关文章

  • Python实现快速计算24点游戏的示例代码

    Python是一种广泛应用于计算机编程的高级编程语言,拥有丰富的开源库和易学易用的语法特性。运用Python可以实现各种有趣的算法和游戏,其中之一就是24点游戏。下面,我们将详细讲解Python实现快速计算24点游戏的示例代码的完整攻略。 环境配置 在开始编写代码之前,需要先确保我们的计算机安装了Python的开发环境和使用的IDE或文本编辑器。在Windo…

    python 2023年6月3日
    00
  • Python 推导式、生成器与切片问题解决思路

    Python 推导式、生成器与切片是Python编程中非常常用的语法和技巧。以下是针对这些问题的完整攻略: Python 推导式 Python 推导式是一种快速生成数据结构的方法,包括列表推导式、字典推导式和集合推导式。它们的格式都比较类似,主要由两个部分组成:表达式和迭代器。其中,表达式是将迭代器中的元素进行操作的计算式子,而迭代器可以是列表、字典、集合等…

    python 2023年6月3日
    00
  • Python字符串编码转换 encode()和decode()方法详细说明

    Python 是一种多语言支持的编程语言,因此要正确地处理多种语言字符集,不可避免地需要使用字符串编码转换。在 Python 中,字符串的编码默认是 Unicode 编码,因此需要使用 encode() 方法将其转换为其他编码,如gbk、utf-8等;同时,decode() 方法将其他编码格式的字符串转换为 Unicode 编码。 1. encode() 方…

    python 2023年5月20日
    00
  • Python drawContours 方法对应用的图像没有任何作用(OpenCV)

    【问题标题】:Python drawContours method does not anything on the image applied (OpenCV)Python drawContours 方法对应用的图像没有任何作用(OpenCV) 【发布时间】:2023-04-04 09:17:01 【问题描述】: 我正在尝试在我的测试图像周围绘制轮廓。我在…

    Python开发 2023年4月6日
    00
  • python import模块时有错误红线的原因

    当我们在Python中导入模块时,有时会出现错误红线,这通常是由于以下原因之一引起的: 模块不存在或路径不正确 模块中存在语法错误。 模块中存在行时错误。 以下是解决这些问题方法: 模块不存在或路径不正确 当我们导入模块时,如果模块不存在或路径不正确,就会出现错误红线。是解决这个问题的方法: 检查模块存在。 检查模块路径是否正确。 例如,我们可以使用以下代码…

    python 2023年5月13日
    00
  • 详解python使用金山词霸的翻译功能(调试工具断点的使用)

    详解python使用金山词霸的翻译功能(调试工具断点的使用) 在进行Python编程时,需要进行中文与英文之间的翻译,这时可以使用金山词霸的翻译功能来解决翻译问题。本文将会详细讲解如何在Python中使用金山词霸翻译功能,并辅以调试工具断点的使用进行说明。 第一步:导入需要的模块 首先,需要导入使用的模块requests和json。其中,requests模块…

    python 2023年5月13日
    00
  • python自动发送邮件脚本

    为了让大家更好地了解“python自动发送邮件脚本”的完整攻略,我将为大家提供以下内容: 概述 “python自动发送邮件脚本”是基于Python编写的一种自动化脚本,可以实现程序自动向指定的邮箱发送邮件。它可以方便地用于各种自动化操作,比如定时发送邮件、定时备份数据等。 步骤 1. 准备邮箱账户 首先,我们需要准备好发送邮件的邮箱账户,这个账户可以是任何支…

    python 2023年5月19日
    00
  • python破解bilibili滑动验证码登录功能

    破解Bilibili滑动验证码登录功能是一个非常有趣的应用场景,可以帮助我们更好地理解验证码的工作原理。本攻略将介绍Python破解Bilibili滑动验证码登录功能的完整攻略,包括数据获取、数据处理、数据分析和示例。 步骤1:获取数据 在Python中,我们可以使用requests库获取网页数据。以下是获取Bilibili登录页面的示例: import r…

    python 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部