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

机械学习—零基础学习日志(python编程)

零基础为了学人工智能,正在艰苦的学习

昨天给高等数学的学习按下暂停键,现在开始学习python编程。

我学习的思路是直接去阿里云的AI学习课堂里面学习。

整体感觉,阿里云的AI课堂还是有一些乱,早期课程和新出内容没有更新和归档。我因为本身有一定的python基础,所以看起来相对来讲快一些。

但是如果大家从零开始学习python,我会建议学习《python编程:从入门到实践》,说实话,真的是超级经典的书籍。另外,其他的大佬推荐《菜鸟编程》。

我个人体感是,一个毫无基础的同学去学习Python,还是得找组织,另外,项目和代码一起学习,不要闭门造车,多和身边的人交流。

我把在阿里云课堂上的学习笔记同步到这里。

is,is not与地址可变类型
a = ["hello"]
b = ["hello"]
print(a is b, a == b)  # False True
print(a is not b, a != b)  # True False
a = "hello"
b = "hello"
print(a is b, a == b)  # True True
print(a is not b, a != b)  # False False

注意:

  • is,is not 对比的是两个变量的内存地址
  • ==,!= 对比的是两个变量的值
  • 比较的两个变量,指向的都是地址不可变的类型(str等),那么is,is not 和 ==,!= 是完全等价的。
  • 对比的两个变量,指向的是地址可变的类型(list,dict,tuple等),则两者是有区别的。

位运算

在龙珠训练营学习了位运算的知识点。

正数的补码,原码,反码都是正数,也就是正数是完全正常的表示。

那如何理解,计算机负数的补码以及反码呢?

我个人的理解是,为了计算机的计算逻辑正确。正数+负数为零,所以对负数进行了特别操作,使用反码,补码的方式,让正数+负数为零。

负数在计算机内部的表示,本身是用补码的方式表示,所以,1001,具体表示的方法是,1001+?变成0呢。加上0111会变成0,也就是加上7变成0,所以,最后1001是-7.

布尔运算优先级

优先级 not > and > or

布尔型

布尔 (boolean) 型变量只能取两个值,True 和 False。当把布尔型变量用在数字运算中,用 1 和 0 代表 True 和 False

print(True + True)  # 2
print(True + False)  # 1
print(True * False)  # 0

assert 关键词
  • assert这个关键词我们称之为“断言”,当这个关键词后边的条件为 False 时,程序自动崩溃并抛出AssertionError的异常。
my_list = ['lsgogroup']
my_list.pop(0)
assert len(my_list) == 0# AssertionError

enumerate()函数
enumerate(sequence, [start=0])
  • sequence:一个序列、迭代器或其他支持迭代对象。
  • start:下标起始位置。
  • 返回 enumerate(枚举) 对象

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
lst = list(enumerate(seasons))
print(lst)
# [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
lst = list(enumerate(seasons, start=1))  # 下标从 1 开始
print(lst)
# [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
for i, language in enumerate(languages, 2):print(i, 'I love', language)
print('Done!')
# 2 I love Python
# 3 I love R
# 4 I love Matlab
# 5 I love C++
# Done!

Python 标准异常总结
  • BaseException:所有异常的 基类
  • Exception:常规异常的 基类
  • StandardError:所有的内建标准异常的基类
  • ArithmeticError:所有数值计算异常的基类
  • FloatingPointError:浮点计算异常
  • OverflowError:数值运算超出最大限制
  • ZeroDivisionError:除数为零
  • AssertionError:断言语句(assert)失败
  • AttributeError:尝试访问未知的对象属性
  • EOFError:没有内建输入,到达EOF标记
  • EnvironmentError:操作系统异常的基类
  • IOError:输入/输出操作失败
  • OSError:操作系统产生的异常(例如打开一个不存在的文件)
  • WindowsError:系统调用失败
  • ImportError:导入模块失败的时候
  • KeyboardInterrupt:用户中断执行
  • LookupError:无效数据查询的基类
  • IndexError:索引超出序列的范围
  • KeyError:字典中查找一个不存在的关键字
  • MemoryError:内存溢出(可通过删除对象释放内存)
  • NameError:尝试访问一个不存在的变量
  • UnboundLocalError:访问未初始化的本地变量
  • ReferenceError:弱引用试图访问已经垃圾回收了的对象
  • RuntimeError:一般的运行时异常
  • NotImplementedError:尚未实现的方法
  • SyntaxError:语法错误导致的异常
  • IndentationError:缩进错误导致的异常
  • TabError:Tab和空格混用
  • SystemError:一般的解释器系统异常
  • TypeError:不同类型间的无效操作
  • ValueError:传入无效的参数
  • UnicodeError:Unicode相关的异常
  • UnicodeDecodeError:Unicode解码时的异常
  • UnicodeEncodeError:Unicode编码错误导致的异常
  • UnicodeTranslateError:Unicode转换错误导致的异常

异常体系内部有层次关系,Python异常体系中的部分关系如下所示:

Python标准警告总结
  • Warning:警告的基类
  • DeprecationWarning:关于被弃用的特征的警告
  • FutureWarning:关于构造将来语义会有改变的警告
  • UserWarning:用户代码生成的警告
  • PendingDeprecationWarning:关于特性将会被废弃的警告
  • RuntimeWarning:可疑的运行时行为(runtime behavior)的警告
  • SyntaxWarning:可疑语法的警告
  • ImportWarning:用于在导入模块过程中触发的警告
  • UnicodeWarning:与Unicode相关的警告
  • BytesWarning:与字节或字节码相关的警告
  • ResourceWarning:与资源使用相关的警告
奇思妙想:
a = [1, 3, 2, 6]# 使用 sorted() 函数
print(sorted(a))  # 输出 [1, 2, 3, 6]
print(a)          # 输出 [1, 3, 2, 6],原列表未改变# 使用 list.sort() 方法
print(a.sort())   # 输出 None
print(a)          # 输出 [1, 2, 3, 6],原列表已被排序
  • sorted(a) 返回一个新的排序后的列表,而不修改原列表。
  • a.sort() 就地对原列表进行排序,返回 None,并修改原列表。

主要参考资料:阿里云《龙珠训练营》 AI学习课程

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

相关文章:

  • WEB应用(十三)---RCE
  • 【云原生】Service服务暴露详细
  • 实名认证次数限制
  • 【如何在Python中使用pathlib模块】
  • sqli-labs第一关详细解答
  • 分布式事务一站式解决方案-Seata
  • openwrt 使用ftace工具追踪协议栈转发流程
  • ElasticSearch优化实战:打造高性能搜索引擎的秘籍
  • 【STL】| C++ 栈和队列(详解、容器适配器的初步引入)
  • xss漏洞(二,xss靶场搭建以及简单利用)
  • 深度学习--------------Kaggle房价预测
  • cpio 命令
  • TreeMap自定义排序
  • 我的CSDN 512天创作纪念日-20240807
  • 微服务-实现nacos的集群和Gateway网关的实现、认证校验、解决跨域
  • 数据库中的约束,聚合函数以及联合查询
  • 【AI大模型】Ollama+OpenWebUI+llama3本地大模型
  • 习题20240807
  • src挖掘-记一次有趣的逻辑漏洞分享
  • 【C++】STL | list (链表)详解及重要函数的实现
  • 警惕智能手机的“隐形眼”:如何保护我们的数字隐私堡垒
  • 人工智能算法工程师(高级)课程12-自然语言处理之NLP的语言模型-ELMo,transformer,BERT与代码详解
  • PicGo + gitee 免费搭建个人图床
  • 组合数的低复杂度运算
  • 小型并网式光伏气象站:光伏电站的智能守护者
  • JavaScript 中的回调函数(callback)
  • 计算机毕业设计hadoop+spark+hive漫画推荐系统 动漫视频推荐系统 漫画分析可视化大屏 漫画爬虫 漫画推荐系统 漫画爬虫 知识图谱 大数据
  • 解决pycharm日志总是弹出“无法运行Git,未安装Git”的问题
  • threejs 节点材质系统 绑定attribute
  • Rabbitmq的几种工作模式