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

【Python】认识 Python

一、计算机基础概念

1、什么是计算机

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

现在我们所说的计算机,不光能进行算术运算,还能进行逻辑判断、数据存储、网络通信等等功能,以至于可以自动的完成非常复杂的工作。以下这些都可以称为 “计算机”:

总的来说, 一台计算机 主要由以下这几个重要的组件构成:
  • CPU - 中央处理器,处理算术运算、逻辑运算等
  • 存储器内存,硬盘等存储数据)
  • 输入设备键盘,鼠标,麦克风等负责和用户进行交互)
  • 输出设备显示器,音响,耳机,打印机等负责和用户进行交互)

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

重要的硬件不是还有显卡吗?但是太贵了。

内存与外存(硬盘等)的区别

  1. 内存的存储空间较小,外存的存储空间较大。
  2. 内存的访问速度快,外存的访问速度慢。
  3. 内存比外存成本更高。
  4. 内存上的数据容易丢失(断电,数据就没了),外存上的数据能够持久化存储(相对于内存来说可以存的更长久,一般机械硬盘存储数据的时间是几年到十几年)(断电数据也在)。

有的设备既是输入设备,又是输出设备,比如触摸屏、网卡等。

  • 显卡并没有被归纳到上面,其实显卡(GPU)是和 CPU 类似的计算芯片,CPU 是 “通用计算芯片”,可以处理各种场景下的各种问题(类比大学毕业生)。而 GPU 是 “专用计算芯片”,特别擅长处理浮点数运算(类比计算机专业学生)。

以上的组成结构称为 “冯诺依曼体系结构”,冯诺依曼可以称为计算机的祖师爷。

冯诺依曼除了是计算机祖师爷之外,还是一位数学家、物理学家、化学家、“博弈论” 的创始人,参与过曼哈顿计划(担任原子弹制造顾问)。据传闻,冯诺依曼大佬六岁心算八位数除法,八岁掌握微积分,十岁通读了世界史,十七岁发表了第一篇数学方面的论文。

计算机的祖师爷除了冯诺依曼之外,还有一位图灵大佬,也在二战中发挥了至关重要的作用。


2、什么是编程

计算机需要硬件赋予之躯体,也需要软件赋予之灵魂。

软件”(或者叫做程序),指挥了计算机要按照什么样的规则来执行任务。

软件不是凭空出现的,是要被 “开发” / “设计” 出来的。制作软件就是在明确这个软件要完成什么样的任务,这个过程就称为 “编程”,或者也可以叫做 “软件开发”。

例如,妈妈让我去买两个面包,如果遇到卖西瓜的就买一个(这句话很明显存在歧义,计算机会直接 “摆烂”)。那么这个交代任务的过程就是 “编程”,只不过执行这个程序的是我,不是计算机。再进一步展开来说,就是由人来告诉计算机,接下来要做什么任务。

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

编程本身并不是一件很容易的事情,它是一件比较严谨、复杂的事情,因此就衍生出了一个专门负责编程的职业,也就是程序员程序员进行编程的过程中,需要使用一个专门的方式和计算机沟通,就是 “编程语言”。使用编程语言编写软件的具体过程就称为 “软件开发”,俗称 “敲代码”。


3、编程语言

编程语言大体可以分成三个大类:
  1. 机器语言
  2. 汇编语言
  3. 高级语言

其中机器语言和汇编语言都是更贴近计算机的,人类理解起来并不容易。因此目前程序员使用的编程语言主要是高级语言。

高级语言的种类有很多很多,以下列出的都是实际开发中常用的编程语言:

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

二、Python 背景知识

1、Python 是如何来的

吉多·范罗苏姆(Guido van Rossum)是一个荷兰程序员(人称龟叔,因为他名字前三个字母是 Gui)。

龟叔在 1989 年圣诞节的时候(当时 33 岁),因为在家里待着无聊,为了打发时间,开始了 Python 的开发。第一个正式版本发布于 1991 年,1991 年是一个神奇的年份。Python、万维网、Linux、Vim、Qt、第一台笔记本电脑,都诞生于 1991 年。


2、Python 能干什么

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

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


三、Python 的优缺点

1、优点

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

2、缺点

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

四、Python 的前景

虽然 Python 的应用场景很多,但是纯粹使用 Python 的岗位是比较少见的。

以知名互联网招聘网站拉钩网为例,设置工作地点为北京,工作年限为 年以下。

  • 搜索 Python 关键字得到的岗位个数为 500+ 个。
  • 搜索 C 关键字得到的岗位个数为 83 个。
  • 搜索 C++ 关键字得到的岗位个数为 77 个。
  • 搜索 Java 关键字得到的岗位个数为 158 个。

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

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

在工作中,Python 更像是一个工具,需要用到的时候随手拿起来就用,能够方便的解决不少问题。Python 和其他的编程语言本质上并没有啥区别,并不存在某个场景是 “非得 Python 才能做,而其他语言做不了” 这样的情况。编程语言只是工具,作为一名程序员,要做到十八般兵器都能样样精通。

相关文章:

【Python】认识 Python

一、计算机基础概念 1、什么是计算机 很多老一辈的人,管下面这个叫做计算机。然而,它只是 “计算器”,和计算机是有很大区别的。 现在我们所说的计算机,不光能进行算术运算,还能进行逻辑判断、数据存储、网络通信等…...

Vue根据后端返回的tabList动态渲染组件信息

最近做了一个功能&#xff0c;后端根据配置信息&#xff0c;动态返回一个tabList&#xff0c;其中结构是List<String,Object> tabList; map里面的数据是 label、value 页面需要根据tablist动态渲染组件&#xff08;不同的tab都使用了组件进行了封装&#xff09; 实现效果…...

二轴机器人大米装箱机:技术创新引领智能包装新潮流

在科技日新月异的今天&#xff0c;自动化和智能化已成为各行各业追求高效、精准生产的关键。作为粮食加工行业的重要一环&#xff0c;大米装箱机的技术创新与应用价值日益凸显。其中&#xff0c;二轴机器人大米装箱机以其高效、稳定、智能的特点&#xff0c;成为市场的新宠。星…...

rtl8723DU移植 android4.4 4418 (第二部分蓝牙部分)

使用的代码&#xff1a; HMI &#xff08;8723bu&#xff09;源码 567_RTL8723DU_WiFi_linux_v5.6.5.3_35502_COEX20181130-2e2e.20191025.zip 由于之前写的所有笔记没有保存&#xff0c;这里只能是部分。 0、 前置知识 1 、kernel 的移植 2、hardwire的移植 将 驱动中的 h…...

【Vue】组件的存放目录问题

注意&#xff1a; .vue文件 本质无区别 组件分类 .vue文件分为2类&#xff0c;都是 .vue文件&#xff08;本质无区别&#xff09; 页面组件 &#xff08;配置路由规则时使用的组件&#xff09;复用组件&#xff08;多个组件中都使用到的组件&#xff09; 存放目录 分类开来的…...

开发PlugLink插件:自动生成并发布博客文章

开发PlugLink插件&#xff1a;自动生成并发布博客文章 引言 博客已经成为个人和企业分享信息、推广产品的重要工具。然而&#xff0c;手动运营博客不仅耗时&#xff0c;而且容易出错。本文将介绍如何利用PlugLink开发一个全自动博客运营程序&#xff0c;通过API链接大模型&am…...

Ant Design Pro

一&#xff1a;Ant Design pro是什么&#xff1a; Ant Design Pro 是基于 Ant Design 和 umi 的封装的一整套企业级中后台前端/设计解决方案&#xff0c;致力于在设计规范和基础组件的基础上&#xff0c;继续向上构建&#xff0c;提炼出典型模板/业务组件/配套设计资源&#x…...

加密软件好用的是哪个?为什么这么多人说迅软DSE加密软件好用?

加密软件顾名思义就是用来对机密文件进行加密保护的&#xff0c;防止未经授权的人查看和篡改&#xff0c;保护公司的重要信息&#xff0c;预防泄露的事件发生&#xff0c;由此可见运用加密软件是有用的。那么&#xff0c;问题又来了哪款加密软件好呢&#xff1f;请看一下介绍。…...

大模型日报2024-06-07

大模型日报 2024-06-07 大模型资讯 大规模单细胞转录组学基础模型研究 摘要: 大型预训练模型已成为基础模型&#xff0c;在自然语言处理及相关领域取得突破。本文介绍了在单细胞转录组学领域应用大规模基础模型的研究进展。 MMLU-Pro&#xff1a;评估语言理解模型的新基准 摘要…...

Day49 动态规划part08

LC139单词拆分(未掌握) 未掌握分析&#xff1a;将字符串s中的各个字符看成是背包&#xff0c;思考成了多重背包问题单词就是物品&#xff0c;字符串s就是背包&#xff0c;单词能否组成字符串s&#xff0c;就是问物品能不能把背包装满。拆分时可以重复使用字典中的单词&#xf…...

React -- memo允许你的组件在 props 没有改变的情况下跳过重新渲染。

memo(Component, arePropsEqual?) 使用 memo 将组件包装起来&#xff0c;以获得该组件的一个 记忆化 版本。通常情况下&#xff0c;只要该组件的 props 没有改变&#xff0c;这个记忆化版本就不会在其父组件重新渲染时重新渲染。但 React 仍可能会重新渲染它&#xff1a;记忆化…...

路径

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 用于定位一个文件或者目录的字符串被称为一个路径。在程序开发时&#xff0c;通常涉及两种路径&#xff0c;一种是相对路径&#xff0c;另一种是绝对…...

逆波兰表达式

目录 一、定义 二、算法步骤 三、代码实现 一、定义 逆波兰表达式又叫做后缀表达式&#xff0c;是一种没有括号&#xff0c;并严格遵循“从左到右”运算的后缀式表达方法。 二、算法步骤 1、首先构造一个运算符栈&#xff0c;此运算符在栈内遵循越往栈顶优先级越高的原则。 …...

git(其六)--总结

配置基础信息 //1.配置用户名和邮箱 git config --global user.name "带着引号写一个昵称" git config --global user.email "带着引号写一个邮箱"//2.建立一个git本地库 git init//3.查看本地内容 git status //可以看到那些处于待加入本地库的文件&a…...

kafka-生产者拦截器(SpringBoot整合Kafka)

文章目录 1、生产者拦截器1.1、创建生产者拦截器1.2、KafkaTemplate配置生产者拦截器1.3、使用Java代码创建主题分区副本1.4、application.yml配置----v1版1.5、屏蔽 kafka debug 日志 logback.xml1.6、引入spring-kafka依赖1.7、控制台日志 1、生产者拦截器 1.1、创建生产者拦…...

每日一题:聊聊 Redis 过期键的删除策略

聊聊 Redis 过期键的删除策略 答案 惰性删除 &#xff1a;只会在取出 key 的时候才对数据进行过期检查&#xff1b;这样对 CPU 最友好&#xff0c;但是可能会造成太多过期 key 没有被删除&#xff08;占用内存&#xff09;。 通过定时器实现&#xff08;时间事件&#xff09;&…...

边缘计算的AI小板——OrangePi AI Pro

简介 OrangePi AI Pro是一款基于Allwinner H6处理器的嵌入式AI计算设备&#xff0c;适用于物联网和边缘计算。它具有强大的性能、低功耗、多接口和小尺寸。 本文分为三个部分&#xff1a; 一、对该板进行简单的开箱介绍。 二、 将SD卡中的系统迁移到由于该板支持SD卡、SSD…...

RDMA (2)

iWARP(RDMA)怎么工作的 招式1:bypass内核 非iWARP时,当应用向网络适配器发出读或者写命令时,命令穿过用户空间以及内核空间,因此需要在用户空间和内核空间间进行切换。 iWARP使用RDMA,让应用直接将命令送达到网络适配器。这规避了对内核的调用,减少了开销和延迟。 招式2…...

vue.config.js中,devServer对象用于配置开发服务器的行为

devServer: {hot: true, // 启用模块热替换&#xff08;Hot Module Replacement&#xff0c;HMR&#xff09;。liveReload: true, // 启用页面自动刷新。当热更新失败时&#xff0c;将回退到页面自动刷新。open: true, // 启动服务器后自动打开浏览器。port: 8080, // 设置开发…...

JVM 运行流程

JVM 是 Java 运行的基础&#xff0c;也是实现一次编译到处执行的关键&#xff0c;那么 JVM 是如何执行的呢&#xff1f; JVM 执行流程 程序在执行之前先要把java代码转换成字节码&#xff08;class 文件&#xff09;&#xff0c; JVM 首先需要把字节码通过一定的 方式 类加…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统&#xff0c;支持多语言对话&#xff08;如 中文&#xff0c;英文&#xff0c;日语&#xff09;&#xff0c;语音情感&#xff08;如 开心&#xff0c;悲伤&#xff09;&#x…...

AI编程--插件对比分析:CodeRider、GitHub Copilot及其他

AI编程插件对比分析&#xff1a;CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展&#xff0c;AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者&#xff0c;分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...