注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計AI輔助編程Python實戰(zhàn):基于GitHub Copilot和ChatGPT

AI輔助編程Python實戰(zhàn):基于GitHub Copilot和ChatGPT

AI輔助編程Python實戰(zhàn):基于GitHub Copilot和ChatGPT

定 價:¥89.80

作 者: [美] 利奧·波特,[加] 丹尼爾·津加羅
出版社: 人民郵電出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787115659262 出版時間: 2025-03-01 包裝: 平裝
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書系統(tǒng)地介紹了如何利用AI助手Copilot和ChatGPT來提升Python編程的效率和質(zhì)量。本書從AI助手的基礎(chǔ)概念講起,逐步深入到代碼組織、閱讀、測試、提示工程等關(guān)鍵技能,并引導(dǎo)讀者通過實踐掌握如何拆解復(fù)雜問題、查找和修復(fù)bug、自動化任務(wù)處理及開發(fā)計算機(jī)游戲。本書不僅提供了豐富的實例和練習(xí),還探討了AI助手的潛力和局限,以及未來的發(fā)展趨勢,是希望在編程領(lǐng)域融入AI技術(shù)的讀者的理想選擇。本書適合對編程感興趣,希望借助AI技術(shù)提升編程能力的初學(xué)者和中級程序員閱讀。

作者簡介

  Leo Porter博士是加州大學(xué)圣地亞哥分校計算機(jī)科學(xué)與工程系的教學(xué)教授。他因研究計算機(jī)課程中“同伴指導(dǎo)”的效果、利用點答器數(shù)據(jù)預(yù)測學(xué)生成績,以及設(shè)計基本數(shù)據(jù)結(jié)構(gòu)的概念清單而聞名。他與人合教了廣受好評的Coursera專項課程“面向?qū)ο蟮腏ava編程:數(shù)據(jù)結(jié)構(gòu)及其超越”,吸引了超過30萬名學(xué)員注冊學(xué)習(xí);同時,他還在edX MicroMasters平臺上開設(shè)了數(shù)據(jù)科學(xué)專業(yè)的第一門課程“Python for Data Science”,吸引了超過20萬名學(xué)員注冊學(xué)習(xí)。他曾獲得6項最佳論文獎、SIGCSE 50周年紀(jì)念十大研討會論文獎、沃倫學(xué)院杰出教學(xué)獎及加州大學(xué)圣地亞哥分校學(xué)術(shù)參議院杰出教學(xué)獎。他是ACM的杰出會員,并且曾在ACMSIGCSE董事會任職。Daniel Zingaro博士是多倫多大學(xué)的副教授。在過去的15年中,他向數(shù)千名學(xué)生講授了Python編程入門課程,并編寫了目前這門課程使用的教科書。他還撰寫了數(shù)十篇關(guān)于如何教授和學(xué)習(xí)計算機(jī)科學(xué)入門課程的教育研究文章。Daniel與No Starch Press合作創(chuàng)作了兩本書——上述的Python教科書和一本關(guān)于算法的圖書——這兩本書均被翻譯成多種語言。Daniel獲得了多個著名的教學(xué)和研究獎項,包括一個50年時間考驗獎和多個最佳論文獎。

圖書目錄

第 1章 走近AI輔助編程 1
1.1 我們?nèi)绾闻c計算機(jī)對話 1
1.1.1 讓難度降低一點兒 2
1.1.2 讓難度降低一大截 3
1.2 本書涉及的技術(shù) 3
1.2.1 Copilot,你的AI助手 4
1.2.2 一分鐘搞懂Copilot的背后原理 4
1.3 Copilot如何改變我們學(xué)習(xí)編程的方式 5
1.4 Copilot還可以做什么 7
1.5 使用Copilot的風(fēng)險和挑戰(zhàn) 8
1.6 我們所需的技能 9
1.7 大眾對于AI助手的擔(dān)憂 10
本章小結(jié) 11

第 2章 快速上手Copilot 12
2.1 為接下來的學(xué)習(xí)做好準(zhǔn)備工作 12
2.2 設(shè)置系統(tǒng) 14
2.3 在VS Code中使用Copilot 15
2.3.1 配置工作目錄 15
2.3.2 驗證配置是否運行正常 16
2.4 應(yīng)對常見的Copilot難題 19
2.5 我們的第 一個編程練習(xí) 20
本章小結(jié) 30

第3章 設(shè)計函數(shù) 31
3.1 初識函數(shù) 32
3.1.1 函數(shù)的組成部分 33
3.1.2 使用函數(shù) 35
3.2 函數(shù)的益處 36
3.3 函數(shù)的角色 37
3.4 交給函數(shù)的合理任務(wù)應(yīng)該是什么樣的 40
3.4.1 優(yōu)秀函數(shù)的特征 40
3.4.2 一些正面示例和反面示例 41
3.5 與Copilot協(xié)作設(shè)計函數(shù)的流程 42
3.6 借助Copilot創(chuàng)建優(yōu)秀函數(shù)的幾個示例 43
3.6.1 Dan的股票收益 43
3.6.2 小李子的密碼 47
3.6.3 獲得一個強(qiáng)密碼 51
3.6.4 拼詞游戲的計分規(guī)則 52
3.6.5 最佳單詞 55
本章小結(jié) 56

第4章 理解Python代碼(上) 58
4.1 為什么需要閱讀代碼 58
4.2 要求Copilot解釋代碼 60
4.3 必知必會的十大編程特性(第 一部分) 64
4.3.1 #1函數(shù) 65
4.3.2 #2變量 65
4.3.3 #3條件判斷 67
4.3.4 #4字符串 70
4.3.5 #5列表 72
4.3.6 小結(jié) 74
本章小結(jié) 75

第5章 理解Python代碼(下) 76
5.1 必知必會的十大編程特性(第二部分) 76
5.1.1 #6循環(huán) 76
5.1.2 #7縮進(jìn) 81
5.1.3 #8字典 88
5.1.4 #9文件 89
5.1.5 #10模塊 92
本章小結(jié) 95

第6章 測試與提示工程 96
6.1 為什么測試代碼至關(guān)重要 96
6.2 黑盒測試與白盒測試 97
6.2.1 黑盒測試 97
6.2.2 如何確定使用哪些測試用例 99
6.2.3 白盒測試 100
6.3 如何測試代碼 101
6.3.1 使用Python提示符進(jìn)行測試 101
6.3.2 在Python文件中進(jìn)行測試(我們不會采用這種方法) 102
6.3.3 doctest模塊 102
6.4 重新審視與Copilot協(xié)作設(shè)計函數(shù)的流程 105
6.5 完整測試的示例 106
6.5.1 算出空位最多的那一排能容納多少位新學(xué)生 106
6.5.2 改進(jìn)提示詞以尋求更好的解決方案 109
6.5.3 測試新版解決方案 111
6.6 另一個完整測試的示例:使用外部文件進(jìn)行測試 113
6.6.1 我們應(yīng)該執(zhí)行哪些測試 114
6.6.2 創(chuàng)建函數(shù) 116
6.6.3 測試函數(shù) 117
6.6.4 與doctest相關(guān)的常見難題 118
本章小結(jié) 120

第7章 問題分解 121
7.1 問題分解簡介 121
7.2 自頂向下設(shè)計的小示例 122
7.3 作者特征識別 123
7.4 采用自頂向下設(shè)計實現(xiàn)作者特征識別 125
7.5 將加工數(shù)據(jù)環(huán)節(jié)分解為子問題 126
7.5.1 計算出神秘圖書的簽名 126
7.5.2 計算出所有已知簽名 131
7.5.3 尋找最接近的已知簽名 132
7.6 自頂向下設(shè)計總結(jié) 134
7.7 實現(xiàn)所有函數(shù) 134
7.7.1 實現(xiàn)clean_word函數(shù) 135
7.7.2 實現(xiàn)average_word_length函數(shù) 136
7.7.3 實現(xiàn)different_to_total函數(shù) 137
7.7.4 實現(xiàn)exactly_once_to_total函數(shù) 138
7.7.5 實現(xiàn)split_string函數(shù) 140
7.7.6 實現(xiàn)get_sentences函數(shù) 142
7.7.7 實現(xiàn)average_sentence_length函數(shù) 142
7.7.8 實現(xiàn)get_phrases函數(shù) 143
7.7.9 實現(xiàn)average_sentence_complexity函數(shù) 144
7.7.10 實現(xiàn)make_signature函數(shù) 145
7.7.11 實現(xiàn)get_all_signatures函數(shù) 145
7.7.12 實現(xiàn)get_score函數(shù) 148
7.7.13 實現(xiàn)lowest_score函數(shù) 149
7.7.14 實現(xiàn)process_data函數(shù) 150
7.7.15 實現(xiàn)make_guess函數(shù) 151
7.8 進(jìn)一步探討 152
本章小結(jié) 153

第8章 調(diào)試代碼并且更深入地理解代碼 154
8.1 bug是如何產(chǎn)生的 154
8.2 如何找出bug 155
8.2.1 使用打印語句了解代碼行為 156
8.2.2 使用VS Code的調(diào)試器了解代碼行為 158
8.3 發(fā)現(xiàn)bug后如何修復(fù) 164
8.3.1 要求Copilot Chat修復(fù)bug 165
8.3.2 為整個函數(shù)給出新的提示詞 166
8.3.3 基于函數(shù)的部分代碼給出針對性的提示詞 166
8.3.4 自己動手修改代碼來修復(fù)bug 167
8.4 根據(jù)新技能調(diào)整工作流程 168
8.5 將調(diào)試技巧應(yīng)用于新的挑戰(zhàn) 169
8.6 利用調(diào)試器來更深入地理解代碼 175
8.7 調(diào)試注意事項 175
本章小結(jié) 175

第9章 煩瑣事務(wù)自動化 176
9.1 程序員為何制作工具 177
9.2 如何使用Copilot編寫工具 177
9.3 示例一:清理電子郵件內(nèi)容 178
9.3.1 與Copilot對話 178
9.3.2 編寫電子郵件清理工具 183
9.4 示例二:為PDF文件添加封面 186
9.4.1 與Copilot對話 187
9.4.2 編寫工具 191
9.5 示例三:合并手機(jī)圖片庫 199
9.5.1 與Copilot對話 200
9.5.2 自頂向下設(shè)計 203
9.5.3 編寫工具 204
本章小結(jié) 207

第 10章 開發(fā)小游戲 208
10.1 游戲設(shè)計入門 208
10.2 加入隨機(jī)性 209
10.3 示例一:“數(shù)字猜猜樂” 212
10.3.1 游戲玩法介紹 212
10.3.2 自頂向下設(shè)計 213
10.3.3 參數(shù)與返回值類型 216
10.3.4 實現(xiàn)這些函數(shù) 217
10.3.5 為“數(shù)字猜猜樂”游戲添加圖形界面 223
10.4 示例二:“餓死膽小鬼” 224
10.4.1 游戲玩法介紹 225
10.4.2 自頂向下設(shè)計 227
10.4.3 實現(xiàn)這些函數(shù) 230
10.4.4 自定義游戲 235
本章小結(jié) 238

第 11章 展望未來 239
11.1 提示模式 239
11.1.1 反轉(zhuǎn)互動模式 240
11.1.2 角色扮演模式 243
11.2 當(dāng)前局限與未來趨勢 246
11.2.1 Copilot(當(dāng)前)難以處理的難題 246
11.2.2 能否將Copilot 視為一種全新的編程語言 247
本章小結(jié) 250
參考文獻(xiàn) 251

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號