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

1694_week1_MIT使用Python编程学习手记1

全部学习汇总: GreyZhang/python_basic: My learning notes about python. (github.com)

首先说明一下,这部分信息的整理只是我个人的理解。由于自己的知识功底以及英语水准,很可能会有大量的疏漏。再此,我只想把自己学习时候的一点收获整理分享一下。如果能够给别人一点点帮助,荣幸之至。如果有错误,也请予以斧正。如果感觉我有描述不清的,当然也可以跟我邮件交流。以下是我的联系方式:

Email : greyzhang@126.com

第一周的课程其实更多的在于科普,讲解一部分简单的概念。有点学习之前的导语的意思,主要介绍一下这门课程的一些目标。带着目标去学习后面的课程,可能收获会跟自己的探索式学习相比大不一样。

内容主要分为四部分:计算机的功能、机器思维、编程艺术、Python简介。

计算机功能:

简单来说就是两个功能,计算与存储。

计算的速度自然是快捷无比,现在的计算机普遍都能够达到多少G HZ的主频。常用的计算机运算速度快到真的是难以想象,而我之前确实是也没有做过相应的计算。拿两个例子来说明一下计算机的运算速度吧!例子1:从你把台灯的开关按下到电把台灯点亮,PC大约可以执行2个指令。例子2:把一个球从1米的高度扔出到它落到地面,PC能够执行10亿条指令。这速度确实是足够惊人,而数据可以很容易计算出。

存储相对来说简单,计算机能够把计算结果存储下来以备你后面访问。

计算机思维:

  1. 能够把要做的事情分解描述
  2. 具有分支判断功能
  3. 制定出一定的规则让计算机按照相应的步骤执行
  4. 适用于解决“如何实现XXX?”这种模式的问题而不适用于去解决“XXX是什么?”的问题。

编程的艺术:

掌握编程的艺术需要掌握两个方面的内容:一个是编程语言另一个是算法。

关于编程语言,示范采用Python。根据图灵实现(Turning Complete),一种处理方式用一种编程语言实现一定也能够用另一种编程语言实现。因此,编程语言的使用其实是一种表面功夫,真正的精髓是对计算机科学本质的了解。

关于算法,其实就是利用上面提到的计算机思维来思考问题把问题描述出来。描述的方式可能会有多种,但是优秀的程序应该有清晰、高效的算法。

Python简介:

从程序代码到可执行程序通常有两种模式。

第一种模式:代码——检查器——解析器——输出

第二种模式:代码——检查器——编译器——目标代码——解析器——输出

低级语言一般使用类似于内部控制单元行为的指令集,检查器确认语法,解析器按照简单的指令序列执行程序。

高级语言使用了更加抽象的描述,在一种编译语言中。这种抽象描述先被转变成低级的指令然后再进行处理。

而解析型语言,特殊的程序把代码转换成内部的数据结构,然后解析器把程序一步步转换成低级指令执行。而Python,属于解析型编程语言。

编程语言一般都具有的特性:有固定的语法、语义唯一、支持分支跳转的方法。Python的语法比较简单但是在语法中包含了特别的缩进检查机制,提供了while、for、if等分支循环。

以下是简单的编程操作示范:

>>> 123 + 456

579

>>> 'abc' + 'ghj'

'abcghj'

>>> 9/2

4

>>> 9/2.0

4.5

>>> 2 * 3

6

>>> 'abc' * 3

'abcabcabc'

>>> 3 > 1

True

>>> 3 == 3

True

>>> 3 == 2

False

这些指令在Python的解析器shell窗口输入后立即会出现执行结果。而把这些按顺序写入到一个文件再通过解析器解析执行,这已经就是一种程序文件。通常情况下,针对解析语言的这种指令操作集合文件就被称之为脚本。

结束语:

最近在猛啃PowerPC的底层驱动,包括通讯加各个方面的驱动。平时的时间特紧张,工作其实挺忙的,也小有压力!不过有些东西确实是在这段时间让我有了很多改变,遇到后觉得相见恨晚,我还是想把这些东西分享一下!本来自己的能力就不如大家,这让我觉得很安心,因为走在最后的人永远也不用担心被在前面奔跑的人再次超越!哈哈,自嘲一下!

学习期间,我把这些知识信息绘制成了一张简单的思维导图,按照课程的介绍。后来按照这张图写这篇手记的时候我调整了一下层级结构,感觉调整后说明会好一些。原始的思维导图一并附上,当做最后的总结吧!

相关文章:

1694_week1_MIT使用Python编程学习手记1

全部学习汇总: GreyZhang/python_basic: My learning notes about python. (github.com) 首先说明一下,这部分信息的整理只是我个人的理解。由于自己的知识功底以及英语水准,很可能会有大量的疏漏。再此,我只想把自己学习时候的一…...

第二十一章 光源

光源是每个场景必不可少的部分,光源除了能够照亮场景之外,还可以产生阴影效果。 Unity中分为四种光源类型: 1. 方向光:Directional Light 用于模拟太阳光,方向光任何地方都能照射到。 2. 点光源:Point L…...

CVPR 2023 超分辨率(super-resolution)方向上接收论文总结

目录 CVPR 2023图像超分任意尺度超分盲超分 视频超分特殊场景 总结参考资料 CVPR 2023 官网链接:https://cvpr2023.thecvf.com/ 会议时间:2023年6月18日-6月22日,加拿大温哥华 CVPR 2023统计数据: 提交:9155篇论文接…...

Python 基于 Django 的学生成绩管理系统,可视化界面(附源码,教程)

1简介 对于学生成绩管理系统,充分运用现代化的信息技术手段,对于学生成绩信息管理发展的趋势就是信息化,信息化时代下的信息管理,需要深化信息管理体制与手段的改革,充分运用信息化手段来全方位的进行学生成绩管理系统…...

第二弹进阶吴恩达 ChatGPT Prompt 技巧

第一弹笔记在这里: 总结吴恩达 ChatGPT Prompt 免费课程 今天分享第二弹,进阶篇。 第一点,任务序列化。 通常看完一篇长文,脑子里往往充满无数疑问。急切想知道所有答案,必须列一个问题清单。对话式问法,对…...

约瑟夫环问题

约瑟夫问题 题目描述 n n n 个人围成一圈,从第一个人开始报数,数到 m m m 的人出列,再由下一个人重新从 1 1 1 开始报数,数到 m m m 的人再出圈,依次类推,直到所有的人都出圈,请输出依次出圈人的编号。…...

JavaScript中的异步编程

当我们在编写JavaScript代码时,经常会遇到需要执行长时间运行的任务的情况,例如从服务器获取数据或进行复杂的计算。在这些情况下,我们不希望阻塞用户界面,因为这会使网站看起来卡顿,甚至无响应。为了避免这种情况&…...

奥斯汀独家对话|从机构的「拉扯」中成长的美国加密监管

‍前言 4月25日,在美国得克萨斯州的首府奥斯汀,这座充满活力和创造力的城市,欧科云链研究院与来自哥伦比亚商学院的Austin Campbell教授就美国加密监管以及其相关话题进行了一次深入探讨。双方讨论了美国整体的监管问题、监管逻辑、最新的稳…...

PostgreSQL16中pg_dump的LZ4和ZSTD压缩

PostgreSQL16中pg_dump的LZ4和ZSTD压缩 pg_dump压缩lz4和zstd LZ4和ZSTD压缩算法合入了PG16。LZ4补丁的作者是Georgios Kokolatos。由Tomas Vondra提交。由Michael Paquier、Rachel Heaton、Justin Pryzby、Shi Yu 和 Tomas Vondra 审阅。提交消息是: Expand pg_dum…...

网络安全基础入门学习路线

在大多数的思维里总觉得学习网络安全得先收集资料、学习编程、学习计算机基础,这样不是不可以,但是这样学效率太低了! 你要知道网络安全是一门技术,任何技术的学习一定是以实践为主的。也就是说很多的理论知识其实是可以在实践中…...

错误检测技术:奇偶校验

文章目录 参考描述奇校验与偶校验错误检测技术奇偶校验 奇校验与偶校验奇校验偶校验局限性漏网之鱼 奇偶校验的三种形式水平奇偶校验垂直奇偶校验水平垂直奇偶校验优劣漏网之鱼 参考 项目描述搜索引擎Google 、Bing百度百科奇偶校验计算机网络 基础与应用(微课版&a…...

语义版本控制规范(SemVer)

Semantic Versioning 2.0.0 官网 给出一个版本号MAJOR.MINOR.PATCH,增加如下: MAJOR version 进行不兼容的API更改时MINOR version 当您以向后兼容的方式添加功能时PATCH version 当您进行向后兼容的错误修复时 预发布(pre-release )和构建元数据的附…...

基于Flask的留言板的设计与实现

这是《Flask Web开发实战:入门、进阶与原理解析》这本书中的一个小项目,我在学习后根据书中的教程实现了留言板的功能,并结合我的思路将代码做了一些调整。 下面这是实现后的展示图片 文章目录 设计思路项目代码exts.pymodels.pyforms.pyerrors.pycomma…...

vmware 详细安装教程

一.VM是什么? VMware Workstation是一个“虚拟 PC”软件。它使你可以在一台机器上同时运行二个或更多 Windows、DOS、LINUX 系统。与“多启动”系统相比,VMWare 采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需…...

Python 爬虫工具

Python3 默认提供了urllib库,可以爬取网页信息,但其中确实有不方便的地方,如:处理网页验证和Cookies,以及Hander头信息处理。 为了更加方便处理,有了更为强大的库 urllib3 和 requests, 本节会分别介绍一下…...

再也不去字节跳动面试了,6年测开经验的真实面试经历.....

前几天我朋友跟我吐苦水,这波面试又把他打击到了,做了快6年软件测试员。。。为了进大厂,也花了很多时间和精力在面试准备上,也刷了很多题。但题刷多了之后有点怀疑人生,不知道刷的这些题在之后的工作中能不能用到&…...

第十五章 角色移动旋转实例

本章节我们创建一个“RoleDemoProject”工程,然后导入我们之前创建地形章节中的“TerrainDemo.unitypackage”资源包,这个场景很大,大家需要调整场景视角才能看清。 接下来,我们添加一个人物模型,操作方式就是将模型文…...

数据湖Data Lakehouse支持行级更改的策略:COW、MOR、Delete+Insert

COW:写时复制,MOR:读时合并,Delete+Insert:保证同一个主键下仅存在一条记录,将更新操作转换为Delete操作和Insert操作 COW和MOR的对比如下图,而Delete+Insert在StarRocks主键模型中用到。 目前COW、MOR在三大开源数据湖项目的使用情况,如下图。 写入时复制【Copy-On…...

双亲委派机制的原理和作用

双亲委派机制,就必须弄清楚Java的类加载器。 什么是类加载器 Java类加载器(ClassLoader)是Java运行时环境(JRE)的一部分,负责动态的将Java类加载到Java虚拟机的内存空间。 类加载器有哪些 主要有三个: 引导类加载器(Bootstrap ClassLoade…...

mac免费杀毒软件哪个好用?如何清理mac系统需要垃圾

CleanMyMac x是一款功能强大的Mac系统优化清理工具,使用旨在帮助用户更加方便的清理您系统中的所有垃圾,从而加快电脑运行速度,保持最佳性能,更加稳定、流畅、快速!!! CleanMyMac X无疑是目前m…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

JVM垃圾回收机制全解析

Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...

Python如何给视频添加音频和字幕

在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

LangFlow技术架构分析

&#x1f527; LangFlow 的可视化技术栈 前端节点编辑器 底层框架&#xff1a;基于 &#xff08;一个现代化的 React 节点绘图库&#xff09; 功能&#xff1a; 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...

云安全与网络安全:核心区别与协同作用解析

在数字化转型的浪潮中&#xff0c;云安全与网络安全作为信息安全的两大支柱&#xff0c;常被混淆但本质不同。本文将从概念、责任分工、技术手段、威胁类型等维度深入解析两者的差异&#xff0c;并探讨它们的协同作用。 一、核心区别 定义与范围 网络安全&#xff1a;聚焦于保…...