当前位置: 首页 > news >正文

Python学习笔记

前言:又从仓库翻出来了一些以前总结的文档,以下内容是我初学Python时网上找的或是图书馆借书抄写的笔记,现在再看有点零散不成体系,但是也还是纪念一下子吧。

Python学习笔记

对于初学编程的人来说,Python可以缩短编程语言的时间和降低学习编程的难度。

1.Python的基本常识

字典:用dict创建,用大括号表示的,python中唯一的映射结构就是字典对象。键必须不可变,只能由数、字符串和元组充当,不能用列表。

序列:包括字符串、列表和元组

字符串:用str创建,不可变对象类型。单引号和双引号都可以创建。

列表:用list创建,使用矩阵[]表示,相当于matlab里面的矩阵,列表中的数据前包含后不包含;不同于矩阵的一点是:列表的项不需要具有相同的类型,访问列表的索引操作要用矩阵[]。列表嵌套可以构建矩阵,[[]],行号以及列标的位置都是从0开始的。

元组:用tuple创建元组,使用小括号()表示,元组中的数据不可以被改变,相当于matlab里面的元胞数组,主要功能是存储数据,元组相当于只读列表。元组可以在字典中被用作“键”,但是列表不行。元组中的元素值是不允许删除的,但是可以使用del删除整个元组。不能将元组的值赋给其他的变量。

集合:用set创建,用大括号{}表示。集合里面的元素是不重复的数。集合中的元素是无序排列的,所以集合不能通过数字进行索引。集合不能嵌套集合。

注释使用符号:单行使用#,多行注释使用三个单引号

Zip函数相当于合并两个矩阵

定义函数:matlab中使用funcion,python中使用def

Python中存在各种各样的数据库可以直接调用用于数据处理,调用各个数据库中的函数用于程序编写。Python编程的特点是可以一边编辑一边执行语句,可以记录每一步程序的输出结果,而不像matlab一样需要完整的程序代码才能得到最后的结果。

序列对象:字符串和元组,不能修改指定索引位置的值

Python的交互环境(shell)相当于matlab的命令行窗口,在交互环境下编码有利于检验每一段代码的正确性,因为能够及时观察到输出结果。

2.函数

Lambda被称为匿名函数,是一种以表达式形式生成函数的方法。def常用来设计功能复杂的一般性函数,而Lambda用于简单的函数,以适应更灵活的应用,也被称为函数功能速写。Lambda定义的函数没有函数名,生成的是一个表达式形式的无名函数,表达式的结果是Lambda的返回值。Lambda函数可以赋值给一个变量,或者作为列表常量,还可以作为参数的形式出现在一般函数调用中。Lambda还经常与map、filter和reduce等内置函数联合使用。

3.模块(module)

Python程序的顶层结构是模块。模块是程序组织的高级单位,用于实现数据和代码的封装。一个Python文件就可以视作一个模块,模块提供了将独立文件连接构建更大和更复杂程序的架构及方式。这种模块化的架构提高了代码的重用性,方便实现数据共享。

要获得对一个模块中变量、方法(函数)的访问权,第一步是导入模块。在一个模块中导入其他模块的语句有mport和from两条。

创建模块文件等同于编辑一个python程序。程序的设计目的是运行,而模块的设计目的是由其他程序导入并使用。

4.包

模块的集合:包。包是一个目录,其中包含一组模块和一个_int_.py文件(记录该目录中的所有.py文件)。

Python作为一个开源软件,除了标准库外,网上还有很多第三方模块包。例如,在科学和工程计算方面,第三方包NumPy提供了高效的n维数组,基本的线性代数函数和傅里叶变换函数等;SciPy包提供了用于统计学计算,信号与图像处理,遗传算法等领域运算的函数和工具。这两个包都可以从www.scipy.org处获取。此外,如wxPython—Python语言的一种优秀的GUI图形库。

5.类

面向对象程序设计(OPP)的基本思想是将一组对象的公共属性和方法封装为类。类是包括函数和变量相互作用的一个整体。

类名的首字母一般要大写。类方法包括了特殊的self参数,是对实例自身的引言。Python支持3种方法,即实例方法、类方法和静态方法。实例方法属于给定类的实例,通过实例或self调用;类方法需要将类本身作为操作对象才能调用;静态方法相当于类中的一个普通函数,也只能通过类来调用。

一个好的封装应该尽量让实例内部的属性不被外部访问。如果希望实例属性不被外部访问,可以把属性的名称前面加上两个下划线_ 。在Python中,实例的变量名如果以 _开头,就变成了一个私有变量(private),只有内部成员可以访问,外部不能访问。

Python以类的方式管理数据。

6.数据结构与算法

程序设计包括以下几个部分:(1)问题分析;(2)算法设计;(3)程序编写;(4)对源程序进行编辑、编译和连接;(5)运行程序,分析结果;(6)文档编写。

著名计算机科学家沃思提出一个公式:程序=数据结构+算法。其中,算法解决“如何操作数据”的问题。数据结构解决“如何描述数据”的问题,指定数据的类型和数据的组织形式。数据结构在计算机学科中具有核心地位。

算法是通过对一定规范的输入进行处理,在有限时间内获得所要求的输出的整个过程。算法与具体的程序语音无关。

Python语言的学习大致分为以下两个方面:
(1)Python语言本身的语法以及编程环境的掌握;
(2)算法的学习。

面向过程(OP):按照事件发展过程进行,把解决问题的步骤列出,然后一步步执行。
面向对象(OO):把与问题相关的数据提取出来,将具有相同属性的事物抽象为“类”,设计出“类”的方法,程序执行时,将“类”实例化为“对象”,调用“类”的方法解决问题。

SQL:结构化查询语言,是操作数据库的工业标准语言,作为通用的、专门操作数据库的语言,SQL可以确切指定想要检索的记录以及按什么顺序检索。
MySQL:是当今最流行的关系型数据库管理系统,作为开源软件,MySQL体积小,采用关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,具有较快的存取速度和较高的灵活性。

计算思维:运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。

程序设计:给出解决待定问题程序的过程,是设计、编制、调试程序的方法和过程。程序设计通常分为问题分析、算法设计、程序编写、程序运行、结果分析和文档编写等阶段。
算法效率的三种分析方法:(1)最坏的情况。(2)最好情况。(3)平均情况。
在面向对象的方法中,类是一组具有共同特性的所有对象成员的抽象描述。

6.1算法

在这里插入图片描述

算法的核心是创建问题抽象的模型和明确求解目标,之后可以根据具体问题选择不同的模式和方法完成算法的设计。

计算机算法是程序的灵魂。先有算法,再有程序。当一个算法使用计算机程序语言描述时就是程序。

三种基本控制机构:顺序、选择和重复

算法是编程的核心,就像一台计算机的CPU,算法的好坏决定了一个系统的效率高低。

http://www.lryc.cn/news/1614.html

相关文章:

  • 最适合入门的100个深度学习实战项目
  • AssertionError: 618 columns passed, passed data had 508 columns【已解决】
  • 166_技巧_Power BI 窗口函数处理连续发生业务问题
  • 电子科技大学人工智能期末复习笔记(五):机器学习
  • 使用DDD指导业务设计的总结思考
  • 面试官问:如何确保缓存和数据库的一致性?
  • 16.数据库Redis
  • 【Redis高级-集群分片】
  • CSDN - CSDN27题解
  • docker拉取mysql
  • 在Linux上安装Python3
  • 23 种设计模式的通俗解释,看完秒懂
  • 如何做好需求管理?经验方法、模型、工具
  • 怎么用期货做风险对冲(如何利用期货对冲风险)
  • C++标准模板库type_traits源码剖析
  • Python获取公众号(pc客户端)数据,使用Fiddler抓包工具
  • Maven进阶
  • AXI实战(一)-为AXI总线搭建简单的仿真测试环境
  • 数据库管理-第五十六期 监控(20230210)
  • 测试开发,测试架构师为什么能拿50 60k呢需要掌握哪些技能呢
  • Miniblink 入门
  • [python入门㊷] - python存储数据
  • Little Fighter:旺角——NFT 系列来袭!
  • 基础篇:01-微服务概述
  • TC358775XBG替代方案|完美替代 TC358775XBG替代方案|低BOM成本DSI转LVDS方案CS5518
  • Android开发
  • virtualbox虚拟机导入到vmware esxi虚拟机
  • 如何使用命名空间管理C++代码
  • 海思3559:BT656调试笔记
  • reactor之hooks