Python 与 数学

  • 最近 闲暇时间买了套卓里奇的《数学分析》在重温数学分析。之前 也通过 《流畅的 Python》 自学了 python。发现 python 里很多都可以用数学来理解。所以打算开个预期两年的坑,把数学分析用 python 去理解。

  • 当然对于两方面 相对来说都是初学者,欢迎大家一起讨论学习。

  • 代码块 为 python 代码, LaTeX \LaTeX LATE​X 为 数学表达式


通用的数学概念及记号

基本运算

中文 LaTeX \LaTeX LATE​X LaTeX \LaTeX LATE​X代码 Python 代码 备注
¬ \neg ¬ \neg !,not ! 对比两者值,not 对比两者内存(若为可变量有区别)
∧ \land ∧ \land &,and 若做数值对比,& 表示位运算,and 含0,返回0; 均为非0时,返回后一个值
∨ \lor ∨ \lor |,or 若做数值对比, | 表示位运算, or 至少有一个非0时,返回第一个非0
蕴含 ⇒ \Rightarrow ⇒ \Rightarrow
等价 ⇔ \Leftrightarrow ⇔ \Leftrightarrow ==
属于 ∈ \in ∈ \in in
存在 ∃ \exists ∃ \exists
可以找到 ∀ \forall ∀ \forall for
# 小练习
# 0 为真 1 为假 设定命题
A = (0,1)
print(f'¬A\n| A | 0 | 1 |\n|¬A | {int(not A[0])} | {int(not A[1])} |\n')
B = (0,1)
print(f'A and B\n| A\B | 0 | 1 |\n|  0  | {int(A[0] and B[0])} | {int(A[0]and B[1])} |\n|  1  | {int(A[1]and B[0])} | {int(A[1]and B[1])} |')
¬A
| A | 0 | 1 |
|¬A | 1 | 0 |A and B
| A\B | 0 | 1 |
|  0  | 0 | 0 |
|  1  | 0 | 1 |
C = {1,2,3,4}
print(f'C : {C}\n1 in C: {1 in C}')
C : {1, 2, 3, 4}
1 in C: True

集合

  • 集合在 Python 中 应该是可以理解为 set。 ’由若干确定的、有充分区别的、具体或抽象合并而成的一个整体‘ —— 格奥尔格·康托尔 描述集合的概念
  • 在 Python 中 set 为无序的,有序的集合 为 tuple, 其中set 可变、 tuple 不可变
  • set 集合 : set(){A,B} { A , B } \{A, B\} {A,B}
  • tuple 元组 : (A,B) ( A , B ) (A, B) (A,B) 因其不可变 所以有序
  • 按照定义 ( A , B ) = ( C , D ) (A,B) = (C,D) (A,B)=(C,D) 表示 A = C A=C A=C 且 B = D B=D B=D。 若 A ≠ B A \neq B A​=B 则 ( A , B ) ≠ ( B , A ) (A, B) \neq (B,A) (A,B)​=(B,A)
    • 需要注意的是 (A, B) = (B,A) 并不是 ( A , B ) = ( B , A ) (A, B) = (B,A) (A,B)=(B,A) 代码里的 = 为赋值
  • 称 { A , B } \{A, B\} {A,B} 为偶,若有序 为有序偶 ( A , B ) (A, B) (A,B)
# 无序
A = {0,1}
B = {1,0}
print(f'set 无序\nA == B: {A == B}\nB == A: {B == A}')
set 无序
A == B: True
B == A: True
# 有序
A = (0,1)
B = (1,0)
print(f'tuple 有序\nA == B: {A == B}\nB == A: {B == A}')
tuple 有序
A == B: False
B == A: False

笛卡尔积

  • 直积、笛卡尔积 X × Y : = { ( x , y ) ∣ ( x ∈ X ) ∧ ( y ∈ Y ) } X \times Y :=\{(x,y)\vert\ (x\in X)\land (y\in Y)\} X×Y:={(x,y)∣ (x∈X)∧(y∈Y)} 由属于X与Y的全部续偶组成。
  • 这就是笛卡尔平面坐标系,全部由序偶 ( x , y ) (x,y) (x,y) 组成
# 简单起见 设X、Y为三个元素
X = {2,1,3}
Y = {3,1,2}
Descartes = {(x,y) for x in Xfor y in Y}
print('Descartes: ', Descartes)
Descartes:  {(1, 2), (3, 2), (1, 3), (3, 3), (3, 1), (2, 1), (2, 3), (2, 2), (1, 1)}
  • 一般而言 X × Y ≠ Y × X X\times Y\neq Y\times X X×Y​=Y×X 仅当 X = Y X = Y X=Y 时才成立, 这时 X × X X\times X X×X 简写为 X 2 X^2 X2

函数

  • 函数 为 映射概念
  • 设 X , Y X, Y X,Y 为两个集合
  • 如果 集合 X X X 的每一个元素 x x x 按照 某个规律 f f f 与 集合 Y Y Y 的元素 y y y 相对应, 我们就说 有一个函数,它定义于 X X X 并取值于 Y Y Y
  • X X X 为定义域, x x x 为函数的 变元 或 自变量
  • 而自变量 x x x 的具体值 x 0 ∈ X x_0 \in X x0​∈X 相对应的 元素 y 0 ∈ Y y_0\in Y y0​∈Y 称为元素 x 0 x_0 x0​ 上的函数值,并表示为 f ( x 0 ) f(x_0) f(x0​), 一般而言 y = f ( x ) ∈ Y y=f(x)\in Y y=f(x)∈Y 随 x x x 的值变化而变化,因此称为因变量。

f : X → Y , X → f Y f: X \to Y, X\overset{f}{\to} Y f:X→Y,X→fY

def f(x:str)->str:return 'y'+x[1:]X = {'x_0','x_1','x_2'}
Y = {f(x) for x in X}
print('Y: ', Y)
Y:  {'y_0', 'y_1', 'y_2'}
# 若为有序
X = ['x_0','x_1','x_2']
Y = [f(x) for x in X] # 因tuple 为不可变 这里使用 list
for i in range(len(X)):print(X[i],'→',Y[i])
x_0 → y_0
x_1 → y_1
x_2 → y_2

由于是我大晚上看书 心血来潮 所以今天就先写到这。。。

Python 与 数学 【1】相关推荐

  1. python画函数曲线-使用Python画数学函数曲线

    import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.figure(1) # 创建图表1 plt.fig ...

  2. 用Python破解数学教育

    数学教学的声誉很差,尤其是对于那些像传统方法那样遇到麻烦的人(如我),这种方法强调死记硬背和理论,似乎与学生的现实世界相去甚远. 在教给对数学课感到困惑的学生时,Python开发人员和数学老师Pete ...

  3. python不会英语不会数学怎么自学-学习Python,数学英语基础很重要吗?

    关于Python这门语言,是大家公认简单易学.容易上手的编程语言,现在学习Python技术的人变得越来越多了,但是对于学习Python开发需要怎样的条件了解的人并不是很多,学习Python,英文和数学 ...

  4. python @符号_用Python学数学之Sympy代数符号运算

    在我们初.高中和大学近10年的学习时间里,数学一直占据着非常大的分量,但是回忆过去可以发现,我们把大量的时间都花在反复解题.不断运算上,计算方法.运算技巧.笔算能力以及数学公式的记忆仿佛成了我们学习数 ...

  5. python数学符号代码_用Python学数学之Sympy代数符

    在我们初.高中和大学近10年的学习时间里,数学一直占据着非常大的分量,但是回忆过去可以发现,我们把大量的时间都花在反复解题.不断运算上,计算方法.运算技巧.笔算能力以及数学公式的记忆仿佛成了我们学习数 ...

  6. 数学建模用python好吗_用 Python 做数学建模

    数学建模中,大多数人都在用MATLAB,但MATLAB不是一门正统的计算机编程语言,而且速度慢还收费,最不能忍受的就是MATLAB编辑器不支持代码自动补全.python对于数学建模来说,是个非常好的选 ...

  7. python解决数学建模发电商机组调度问题

    刚开时数学建模,遇到这个题,这个算法是真的难到我了, 首先,我们的模型(模型不知对否哈!主要是展示代码)是 经过思考很久后,针对该问题写了如下代码 import numpy import random ...

  8. python解决数学问题_用python处理数学问题

    一, 计算对数: >>> import math #导入数学模块 >>> math.log(8,2) #计算以2为底 8的对数 3.0 >>> m ...

  9. 【Python与数学建模】蒙特卡洛模拟仿真(附完整详细代码)

    [Python与数学建模]蒙特卡洛模拟&仿真 零.前言 引例:投针实验 试验描述: 试验分析: 代码实现 蒙特卡洛模拟&仿真的基本介绍 应用实例 实例一.三门问题 问题描述 问题分析与 ...

  10. 学python对数学要求吗_python 学习和数学知识 - 文章分类 - 风中小郎君 - 博客园...

    文章分类 - python 学习和数学知识 http://www.cnblogs.com/vamei 摘要:它们的区别在于应用的对象不同.1.map()map() 是一个Series的函数,DataF ...

最新文章

  1. FoveaBox:目标检测新纪元,无Anchor时代来临 | 技术头条
  2. Inversion Sequence(csu 1555)
  3. UVa10763 交换学生
  4. 计算机 网络访问保护,开启win2008网络访问保护的具体步骤
  5. 软件系统架构~视点和视图
  6. kettle资源库配置
  7. vrm华为_华为-笔记本电脑如何安装FusionCompute虚拟化平台?
  8. 远程桌面中转,基于 UltraVNC Repeater(中继器)的远程桌面服务搭建,用于复杂网络环境
  9. 从我的客户谈营销公司怎样将创业企业做大的
  10. FlashFXP使用说明
  11. 视频播放器Infuse PRO
  12. STM32 内核复位 与 系统复位 区别及程序实现
  13. B站 根据BV 获取av号 api
  14. JSTree的基本用法
  15. 在LINUX-DEBIAN系统下挂载新硬盘的方法
  16. 为什么“高大上”的算法工程师变成了数据民工?
  17. ddz指标最佳数值_大单分差指标ddz如何解析资金流向与筹码分布
  18. windows 重新获取ip
  19. matlab 系统辨识工具箱三分钟入手
  20. python数据分析pandas画图_Pandas数据可视化基础绘图教程

热门文章

  1. 微信小程序与后端交互(ssm)
  2. 【PAT乙级刷题】客似云来
  3. 自己动手制作安卓动态壁纸教程
  4. ANDROID L——Material Design详解(视图和阴影)
  5. 关于Raft算法的共识性算法考究
  6. 关于 金山词霸2012 v3.4版本的一些意见和建议
  7. e-mark认证标志是怎样的?
  8. AWS亚马逊云账号注册、免费申请1年云服务器以及Amazon EC2服务与Amazon Lightsail服务的配置与使用
  9. 关于mybatis注解之@alias别名用法
  10. Word:无法启动转换器WPFT532 WPFT632 解决方法