【Python】第一弹---解锁编程新世界:深入理解计算机基础与Python入门指南

个人主页: 熬夜学编程的小林

💗系列专栏: 【C语言详解】 【数据结构详解】【C++详解】【Linux系统编程】【MySQL】【Python】

目录

1、计算机基础概念

1.1、什么是计算机

1.2、什么是编程

1.3、编程语言有哪些

2、Python 背景知识

2.1、Python 是咋来的

2.2、Python 都能干啥

2.3、Python 的优缺点

 2.4、Python 的前景(钱景)咋样

3、搭建 Python 环境

 3.1、安装 Python

3.2、安装 PyCharm


1、计算机基础概念

1.1、什么是计算机

很多老一辈的人, 管下面这个叫做计算机. 然鹅, 它只是 "计算器", 和计算机是有很大区别的.

现在我们所说的计算机, 不光能进行算术运算, 还能进行逻辑判断, 数据存储, 网络通信等等功能, 以至于可以自动的完成非常复杂的工作.

以下这些都可以称为 "计算机" :

总的来说, 一台计算机, 主要由以下这几个重要的组件构成

  • CPU
  • 存储器 (内存, 硬盘等)
  • 输入设备 (键盘, 鼠标等)
  • 输出设备 (显示器, 音响等) 

PS: CPU 是目前人类科技的巅峰之作. 科技含量能和 CPU 相提并论的, 只有氢弹了.
美国限制向中国出口 "芯片", 这里的芯片主要指的就是 CPU. 目前国内虽然有自主研发 CPU 的能
力, 但是整体的水平, 相比于国际一线的 Intel, AMD 等厂商相比, 还是有一定的差距的. 

PSS: 有的同学可能说, 重要的硬件不是还有显卡嘛? 都老贵了!
其实显卡(GPU)是和 CPU 类似的计算芯片,

  • CPU 是 "通用计算芯片", 可以处理各种场景下的各种问题. 就像高校培养的学生. 可以在各个行业各个领域贡献力量.
  • GPU 是 "专用计算芯片", 特别擅长处理浮点数运算. 就像比特培养的学生, 专注于互联网软件技术.

以上的组成结构, 称为 "冯诺依曼体系结构" . 冯诺依曼大佬, 正是计算机的祖师爷.

PS: 冯诺依曼除了是计算机祖师爷之外, 还是一位数学家, 物理学家, 化学家, "博弈论" 的创始人, 参
与过曼哈顿计划(担任原子弹制造顾问).
据传闻, 冯诺依曼大佬六岁心算八位数除法, 八岁掌握微积分, 十岁通读了世界史, 十七岁发表了第
一篇数学方面的论文.
PSS: 计算机的祖师爷, 除了冯诺依曼之外, 还有一位图灵大佬, 也在二战中发挥了至关重要的作用.
 

1.2、什么是编程

计算机需要硬件赋予之躯体, 也需要软件赋予之灵魂.
 
"软件" (或者叫做 程序), 指挥了计算机要按照什么样的规则来执行任务

制作软件, 就是在明确这个软件要完成什么样的任务, 这个过程就称为 "编程"

例如: 我的女神给我说, 让我去买三个包子, 如果遇到卖西瓜的就买一个.
这个交代任务的过程就是 "编程". 只不过执行这个程序的是我, 不是计算机.

PS: 换个角度看, 人脑也能算术运算, 能逻辑判断, 能数据存储, 能输入输出..... 也可以视为是一个广
义的计算机.

编程本身, 并不是一件很容易的事情, 因此就衍生出了一个专门负责编程的职业, 也就是程序员.

程序员这个岗位香不香, 看看 相亲市场 就知道. 

程序员进行编程的过程中, 需要使用一个专门的方式和计算机沟通, 就是 "编程语言" .
使用编程语言编写软件的具体过程, 就称为 "软件开发", 俗称 "敲代码". 

1.3、编程语言有哪些

编程语言大体可以分成三个大类

  • 机器语言
  • 汇编语言
  • 高级语言

 
其中机器语言和汇编语言都是更贴近计算机的, 人类理解起来并不容易.
因此目前程序员使用的编程语言主要是高级语言.
 
高级语言的种类有很多很多. 以下列出的都是实际开发中常用的编程语言.

可以看到, Python 在这个走势中是名列前茅的. 

2、Python 背景知识
 

2.1、Python 是咋来的
 

吉多·范罗苏姆(Guido van Rossum) 是一个荷兰程序员(人称龟叔, 名字前三个字母是 Gui),龟叔在 1989 年圣诞节的时候(当时 33 岁), 因为在家里待着无聊, 为了打发时间, 开始了 Python 的开发.
第一个正式版本发布于 1991 年.

  • 1991 年是一个神奇的年份.
  • Python, 万维网, Linux, Vim, Qt, 第一台笔记本电脑, 都诞生于 1991 年. 

2.2、Python 都能干啥

经历了多年的发展, Python 目前是一个应用场景非常广泛的编程语言.

  • 科学计算&数据分析
  • Web 开发(搭建网站)
  • 自动化运维
  • 人工智能
  • 爬虫程序
  • 自动化测试

2.3、Python 的优缺点

优点:

  • 语法言简意赅, 容易上手.
  • 功能强大, 用途广泛.
  • 生态丰富, 具有海量的成熟第三方库.
  • 方便调用 C/C++ 编写的代码进行 高性能/系统级 操作.

缺点:

  • 执行效率比较弱.
  • 对于多核心并发程序支持偏弱.
  • 动态类型系统对于大型项目不太友好.

 
2.4、Python 的前景(钱景)咋样

虽然 Python 的应用场景很多, 但是纯粹使用 Python 的岗位是比较少见的.
 
以知名互联网招聘网站拉钩网为例, 设置工作地点为北京, 工作年限为3年以下,

  • 搜索 Python 关键字得到的岗位个数为 88 个.
  • 搜索 C 关键字得到的岗位个数为 159 个.
  • 搜索 Java 关键字得到的岗位个数为 297 个.

上述数据只是简单采样, 并不能精确反应岗位的整体情况. 

 更常见到的情况是, 把 Python 作为一个辅助性质的语言.

在工作中, Python 更像是一个工具, 需要用到的时候随手拿起来就用, 能够方便的解决不少问题.

  • 这就像一局王者荣耀, 有人打的是 carry, 有人打的是辅助. 
  • PS: 网上很多信息把 Python 往往吹的天花乱坠, 但是在我看来, 是有些过火了.
  • Python 和其他的编程语言本质上并没有啥区别. 并不存在某个场景是 "非得 Python 能做, 其他语言做不了" 这样的情况.
  • 编程语言只是工具, 作为一个程序猿, 要做到十八般兵器都能样样精通.

3、搭建 Python 环境

要想能够进行 Python 开发, 就需要搭建好 Python 的环境.
需要安装的环境主要是两个部分:

  • 运行环境: Python
  • 开发环境: PyCharm

 
3.1、安装 Python

(1) 找到官方网站

在搜索引擎中搜索 python 关键字, 带有 "官网" logo 的结果即为 Python 官方网站(注意不要点到带有"广告字样" 的结果).
PS: 下载安装软件, 最靠谱的方法就是去官网上下载.
 
(2) 找到下载页面

选择 "Download for Windows" 

注意: Python 的版本在持续迭代更新中. uu们看到的版本不一定和我这里完全一致, 但是基本不影响学习使用.


关于 Python 版本的补充

  • 现在主流使用的 Python 版本是 Python 3 系列. 但是同学们以后在公司中, 接触到一些比较老的项目, 可能还在使用 Python 2 .
  • 3 系列 和 2 系列 之间的语法还是存在不小差别的. 咱们学习的内容主要是依据 Python 3 系列展开.


下载完成后, 会得到一个 exe 的安装程序. 

 (3) 双击安装包

双击安装包, 安装 Python.

注意:

  • 最好勾选下 "Add Python 3.10 to PATH" 这个选项.
  • 要记得 Python 的安装目录(后面可能会用到).

点击 Install Now 之后, 稍等片刻, 就安装完毕了. 

这个安装过程非常简单, 一般只要不报错, 就算安装成功.

(4) 运行 hello world 

其中最关键的就是这个 python.exe . 后续运行 Python 程序, 全靠这个 python.exe
 
如果直接双击这个 python.exe , 就会打开 Python 的交互式解释器(控制台程序). 在这个交互式解释器中, 就可以输入 Python 代码了.

接输入 print('hello') 这句代码, 按下 enter 键, 则打印出了 hello 这样的结果. 

注意: 代码中的 ( ) 和 ' ' 都是英文, 不要写中文标点符号!

  • 编程语言中基本不会出现中文标点, 大家在写代码的时候一定要仔细注意. 

3.2、安装 PyCharm

虽然通过交互式解释器可以执行 Python 代码了, 但是代码写起来并不方便. 就需要更专业的开发工具来编写 Python 代码.

目前业界常用的 Python 开发工具, 主要有下列选项:

其中最主流的开发工具就是 PyCharmVS Code 了. 咱们以 PyCharm 为例进行演示. 

(1) 找到官方网站

注意: 这个搜索结果中没有标识出 "官网", 但是大家要认准 jetbrains.com 这个域名. 

  • PS: JetBrains 是捷克的一家互联网公司. 主要的业务就是开发编程工具. 像 Java 的 IDEA, C++ 的CLion, Python 的 PyCharm, Go 的 GoLand 等等都是出于 JetBrains 之手. 这些工具功能都非常强大, 深受广大程序猿的喜爱. 因此网友们也亲切的称呼这些开发工具为 "JB 全家桶".

(2) 找到下载页面 

注意: , 进入官网之后不着急直接点这个下载, 先把页面拖到最下面.

点击方框圈起来的位置, 进行下载.
PS: PyCharm 有三个版本.

  • 专业版 (Professional Edition)
  • 社区版 (Community Edition) 
  • 教育版 (Educational Edition)

我们使用的是社区版.

  • 专业版 相比于 社区版, 功能要更丰富一些, 但是专业版收费, 社区版免费(显然要白嫖).
  • 教育版功能和专业版相同, 但是需要凭 edu 邮箱去 JB 官网申请(过程其实也不麻烦, 但是俺没有edu 邮箱).

我们使用 社区版 就足够用了.

下载完成后, 会得到一个 exe 程序.

(3) 双击安装包

双击安装包. 注意选下安装路径. 

建议把这个选项勾上, 这样在任意目录鼠标右键, 就都可以直接用 PyCharm 打开目录了. 

这个安装过程非常简单, 一般只要不报错, 就算安装成功.
 
(4) 运行 hello world

a) 创建一个项目 

b) 选择项目所在的位置, 并选择使用的 Python 解释器. 

  • 注意, 一般情况下, PyCharm 能够自动识别出 Python 解释器的位置. 但是如果没有自动识别出来,也没关系, 点击右侧的 ... 选择之前安装的 Python 的路径位置即可.

c) 创建文件
右键左侧的项目目录, 选择 New -> Python File 

填写文件名

d) 编写代码

e) 运行程序
右键文件, 选择 "Run 'hello' "

(5) 进行基本设置
a) 设置字体大小
PyCharm 默认的字体比较小, 看起来很费眼睛. 可以设置大一点.
选择 File -> Settings 

找到 Editor -> Font, 把字体 Size 和 Line height 都适当调整.

  • Size 表示字体大小. 数字越大文字越大.
  • Line height 表示行高, 数字越大则两行文字之间的间隔就越大. 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/66081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习threejs,使用FlyControls相机控制器

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.FlyControls 相机控制…

隐私计算,构建安全的未来数据空间

大数据产业创新服务媒体 ——聚焦数据 改变商业 在医疗领域,不同医院之间需要共享患者数据,以提供更全面准确的诊断和治疗方案。 传统的数据处理方式通常是数据经过转换隐藏重要数据后再进行分析,虽然可以保护数据隐私,但在数据源…

Java 面试中的高频算法题详解

💖 欢迎来到我的博客! 非常高兴能在这里与您相遇。在这里,您不仅能获得有趣的技术分享,还能感受到轻松愉快的氛围。无论您是编程新手,还是资深开发者,都能在这里找到属于您的知识宝藏,学习和成长…

【Python项目】手写数字识别系统

【Python项目】手写数字识别系统 技术简介:采用Python技术、Django框架、MYSQL数据库等实现。 系统简介:手写数字识别系统主要的功能有手写字识别、手写字管理、修改密码、个人信息和用户管理。 背景: 在当今这个飞速发展的时代,…

Springboot + vue 小区物业管理系统

🥂(❁◡❁)您的点赞👍➕评论📝➕收藏⭐是作者创作的最大动力🤞 💖📕🎉🔥 支持我:点赞👍收藏⭐️留言📝欢迎留言讨论 🔥🔥&…

空指针:HttpSession异常,SpringBoot集成WebSocket

异常可能性: 404 : 请检查拦截器是否将请求拦截WebSocket握手期间HttpSession为空 HttpSession为空 方法一 : 网上参考大量的文档,有说跟前端请求域名有关系的。 反正对我来说,没啥用无法连接。 需使用 localhost&a…

什么是视频孪生智慧能源?视频孪生智慧能源的应用案例

‌视频孪生智慧能源是集三维地理信息系统、视频虚实融合、数字孪生、人工智能等多技术于一体的综合应用,旨在实现对能源系统的实时、动态、全方位监控和管理‌。 具体来说,视频孪生智慧能源通过以下方式实现其功能: ‌技术融合‌:…

【update 更新数据语法合集】.NET开源ORM框架 SqlSugar 系列

系列文章目录 🎀🎀🎀 .NET开源 ORM 框架 SqlSugar 系列 🎀🎀🎀 文章目录 系列文章目录前言 🍃一、实体对象更新1.1 单条与批量1.2 不更新某列1.3 只更新某列1.4 NULL列不更新1.5 无主键/指定列…

006-excel数据输出insert语句

一、在空白列插入,选择需要的列 "INSERT INTO tab_name1 (code, name) VALUES ("&A1&", "&B1&");"二、 拖动填充块,或者双击填充块(可以快速填充整列) 三、直接把生成的 insert 语…

前端组件开发:组件开发 / 定义配置 / 配置驱动开发 / 爬虫配置 / 组件V2.0 / form表单 / table表单

一、最早的灵感 最早的灵感来自sprider / 网络爬虫 / 爬虫配置,在爬虫爬取网站文章时候,会输入给爬虫一个配置文件,里边的内容是一个json对象。里边包含了所有想要抓取的页面的信息。爬虫通过这个配置就可以抓取目标网站的数据。其实本文要引…

43.Textbox的数据绑定 C#例子 WPF例子

固定最简步骤,包括 XAML: 题头里引入命名空间 标题下面引入类 box和block绑定属性 C#: 通知的类,及对应固定的任务 引入字段 引入属性 属性双触发,其中一个更新block的属性 block>指向box的属性 从Textbo…

excel按行检索(index+match)

假设你的数据表如下: 假设 数据区域是 A1:D4。 你想查询某人在某个日期的数据。 实现步骤 公式 在某个单元格中使用以下公式: excel 复制代码 INDEX(A2:D4, MATCH(“张三”, A2:A4, 0), MATCH(“2025/01/02”, A1:D1, 0)) 2. 公式拆解 MATCH(“张三”,…

信创改造-龙蜥操作系统搭载MySql、Tomcat等服务

龙蜥操作系统 Anolis OS 8 是 OpenAnolis 社区推出的完全开源、中立、开放的发行版,它支持多计算架构,也面向云端场景优化,兼容 CentOS 软件生态。Anolis OS 8 旨在为广大开发者和运维人员提供稳定、高性能、安全、可靠、开源的操作系统服务。…

FPGA EDA软件的位流验证

位流验证,对于芯片研发是一个非常重要的测试手段,对于纯软件开发人员,最难理解的就是位流验证。在FPGA芯片研发中,位流验证是在做什么,在哪些阶段需要做位流验证,如何做?都是问题。 我们先整体的…

【CI/CD构建】关于不小心将springMVC注解写在service层

背景 之前写一个接口的时候没有察觉到将RequestBody这个注解带到service层了。 今天提交代码的时候,插件没有检测到这个低级错误,导致试飞构建连maven编译都过不了,maven找不到程序包org.springframework.web.bind.annotation这个包 结果…

《深入理解Mybatis原理》Mybatis中的缓存实现原理

一级缓存实现 什么是一级缓存? 为什么使用一级缓存? 每当我们使用MyBatis开启一次和数据库的会话,MyBatis会创建出一个SqlSession对象表示一次数据库会话。 在对数据库的一次会话中,我们有可能会反复地执行完全相同的查询语句&…

win32汇编环境,窗口程序中单选框的一般操作示例

;运行效果 ;win32汇编环境,窗口程序中单选框的一般操作示例 ;比如在窗口程序中生成单选框,默认哪项选中,判断当前选中哪一项,让哪项选中,得到选中项的名称等 ;直接抄进RadAsm可编译运行。重点部分加备注。 ;以下是ASM文件 ;>&g…

个人主页搭建全流程(Nginx部署+SSL配置+DCDN加速)

前言 最近开始准备秋招,打算做一个个人主页,以便在秋招市场上更有竞争力。 目前,现有的一些搭建主页的博文教程存在以下一些问题: 使用Github Page进行部署,这在国内访问容易受阻使用宝塔面板等框架,功能…

Spring MVC简单数据绑定

【图书介绍】《SpringSpring MVCMyBatis从零开始学(视频教学版)(第3版)》_springspringmvcmybatis从零开始 代码、课件、教学视频与相关软件包下载-CSDN博客 《SpringSpring MVCMyBatis从零开始学(视频教学版)(第3版&…