登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書

『簡體書』机械工程师Python编程:入门、实战与进阶 [西]安琪儿·索拉·奥尔巴塞塔

書城自編碼: 4016137
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: [西]安琪儿·索拉·奥尔巴塞塔
國際書號(ISBN): 9787111758471
出版社: 机械工业出版社
出版日期: 2024-07-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:HK$ 171.4

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
孩子一生的底气
《 孩子一生的底气 》

售價:HK$ 67.9
撒哈拉海计划:技术、殖民与气候危机
《 撒哈拉海计划:技术、殖民与气候危机 》

售價:HK$ 90.9
制造亚洲:一部地图上的历史
《 制造亚洲:一部地图上的历史 》

售價:HK$ 124.2
湘军史稿 华章大历史040
《 湘军史稿 华章大历史040 》

售價:HK$ 101.2
印度经济简史:1947-2022
《 印度经济简史:1947-2022 》

售價:HK$ 79.4
吞海.大结局
《 吞海.大结局 》

售價:HK$ 63.3
碰撞与转型
《 碰撞与转型 》

售價:HK$ 446.2
行动红利:用行动告别低效、摆脱拖延,享受人生的红利
《 行动红利:用行动告别低效、摆脱拖延,享受人生的红利 》

售價:HK$ 67.9

 

編輯推薦:
如果你可以用Python编程来解决具有挑战性的工程问题会如何?这本“硬核”的书将教你如何使用线性代数、几何和物理知识从头开始编码求解算法,以编写自定义库、绘制基元和构建应用程序。作者在这本书中为机械工程师提供了核心编程技巧,专注于打磨高质量的代码和利用自动化的单元测试来保证实现无差错。你将开发一个几何工具箱,用线和形状来绘制工程问题图,为机械模拟创建矢量图和动画,以及编码算法来执行复杂的计算。最终,你将结合这些知识来构建一个完整的结构分析应用程序,以解决实际工作中可能遇到的二维桁架问题。
通过阅读本书,你将学到:
·使用正则表达式来优雅地解析输入文件
·使用单元测试、封装和描述性名称来优化代码
·使用Tkinter的画布小部件在屏幕上绘制图像和创建动画
·用Cholesky分解算法求解线性方程组
·构建一个可以可视化桁架结构的应力和张力的应用程序
停止依赖第三方软件--通往专业化的道路没有捷径。本书将帮助你掌握编程技巧,让你每次都能获得正确的结果。
內容簡介:
本书是一本专门面向工程相关专业读者的编程类技术图书,主要介绍如何使用Python来解决工程问题。书中涵盖了如何编码几何基元、读写文件、绘制矢量图并制作动画来展示运算结果,以及求解大型线性方程组,并在最后整合所有知识,搭建了一个求解桁架结构问题的应用程序。本书适合任何有一定专业背景并且想通过编程来解决工程问题的读者阅读,同时适合工程相关专业的学生作为参考。具有线性代数、平面几何和物理学的基础知识,并了解材料力学和数值方法的原理会比较有帮助。
關於作者:
安琪儿·索拉·奥尔巴塞塔自2013年以来一直在软件行业工作。他拥有机械工程学位,目前在巴塞罗那市中心一家蓬勃发展的初创公司Glovo工作。安琪儿还是InkStructure知名应用程序的创建者,该应用程序用于解决建筑和工程专业的2D结构问题。
目錄
目  录
译者序
前言
致谢
作者简介
技术评审员简介
第一部分 基础知识
第1章 Python快速入门 2
1.1 Python包和模块 2
1.1.1 Python模块 2
1.1.2 Python包 3
1.2 运行文件 3
1.3 导入代码 3
1.4 用文档字符串注释代码  7
1.5 Python中的元素集 8
1.5.1 集合 8
1.5.2 元组 9
1.5.3 列表 11
1.5.4 字典 14
1.6 解包 15
1.7 小结 16
第2章 两种编程范式 17
2.1 函数式编程 17
2.1.1 纯函数 17
2.1.2 不可变性 18
2.1.3 lambda函数 19
2.1.4 高阶函数 20
2.1.5 嵌套函数 21
2.1.6 filter、map和reduce函数 22
2.1.7 列表推导式 26
2.2 面向对象编程 27
2.2.1 类 28
2.2.2 魔术方法 33
2.3 类型提示 35
2.4 小结 36
第3章 命令行 37
3.1 UNIX和Windows系统的命令行 37
3.2 准备好shell 37
3.2.1 安装Windows Subsystem for
Linux软件 38
3.2.2 初识shell 38
3.3 文件和目录 38
3.3.1 移动命令 39
3.3.2 创建文件和目录 40
3.3.3 删除文件和目录 41
3.3.4 命令汇总 41
3.3.5 使用Windows Subsystem for
Linux 42
3.4 运行Python脚本 43
3.5 给脚本传递参数 43
3.6 标准输入和输出 44
3.6.1 将输出重定向到文件 44
3.6.2 将输入重定向为文件 44
3.7 使用PyCharm自带的Python
控制台 45
3.8 小结 47
第二部分 二维几何
第4章 点和向量 50
4.1 比较数字 50
4.2 创建类:Point 51
4.2.1 计算两点间的距离 52
4.2.2 加减操作 53
4.3 创建类:Vector 54
4.3.1 向量的加减 55
4.3.2 向量的缩放 56
4.3.3 用向量移动点 56
4.3.4 向量的范数 57
4.3.5 不可变的代码设计 58
4.3.6 方法的命名约定 59
4.3.7 向量的点乘 59
4.3.8 向量的投影 60
4.3.9 向量的叉乘 61
4.3.10 平行和垂直向量 61
4.3.11 向量的夹角 62
4.3.12 向量的旋转 63
4.3.13 向量的正弦和余弦 64
4.4 完善Vector类 65
4.4.1 检验相等性 65
4.4.2 字符串表示 67
4.4.3 向量的工厂函数 68
4.5 单元测试 69
4.5.1 测试距离计算方法 70
4.5.2 测试向量的加减方法  72
4.5.3 测试向量的乘法方法 73
4.5.4 测试向量的平行和垂直方法 74
4.5.5 单元测试的三个重要规则 75
4.6 小结 77
第5章 直线和线段 78
5.1 创建类:Segment 78
5.1.1 线段的方向 79
5.1.2 线段的长度 81
5.1.3 参数t和线段中点 83
5.1.4 计算线段上的最近点 88
5.1.5 计算线段与点的最短距离 91
5.1.6 计算线段的交点 91
5.1.7 相等和字符串表示 94
5.2 创建类:Line 96
5.3 线段的垂直平分线 100
5.4 小结 101
第6章 多边形 102
6.1 创建类:Polygon 102
6.1.1 多边形的边 103
6.1.2 多边形的质心 106
6.1.3 检验多边形是否包含点 108
6.1.4 多边形的工厂函数  113
6.1.5 检验多边形的相等性 114
6.2 创建类:Circle 116
6.2.1 检验圆是否包含点 117
6.2.2 圆的近似多边形 117
6.2.3 圆的相等性和字符串表示 118
6.2.4 圆的工厂函数 120
6.3 创建类:Rect 121
6.3.1 检验矩形是否包含点 123
6.3.2 检查矩形是否重叠 123
6.3.3 矩形转多边形 127
6.3.4 矩形的相等性检查 128
6.3.5 矩形的工厂函数 130
6.4 小结 132
第7章 仿射变换 133
7.1 初识仿射变换 133
7.2 创建类:Affine Transform 137
7.2.1 单元测试:点的变换 137
7.2.2 变换线段和多边形 138
7.2.3 组合变换 140
7.2.4 逆仿射变换 142
7.2.5 缩放变换 144
7.2.6 旋转变换 146
7.3 插值变换 148
7.3.1 插值的类型 148
7.3.2 插值的实现 150
7.4 Geom2D的最后一步 152
7.4.1 测试文件整理 152
7.4.2 同时运行所有测试文件 152
7.4.3 包的统一导入 153
7.5 小结 154
第三部分 图形和模拟
第8章 绘制矢量图 156
8.1 位图和矢量图 156
8.2 SVG格式 157
8.2.1 视框 158
8.2.2 空间变换 159
8.3 创建包:svg 160
8.3.1 模板字符串 161
8.3.2 导入模板 162
8.3.3 图像模板 163
8.3.4 属性 165
8.4 SVG的基元 166
8.4.1 直线 167
8.4.2 矩形 168
8.4.3 圆 169
8.4.4 多边形 170
8.4.5 多段线 171
8.4.6 文本 172
8.4.7 分组 173
8.4.8 箭头 174
8.5 基元总结 176
8.6 导入包 178
8.7 小结 178
第9章 三点画圆 179
9.1 应用程序的架构 179
9.2 初始设置 180
9.2.1 创建一个运行配置 181
9.2.2 为什么要使用运行配置 184
9.3 读取输入和配置文件 184
9.3.1 正则表达式 185
9.3.2 正则表达式备忘录 189
9.3.3 匹配点 189
9.3.4 配置文件 190
9.4 问题模型和解决方法 192
9.5 结果输出 192
9.5.1 绘制结果圆 193
9.5.2 绘制输入点 195
9.5.3 最终代码 197
9.5.4 翻转y轴方向 199
9.6 分发应用程序
內容試閱
前  言
编程可以提高你解决复杂问题的能力。现在的CPU运算速度可达每秒数十亿次,在其帮助下,我们可以快速、正确地找到难题的解决方案。
本书使用Python来解决工程问题。我们将学习编码几何基元(作为实现其他复杂操作的基础)、读写文件、绘制矢量图并制作动画来展示运算结果,以及求解大型线性方程组。最后,我们将整合所有知识,搭建一个用于求解桁架结构问题的应用程序。
目标读者
本书针对的是工程专业的学生或已毕业的工程师,或者任何有专业背景、想通过学习编写应用程序来解决工程问题的人。
读者必须拥有数学和力学的专业背景。本书会涉及线性代数、平面二维几何和物理学的相关概念,以及材料力学和数值方法的一些原理,这些是工程专业的常规课程。我们不会过多深入讨论这些理论知识,以照顾更多的读者。同时,在本书中学到的技巧可以用于解决涉及更复杂概念的问题。
为了跟上本书的教学,你还需要具备一些编程能力和Python基础。本书不是编程入门教程,优秀的编程入门教程已经有很多,如果你想要这类书,我推荐Eric Matthes撰写的Python Crash Course(No Starch出版社,2019年)。网络上也有很多好资料,我最喜欢的网站的网址是https://realpython.com。Python的官方网站上也有很好的教程和文档,网址是https://www.python.org/about/gettingstarted/。
我们会编写很多代码,因此我强烈建议你在学习本书时,带上一台计算机,用来编写和测试本书中的所有代码。
读者收获
在本书中,我们将学习优秀程序的开发技巧,以正确、快速地解决工程问题。我们将使用自动化测试来测试代码,以确保其正确。我们开发的每个应用程序都应该运用自动化测试来进行有效测试,关于该测试方法的讨论会贯穿全书。
工程应用程序通常需要一些数据作为输入,因此我们还将学习从文件中读取数据,以及使用正则表达式来解析数据的方法。
工程应用程序通常需要求解大型方程组,因此我们将学习编写数值算法的技巧来实现这些复杂的计算。我们会重点关注线性方程组,但该技巧可以轻易地应用于编写非线性方程组的数值算法。
最后,工程应用程序需要输出计算结果。我们将学习把数据写入文件的方法,以便后续检查。我们将学习绘制优美的矢量图和制作动画,以呈现程序运算的结果。俗话说,一图胜千言:一幅精心绘制的、展示最关键的计算结果的图像可以赋予程序更大的价值。
为了展示以上所有概念,在本书末尾,我们将构建一个求解二维桁架结构的应用程序。这个程序将涵盖构建工程应用程序所需的一切知识。构建该应用程序所获得的知识可以轻易地移植到其他类型的工程应用程序编写中。
关于本书
本部分主要包括三点:本书英文书名的含义、选择Python的原因和本书的章节列表。
“硬核”的含义
本书英文书名中的“Hardcore”(硬核)一词是指我们将只使用Python标准库(与Python一起分发的库)来编写本书所有代码,我们不会使用任何第三方库来求解方程组或绘制矢量图。
你可能会不理解,如果已经有现成的代码可以完成这些操作,为什么不直接使用呢?一定要重复造轮子吗?
本书是学习的指南,而学习必须要自己动手。如果不重复造轮子,你将永远无法理解轮子。在你拥有了扎实的编程技能、编写过几千行代码、完成许多项目后,你才能判断哪些外部库可以满足需求,以及该如何利用它们。如果从一开始就使用外部库,你就会形成习惯,将其视作理所当然。切记,在使用外部库的时候,要经常问自己,它是如何解决问题的。
和其他任何事情一样,编程也是熟能生巧的。想成为优秀的程序员,就必须编写大量代码,没有捷径可言。如果你只将编程作为赚钱的手段,或者只是想尽快将某个想法推到市场上,那就使用现有的库吧。但如果你是为了学习并且希望熟练掌握编程的艺术,那就不要使用外部库,要独立编写代码。
为什么选择Python
Python是最受喜爱的编程语言之一。根据Stack Overflow网站的2020年开发者调查报告(https://insights.stackoverflow.com/survey/2020),Python在“最受喜爱的编程语言”中排名第三,有66.7%的用户愿意继续使用它,仅次于TypeScript和Rust。
同样是这份调查报告,在“最想学习的语言”排名中,Python排在第一位:在接受调查的、此前没有使用过Python的开发者中,有30%表示有兴趣学习Python。
这个结果并不令人惊讶,Python是一门极其通用且高效的编程语言。用Python编程非常轻松,而且它的标准库非常完善:几乎任何你想做的事情,Python都有现成的资源可以使用。
本书之所以选择Python,不仅因为它受欢迎,还因为它易于使用和用途广泛。Python的一个优点在于,即使你在阅读本书前对它完全不了解,入门也不需要花太多时间。它相对易学,互联网上有各式各样的教材和课程。
    
通常来说,Python不是一种“快速”的编程语言。的确,执行速度不是Python的长项。那么,难道我们不在乎速度吗?当然在乎,但对于本书的目的而言,开发时间和开发经验更加关键。Python有很多代码结构,可以使编程变得轻松。例如,对集合的过滤或映射等操作,Python的列表推导式可以一步到位,而Go则需要用到“古老

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.