【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.pswp.cn/web/66081.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/66081.shtml
英文地址,請注明出處:http://en.pswp.cn/web/66081.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LeetCode:131. 分割回文串

跟著carl學算法,本系列博客僅做個人記錄,建議大家都去看carl本人的博客,寫的真的很好的! 代碼隨想錄 LeetCode:131. 分割回文串 給你一個字符串 s,請你將 s 分割成一些子串,使每個子串都是回文串。返回 s 所…

優化神馬關鍵詞排名原理(優化神馬搜索引擎關鍵詞排名規則)

優化神馬(即百度)關鍵詞排名的原理主要基于搜索引擎的算法和用戶體驗的考量。以下是一些關鍵的優化原理: 一、搜索引擎算法 網頁重要性評估: 搜索引擎通過復雜的算法評估網頁的重要性和權威性,如基于PageRank的評估方…

學習threejs,使用FlyControls相機控制器

👨??? 主頁: gis分享者 👨??? 感謝各位大佬 點贊👍 收藏? 留言📝 加關注?! 👨??? 收錄于專欄:threejs gis工程師 文章目錄 一、🍀前言1.1 ??THREE.FlyControls 相機控制…

Vue 3前端與Python(Django)后端接口簡單示例

項目 后端(Django)前端(Vue 3) 后端(Django) 創建Django項目和應用: 確保你已經安裝了Django。如果沒有安裝,可以使用以下命令安裝: pip install django創建一個新的Dja…

MCP Server開發的入門教程(python和pip)

使用python技術棧開發的簡單mcp server 需要安裝 MCP server的需要使用python-sdk,python需要 3.10,安裝如下 pip install mcpPS: MCP官方使用的是uv包管理工具,我平時使用pip比較多,所以文中以pip為主。因為mcp的一些依賴包版本并不是最新的,所以最好弄一個干凈的環境…

Spark vs Flink分布式數據處理框架的全面對比與應用場景解析

1. 引言 1.1 什么是分布式數據處理框架 隨著數據量的快速增長,傳統的單機處理方式已經無法滿足現代數據處理需求。分布式數據處理框架應運而生,它通過將數據分片分布到多臺服務器上并行處理,提高了任務的處理速度和效率。 分布式數據處理框…

隱私計算,構建安全的未來數據空間

大數據產業創新服務媒體 ——聚焦數據 改變商業 在醫療領域,不同醫院之間需要共享患者數據,以提供更全面準確的診斷和治療方案。 傳統的數據處理方式通常是數據經過轉換隱藏重要數據后再進行分析,雖然可以保護數據隱私,但在數據源…

PID控制器 (Proportional-Integral-Derivative Controller) 算法詳解及案例分析

PID控制器 (Proportional-Integral-Derivative Controller) 算法詳解及案例分析 目錄 PID控制器 (Proportional-Integral-Derivative Controller) 算法詳解及案例分析1. 引言2. PID控制器的基本概念2.1 PID控制器的定義2.2 PID控制器的核心思想2.3 PID控制器的應用領域3. PID控…

rtthread學習筆記系列(3) -- FINSH模塊

文章目錄 3. FINSH模塊3.1MSH3.1.1初始化3.1.1.1FSymtab段3.1.1.2 宏 3.1.2遍歷FINSH命令3.1.3TAB補全實現3.1.3.1 msh_auto_complete3.1.3.2 msh_opt_auto_complete 3.1.4 TAB 子選項自動補全 3.2 SHELL3.2.1 finsh_system_init分配finsh結構體使用內存3.2.2 finsh_thread_ent…

Redis 知識速覽

文章目錄 1. Redis 簡介2. Redis 優缺點3. Redis 高性能4. Redis VM 機制5. Redis 數據類型6. 應用場景7. 持久化8. 過期策略9. 內存相關10. 線程模型11. 事務12. 集群 1. Redis 簡介 定義:Redis 是一個用 C 語言編寫的高性能非關系型(NoSQL&#xff09…

nginx-lua緩存機制

一. 簡述: 緩存是一個大型系統中非常重要的一個組成部分。在硬件層面,大部分的計算機硬件都會用緩存來提高速度,比如CPU會有多級緩存、RAID卡也有讀寫緩存。在軟件層面,我們用的數據庫就是一個緩存設計非常好的例子,在…

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對象。里邊包含了所有想要抓取的頁面的信息。爬蟲通過這個配置就可以抓取目標網站的數據。其實本文要引…