想學編程,但不知道從哪里學起,應該怎么辦?

怎樣學習任何一種編程語言

我將教你怎樣學習任何一種你將來可能要學習的編程語言。本書的章節是基于我和很多程序員學習編程的經歷組織的,下面是我通常遵循的流程。

1.找到關于這種編程語言的書或介紹性讀物。

2.通讀這本書,把里邊的代碼都錄入一遍并使其運行起來。

3.一邊讀書一邊寫代碼,同時做好筆記。

4.使用這種編程語言實現一些你用另一種熟悉的編程語言做過的程序組件。

5.閱讀別人用這種編程語言編寫的代碼,試著仿照他們的方式編寫代碼。

在本書里,我強制要求你慢慢地一點一點地完成了這個過程。別的書不是用這種方法寫的,那就需要你把我教你的方法套用在這些書上。最好的辦法是先快速過一下書中的內容,將里邊的主要代碼片段列出來,將這份列表變成一系列基于習題的章節,然后按照次序一一完成。

以上流程對學習新技術也適用,只要你有一本相關的書,就能把它轉換成這種練習模式。對于沒有書的學習內容來說,你可以使用網上的教程或者源代碼作為你的入門資料。

每學一種新的編程語言,你就會成長為一個更好的程序員。你學的編程語言越多,它們就會變得越容易學習。當你學到第三種或者第四種編程語言的時候,你就應該能夠在一周內學會一門類似的編程語言了,不過對于一些特別的編程語言來說你可能還是要花較長的時間。你現在學了Python,接下來學習Ruby和JavaScript就應該比較快了。這是因為很多編程語言有著共同的理念,你只要學了其中一種,就能用在別的編程語言上。

關于學習新編程語言的最后一件要記住的事情就是:別當一個“蠢游客”。“蠢游客”就是那種去了一個國家旅游,然后回來抱怨那兒的飯不好吃的人。“為什么這個白癡國家連漢堡都買不到?”當你學習一種新編程語言時,不要假設它的工作方式太蠢,它只是不同而已,只有接受它你才能學會它。

不過,在學完一種編程語言后,不要成為這種編程語言工作方式的奴隸。有時你能看到有人使用一種編程語言做一些很白癡的事情,沒有別的理由,只不過是“我以前一直就是這樣做的”。如果你喜歡一種風格,而你又知道大家的做法和你不同,如果你看到后者能帶來好處,那就毫不猶豫地打破自己的習慣吧。

我個人是很喜歡學習新編程語言的。我把自己當成一個“程序員人類學家”,我認為一種編程語言反映了一群使用它的程序員的一些獨到見解。我學習的是他們用計算機互相交流時使用的語言,這對我來說非常有趣。不過話說回來,我這個人還是有點兒古怪的,所以對于新編程語言,你只要想學就學就行了。

從Python開始學編程

Python編程快速上手 讓繁瑣工作自動化 第2版

本書的第一部分介紹Python的基本編程概念;第二部分介紹一些不同的任務,你可以讓計算機自動完成它們。第二部分的每一章都有一些項目程序,供你學習。

本書是一本面向初學者的Python編程實用指南。本書不僅介紹了Python語言的基礎知識,而且通過案例實踐教讀者如何使用這些知識和技能。本書的第一部分介紹了基本的Python編程概念,第二部分介紹了一些不同的任務,通過編寫Python程序,可以讓計算機自動完成它們。第二部分的每一章都有一些項目程序供讀者學習。每章的末尾還提供了一些習題和深入的實踐項目,幫助讀者鞏固所學的知識。附錄部分提供了所有習題的解答。

下面簡單介紹一下每章的內容。

第一部分:Python編程基礎

“第 1 章 Python基礎”介紹表達式、Python指令的最基本類型,以及如何使用Python交互式環境來嘗試運行代碼。

“第 2 章 控制流”解釋如何讓程序決定執行哪些指令,以便代碼能夠智能地響應不同的情況。

“第 3 章 函數”介紹如何定義自己的函數,以便將代碼組織成可管理的部分。

“第4章 列表”介紹列表數據類型,解釋如何組織數據。

“第 5 章 字典和結構化數據”介紹字典數據類型,展示更強大的數據組織方法。

“第6章 字符串操作”介紹處理文本數據(在Python中稱為“字符串”)的方法。

第二部分:自動化任務

“第7章 模式匹配與正則表達式”介紹Python如何用正則表達式處理字符串,以及查找文本模式。

“第 8 章 輸入驗證”解釋程序如何驗證用戶提供的信息,確保用戶數據到達時的格式不會在程序的其余部分引起錯誤。

“第 9 章 讀寫文件”解釋程序如何讀取文本文件的內容,并將信息保存到硬盤的文件中。

“第10 章 組織文件”展示Python如何用比手動操作快得多的速度復制、移動、重命名和刪除大量的文件,也解釋如何用Python壓縮和解壓縮文件。

“第11章 調試”展示如何使用Python的bug查找和bug修復工具。

“第 12 章 從Web抓取信息”展示如何通過編程來自動下載網頁,并解析它們,獲取信息。

“第 13 章 處理Excel電子表格”介紹通過編程處理Excel電子表格的方法。如果你分析的文檔很少,那么你不必閱讀本章。如果你必須分析成百上千的文檔,這章知識是很有幫助的。

“第14章 處理Google電子表格”介紹如何使用Python讀取和更新Google表格(一種流行的基于Web的電子表格應用程序)。

“第15章 處理PDF和Word文檔”介紹通過編程處理PDF和Word文檔的方法。

“第16章 處理 CSV 文件和 JSON 數據”解釋如何編程處理 CSV 文件和JSON數據。

“第17章 保持時間、計劃任務和啟動程序”解釋Python程序如何處理時間和日期,如何安排計算機在特定時間內執行任務。這一章也展示Python程序如何啟動非Python程序。

“第18章 發送電子郵件和短信”解釋如何通過編程來發送電子郵件和短信。

“第19章 操作圖像”解釋如何通過編程來操作JPG或PNG等格式的圖像。

“第20章 用GUI自動化控制鍵盤和鼠標”解釋如何通過編程控制鼠標和鍵盤,自動化鼠標點擊和按鍵。

“附錄A 安裝第三方模塊”展示如何利用有用的附加模塊來擴展Python。

“附錄 B 運行程序”展示如何在代碼編輯器之外,在Windows操作系統、macOS和Ubuntu Linux操作系統上運行Python程序。

“笨辦法”學Python 3

Python入門教程升級版,Python3編程從入門到實踐教程,配套視頻,跟著Python導師學Python編程入門基礎教程,代碼基于Python3.6。

給新手的告誡

你已經完成了這個習題。根據你對計算機的熟悉程度,這個習題對你而言可能會有些難。如果你覺得有難度的話,你要自己克服困難,多花點兒時間去讀書研究,因為只有你會這些基礎操作,編程對你來說才不會太難學。

如果有人讓你中途停止或者跳過本書的某些習題,你應該就當沒聽到。任何企圖不讓你學到某些東西的人,或者更惡劣的,企圖讓你通過他們而非通過自己努力獲取知識的人,都是企圖讓你依賴他們來獲取知識。別聽他們的,好好做你的習題,這樣你就能學會如何自學了。

總有一天你會聽到有程序員建議你使用macOS或者Linux。如果他喜歡字體美觀,他會告訴你弄一臺Mac計算機,如果他們喜歡操控而且留了一臉大胡子,他會讓你安裝Linux。這里再次向你說明,只要是一臺手上能用的計算機就可以了。你需要的只有3樣東西:一個文本編輯器,一個命令行終端,還有Python。

最后要說的是,這個習題的準備工作的目的就是讓你可以在以后的習題中順利地做到下面幾件事。

1.撰寫習題的代碼。

2.運行你寫的習題代碼。

3.代碼被破壞的時候修正代碼。

4.重復上述步驟。

其他的事情只會讓你更困惑,所以還是堅持按計劃進行吧。

本書是一本Python入門書,適合對計算機了解不多,沒有學過編程,但對編程感興趣的讀者學習使用。這本書以習題的方式引導讀者一步一步學習編程,從簡單的打印一直講到完整項目的實現,讓初學者從基礎的編程技術入手,最終體驗到軟件開發的基本過程。本書是基于Python 3.6版本編寫的。

本書結構非常簡單,除“準備工作”之外,還包括52個習題,其中26個覆蓋了輸入/輸出、變量和函數3個主題,另外26個覆蓋了一些比較高級的話題,如條件判斷、循環、類和對象、代碼測試及項目的實現等。每一章的格式基本相同,以代碼習題開始,按照說明編寫代碼,運行并檢查結果,然后再做附加練習。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/213654.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/213654.shtml
英文地址,請注明出處:http://en.pswp.cn/news/213654.shtml

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

相關文章

MYSQL數據類型詳解

MySQL支持多種數據類型,這些數據類型可以分為三大類:數值、日期和時間以及字符串(字符)類型。這些數據類型可以幫助我們根據需要選擇合適的類型來存儲數據。選擇合適的數據類型對于確保數據的完整性和性能至關重要。 以下…

RHEL8_Linux用rpm管理軟件

本章主要介紹使用rpm對軟件包進行管理 使用rpm查詢軟件的信息使用rpm安裝及卸載軟件使用rpm對軟件進行更新使用rpm對軟件進行驗證 rpm 全稱是redhat package manager,后來改成rpm package manager,這是根據源碼包編譯出來的包。先從光盤中拷貝一個包&am…

基于Java Swing泡泡龍游戲(Java畢業設計)

大家好,我是DeBug,很高興你能來閱讀!作為一名熱愛編程的程序員,我希望通過這些教學筆記與大家分享我的編程經驗和知識。在這里,我將會結合實際項目經驗,分享編程技巧、最佳實踐以及解決問題的方法。無論你是…

AP9111手電筒專用集成電路芯片 單節干電池 LED手電筒IC

概述 AP9111 是 LED 手電筒專用集成電路芯片 ,是一款采用大規模集成電路技術,專門針對單節干電池的 LED 手電筒設計的一款專用集成電路。外加 1 個電感元件,即可構成 LED 手電筒驅動電路板。AP 9111 性能優越、可靠性高、使用簡單、生產一致…

六級高頻詞匯3

目錄 單詞 參考鏈接 單詞 400. nonsense n. 胡說,冒失的行動 401. nuclear a. 核子的,核能的 402. nucleus n. 核 403. retail n. /v. /ad. 零售 404. retain vt. 保留,保持 405. restrict vt. 限制,約束 406. sponsor n. …

聊個開心的敏捷話題——40小時工作制

近年來,加班現象在很多行業已經普遍制度化,甚至“996”已成為一些行業標簽。企業高強度的壓榨讓員工不堪重負,且時常由此引發的各種悲劇也并不鮮見。 所以,今天我們一起來聊一個開心輕松的話題——極限編程的40h工作制原則。 40…

Leetcode(一)兩數之和

兩數之和 暴力 雙層循環 兩兩相加 等于目標值 返回 即可 class Solution {public int[] twoSum(int[] nums, int target) {for(int i0;i<nums.length;i){for(int j0;j<nums.length;j){if(nums[i]nums[j]target && i!j){int[] a{i,j};return a;}}}return null;…

kafka主題分區副本集群的概念

Kafka是一個高性能、分布式的消息系統&#xff0c;用于處理大規模的實時數據流。為了更好地理解Kafka的原理和使用&#xff0c;以下是Kafka中幾個重要概念的解釋&#xff1a; 主題&#xff08;Topic&#xff09;: Kafka中的最基本概念&#xff0c;相當于一個數據流或者消息流的…

【環境搭建】ubuntu22安裝ros2

基于某種特殊需求&#xff0c;從Ubuntu16到22目前都嘗試過安裝ros、ros2 參考1&#xff1a;http://t.csdnimg.cn/DzvSe 參考2&#xff1a;http://t.csdnimg.cn/sOzr1 1.設置locale sudo apt update && sudo apt install locales sudo locale-gen en_US en_US.UTF-8 s…

SQL注入漏洞檢測

預計更新SQL注入概述 1.1 SQL注入攻擊概述 1.2 SQL注入漏洞分類 1.3 SQL注入攻擊的危害 SQLMap介紹 2.1 SQLMap簡介 2.2 SQLMap安裝與配置 2.3 SQLMap基本用法 SQLMap進階使用 3.1 SQLMap高級用法 3.2 SQLMap配置文件詳解 3.3 SQLMap插件的使用 SQL注入漏洞檢測 4.1 SQL注入…

Spring的IOC容器初始化流程

Spring的IOC容器初始化流程 IOC容器初始化在SpringApplication對象創建完畢執行run方法時執行refreshContext()時開始。 準備BeanFactory&#xff0c;設置其類加載器和environment等 執行BeanFactory后置處理器&#xff0c;掃描要放入容器的Bean信息&#xff0c;得到對應的Bea…

計算機網絡常見的縮寫

計算機網絡常見縮寫 通訊控制處理機&#xff08;Communication Control Processor&#xff09;CCP 前端處理機&#xff08;Front End Processor&#xff09;FEP 開放系統互連參考模型 OSI/RM 開放數據庫連接&#xff08;Open Database Connectivity&#xff09;ODBC 網絡操作系…

阿里云服務器租用價格分享,阿里云服務器熱門配置最新活動價格匯總

在我們購買阿里云服務器的時候&#xff0c;1核2G、2核2G、2核4G、2核8G、4核8G、8核16G、8核32G等配置屬于用戶購買最多的熱門配置&#xff0c;1核2G、2核2G、2核4G這些配置低一點的云服務器基本上能夠滿足絕大部分個人建站和普通企業用戶建站需求&#xff0c;而4核8G、8核16G、…

Maven項目引入本地jar

Maven項目引入本地jar 1.對應maven模塊項目中建lib目錄&#xff0c;將jar放入進去 2.在對應的模塊pom.xml中引入此依賴jar 3.在對應的maven-plugin插件打包的pom.xml中指定需要includeSystemScope為true的jar

AMEYA360:大唐恩智浦榮獲 2023芯向亦莊 “汽車芯片50強”

2023年11月28日&#xff0c;由北京市科學技術委員會和北京市經濟和信息化局指導、北京經濟技術開發區管理委員會主辦、蓋世汽車協辦的“芯向亦莊”汽車芯片大賽在北京亦莊成功閉幕。 在本次大賽中 大唐恩智浦的 電池管理芯片DNB1168 (應用于新能源汽車BMS系統) 憑卓越的性能及高…

SQL注入一般過程

實驗&#xff1a;Vulnerability: SQL Injection&#xff08;low&#xff09; SQL注入一般過程 1.判斷注入點 一般和數據庫進行交互的位置 2.判斷注入點類型 字符型判斷&#xff1a; 1 報錯 1 and 12 錯誤結果 1 and 11 正確結果 數字型判斷&#xff1a; 1 報錯 1 and 12…

【SpringBoot教程】SpringBoot 實現前后端分離的跨域訪問(CORS)

作者簡介&#xff1a;大家好&#xff0c;我是擼代碼的羊駝&#xff0c;前阿里巴巴架構師&#xff0c;現某互聯網公司CTO 聯系v&#xff1a;sulny_ann&#xff08;17362204968&#xff09;&#xff0c;加我進群&#xff0c;大家一起學習&#xff0c;一起進步&#xff0c;一起對抗…

【畢業季|進擊的技術er】作為一名職場人,精心總結的嵌入式學習路線圖

活動地址&#xff1a;畢業季進擊的技術er 文章目錄 0、作者介紹1、前言2、嵌入式基礎必備知識2.1、學習內容2.2、學習建議2.3、學習資料 3、嵌入式入門篇——51單片機3.1、學習內容3.2、學習建議3.3、學習資料 4、STM32進階篇4.1、學習內容4.2、學習建議4.3、學習資料 5、小而美…

印刷包裝企業做什么認證才有優勢

最近幾年&#xff0c;外貿出口過程中&#xff0c;越來越多的印刷和包裝企業被客戶要求進行各類認證和審核&#xff0c;比如&#xff0c;產品印刷包裝&#xff0f;吊牌等。他們已經意識到&#xff0c;印刷包裝供應商對于整個供應鏈管理的重要性&#xff0c;尤其是那些明確標示了…

由pandas.loc引發的未知錯誤AttributeError: ‘str‘ object has no attribute ‘isna‘

由于data.loc[value]和 data[data.keyvalue] 這兩者之間有一定的差異&#xff0c;第一種方式返回的可能是series&#xff0c;第二種方式返回的是dataframe&#xff0c;所以在做復雜條件篩選的的時候&#xff0c;可能會爆str相關的錯誤。 例如&#xff1a; account_instal[(ac…