MITx - 6.00.1x 笔记(5) Object Oriented Programming

Beginning Java Programming The Object-Oriented Approach-Wrox (2015) 立即下载

Object Oriented Programming-OOP

pyhon中一切都是对象,各种对象实例

  • 要将创建类和使用类中的实例区分开
  • 创建类涉及:定义类的名称,定义类的属性
  • 使用类涉及:创建该类的新实例,对该实例进行操作

Class instance

DefineClass

Method

useMethod

__str__方法, isinstance()方法
stringMethod
print
python special method names
specialOperations
adding_more_method

尽量不要直接调用class内部的属性,而是通过专门定义方法来调用,分开内部和外部,这样可以确保如果以后需要修改内部代码,不会影响外部的调用
InformationHiding

Generator

所有涉及yield的方法或程序都会调用generator生成器
Generators

generator 的next()方法会暂停或恢复程序进程

next

可以在循环中使用生成器
fenFib
nextFib

WhyGenerator
   
   
生成器能将计算一个长序列的概念和实际的计算过程明确分开
fixGradeClass
相比于通过[:]复制整个list,使用yield更高效


练习题笔记

>>> import string

>>> print string.ascii_lowercase
abcdefghijklmnopqrstuvwxyz

>>> print string.ascii_uppercase
ABCDEFGHIJKLMNOPQRSTUVWXYZ

>>> print string.punctuation
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~

>>> print string.digits
0123456789

Caesar’s code(恺撒密码)

Uni-App推送踩坑实录:从云函数URL化到后台推送失效,我都经历了什么 本文详细记录了Uni-App开发者在接入uni-push 2.0时遇到的推送失效问题,从云函数URL化到后台推送失效的完整排查过程。通过系统化分析和与官方沟通,最终找到解决方案,并分享了预防措施与最佳实践,帮助开发者避免类似问题。 阅读详情

相关推荐

SpringBoot+Maven打包实战:把项目变成SDK供其他团队调用

本文详细介绍了如何将SpringBoot项目改造并打包成可被其他项目依赖的SDK。通过调整Maven配置,剥离SpringBoot父依赖与启动类,并定制打包插件,最终生成标准的JAR依赖库,实现从“可执行应用”到“组件化SDK”的优雅转变,便于团队间功能复用。

assembly8low的博客 826

MITx - 6.00.1x 笔记(4) Good Programming Practices

Testing and Debugging 防御性编程 测试的几种情况 Bugs Debugging Exceptions and Assertions try except else finally Assertions 练习题笔记 7 Testing and Debugging 防御...

weixin_30276935的博客 186

岭回归的MATLAB步骤

MATLAB 实现框架,它涵盖了从数据导入到岭回归的步骤,包括计算共线性、使用 MAE、MSE、R²、MAPE 进行评价,以及绘制相应的可视化图表。

subject625Ruben的博客 1090

MITx - 6.00.1x 笔记(3) Structured Types

Structured Types Tuple 如果tuple中只有一个元素,需要加逗号“,”,否则不能被识别为tuple tuple中的元素不可被改变(string也是) 函数返回多个值时可以用tuple 使用tuple Lists # 删去list中元素的3种方法 list.del(list[index]) # 删去list中索引为index的元素 list.pop...

adan_journal 280

保姆级教程:用ESP32-S3点亮你的第一块ili9341触摸屏(附完整源码与避坑指南)

本文提供了一份详细的ESP32-S3与ili9341触摸屏的入门指南,涵盖硬件连接、环境配置、驱动补全、触摸校准及图形界面开发等关键步骤。特别针对新手常见问题提供解决方案,并附完整源码与避坑技巧,帮助开发者快速上手嵌入式图形界面开发。

weixin_26854829的博客 245

游戏开发实战:5种AOI算法对比(九宫格 vs 灯塔 vs 十字链表)

本文深入对比了游戏开发中五种主流AOI算法(九宫格、灯塔、十字链表等)的性能与适用场景,帮助开发者根据项目规模选择最优解决方案。通过详细的技术分析和实战数据,揭示不同算法在万人同屏等极端场景下的表现差异,为MMORPG等大型多人在线游戏提供关键性能优化指南。

weixin_29268385的博客 474

MITx - 6.00.1x 笔记(6) Algorithmic Complexity

计算的复杂性 程序运行的效率 Big O Notation 搜索算法和排序算法

adan_journal 614

php对接建行h5网页支付

php对接建行h5网页支付前言H5页面支付H5页面支付回调通知退款及其他的业务 前言 最近接到公司乙方要求,需要再支付上面增加建行的支付渠道。之前一直用的都是微信和支付宝这种第三方支付平台,银行直接对接比较少。没办法就只能上网搜索,搜索一番返现网上对接建行的资料比较少,没办法只好摸着石头过河,中间也借鉴了一些大佬的文章内容。 H5页面支付 根据建行的h5网页支付对接文档,还是可以看出是比较简单的。...

lihua100862的博客 5411

6.00 Introduction to Computer Science and Programming lec3 & lec4

之所以这两个一起写,是因为Lec3对我而言没什么内容,Python的东西不多。 Lec3的一个核心是:一个程序会在什么时候停止?我认为有三种情况:1. 返回正确的值。2. 返回错误的值。3. 报错 Python: for variable in range(start, end):     statement Lec4里function终于闪亮登场了。function由三部分组成

jubincn的专栏 964

FastAPI + Layui:打造企业级敏捷开发后台管理系统

本文详细介绍了如何使用FastAPI和Layui构建高效的企业级后台管理系统。FastAPI提供高性能的异步API支持,而Layui则简化了前端开发流程,两者结合可实现快速开发和部署。文章涵盖了从环境搭建、核心组件开发到性能优化的全流程,特别适合需要敏捷开发的企业项目。

weixin_29045585的博客 555

delphi 调用deepseek r1 api 并流式返回结果

摘要:本文展示了一个使用Delphi调用DeepSeek API的代码示例,包含两种调用方式:一次性获取结果和流式返回结果。代码实现了完整的API请求处理,包括HTTP客户端设置、JSON数据处理和UI界面交互。其中流式调用通过TStreamReader处理服务器发送事件(SSE),实时更新到TRichEdit控件并保持滚动条位置。文章还提到界面美化优化,为Delphi开发者提供了调用AI服务的实用参考方案。(150字)

全粘工程师 494

Numerical Optimization Ch13. Linear Programming: The Simplex Method

第十三章: 线性规划之单纯形法

Learner Hu's roam 1364

petalinux2022.2启动文件编译配置

petalinux2021之前的版本里,导入目录components/yocto/下的“environment-setup-aarch64-xilinx-linux” 和 “layers/core/oe-init-build-env”的环境,能使用Yocto的devtool工具。(加入下面内容,先petalinux-build下载完成后才能有源码)制作 BOOT.BIN 启动文件:petalinux-package --boot --fsbl --fpga --u-boot --force。

wangjie36的博客 1390

gh_mirrors/co/Courses-项目资源导航:按技能分类的课程与作业索引

GitHub 加速计划 / co / Courses-项目是一个包含大量课程和作业答案的学习资源库,涵盖了从数据科学、编程开发到金融分析等多个领域,为新手和普通用户提供了丰富的学习资料和实践案例。 ## 数据科学与机器学习 ### 核心课程推荐 - **Stanford University - Machine Learning**:由Andrew Ng教授主讲,涵盖线性回归、逻辑回归、神经网

gitblog_00669的博客 684

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Numerical Optimization Ch14. Linear Programming: Interior-Point Methods

第十四章: 线性规划之内点法

Learner Hu's roam 1505

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Study plan 2018 Fall

Artificial Intelligence homepage : https://www.dis.uniroma1.it/~nardi/Didattica/AI/index-new.html complement resources: Main topics: https://inst.eecs.berkeley.edu/~cs188/fa18/ Knowledge Representati...

niukai1768的专栏 562

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

RSA加密算法及特定条件下的破解

在对称加密算法中,信息的发送方和接收方用同样的密钥对信息进行加密和解密,而如何安全传递key本身成为了一个十分严重的问题,因此产生了公开密钥密码体制。 公开密钥密码体制使用不同的密钥来进行加密和解密,加密密钥公开(公钥),而解密密钥私有(私钥),加密算法和解密算法都是公开的。解密密钥由加密密钥决定,但却无法从加密密钥运算得到。 由于公钥和加密算法的公开,理论上攻击者可以尝试所有可能的原文并对其

6149

古典密码-凯撒加密和解密

在密码学中,恺撒密码是一种最简单且最广为人知的加密技术。 凯撒密码最早由古罗马军事统帅盖乌斯·尤利乌斯·凯撒在军队中用来传递加密信息,故称凯撒密码。这是一种位移加密方式,只对26个字母进行位移替换加密,规则简单,容易破解。 创建类 KaiserDemo,把 hello world 往右边移动3位 package com.hor.kaiser; /** * KaiserDemo */ publ...

hortonwei的博客 4840

CTF密码学之凯撒解密

1、题目提示:MGAKUZKRWZWGAWCP 2、使用在线解密网站test it:http://www.cryptool-online.org/index.php?option=com_cto&view=tool&Itemid=96&lang=en输入字符后,取消Lower case,调节key的值,当key的值为2时,得到key 的值 得到答案:CTF{XIPUXUEYUAN}

Unitue_逆流 5966

问题 P: 字符串数字置换

题目描述 从键盘接收用户输入的字符串, 对用户输入的每个字符串的处理是:将字符串内的每一个十进制数字字符置换成下列表格中右边所对应的一个字符串(所有其他字符不变),然后将转换的结果显示在屏幕上;并分别计算每个数字的置换次数。 十进制数字字符 置换成 0 (Zero) 1 (One) 2 (Two) 3 (Three) 4 (Four) 5 (Five)

永不止步的博客 890

凯撒密码

凯撒加密法 本文介绍凯撒加密法,没错就是那个为了美女舍弃王国的凯撒大帝。 凯撒密码视频介绍,[点这里][1] 代码: #coding = "utf-8" LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' #译码表 message = 'There is a cat.' message = message.upper() #把信息的字母转换成大写 key = 8 #密钥 mode = 'encrypt' #encrypt:加密 de

子殊的博客 664

python 字符串 学堂在线 MITx: 6.00.1x 计算机科学和Python编程导论 problem set 2

s = 'xkhlboetagwpsotgx' max=-1 result='' for i in range(0,len(s)): count=1 for j in range(i+1,len(s)): if s[j:j+1]>=s[j-1:j]: count+=1 else: break

小寒 1102

恺撒密码

恺撒密码: “恺撒密码”据传是古罗马恺撒大帝用来保护重要军情的加密系统。它是一种替代密码,通过将字母按顺序推后起3位起到加密作用,如将字母A换作字母D,将字母B换作字母E。据说恺撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码。 假如有这样一条指令: RETURN TO ROME 用恺撒密码加密后就成为: UHWXUQ WR URPH

AAAADN的专栏 2667

MITx - 6.00.1x 小结 Use it!

Computational Thinking is becoming a fundamental skill ! abstractions, algorithms, automated excution Use it! 转载于:https://www.cnblogs.com/...

weixin_30345055的博客 149

密码加密解密(二)——凯撒密码

''' 凯撒编码解码模块 @author Liao @time 2020-1-19 ''' class kaisa: ''' decodekaisa:解密函数 encodekaisa:加密函数 ''' def encodekaisa(self,plaintext="",key=1): ...

LSYZWF的博客 2105

恺撒密码代码简单实现加密解密(C语言)

加密代码 #include &lt;stdio.h&gt; #include &lt;string.h&gt; #define MAX 100 int main() { char C[MAX]; char S[MAX]; int K=3,i; printf("Enter passage\n"); gets(S); for(i=0; S[i]!...

烟敛寒林的博客 2万+
上一篇: MITx - 6.00.1x 笔记(4) Good Programming Practices
下一篇: MITx - 6.00.1x 笔记(6) Algorithmic Complexity
Huidanz
博客等级 码龄9年 31粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值