Visual Studio Code & Python教程2環境

来源:https://www.cnblogs.com/testing-/p/18104261
-Advertisement-
Play Games

為了增加查詢的性能,MyBatis 提供了二級緩存架構,分為一級緩存和二級緩存。 這兩級緩存最大的區別就是:一級緩存是會話級別的,只要出了這個 SqlSession,緩存就沒用了。而二級緩存可以跨會話,多個會話可以使用相同的緩存! 一級緩存使用簡單,預設就開啟。二級緩存需要手動開啟,相對複雜,而且要 ...


2簡介

本章將使用簡單的編程概念來修改基本的 Python 程式和 VS Code 功能,如任務運行、編輯預設設置、瞭解鍵盤快捷鍵和運行 Python 程式。我們必須做的第一件事是建立一個工作的開發環境。我們將從安裝 Python 和安裝 VS 代碼開始,然後設置 Python 環境。本章的第二部分是瞭解全局環境和虛擬環境的內容和方法。您一定很想構建和調試我們的第一個 Python 程式。讓我們開始吧!

2.1 設置 Python 環境

首先,需要安裝 Python 解釋器。我們必須連接到 python.org,並根據操作系統選擇正確的安裝程式。Python 也可以在 Windows 設備上的 Microsoft Store 中找到。如果您使用的是 Linux 操作系統,則可能已經安裝了 Python3。您可以在終端輸入 python3 --version 來驗證電腦上是否已安裝 Python。如果出現錯誤,則表示需要安裝。

2.1.1 在 Windows 上安裝

您可以直接點擊 Download Python 3.12.* 或導航到 Python Releases for Windows 部分,然後點擊下載鏈接,獲取最新的 Python 3 版本。截至今天,最新版本是 Python 3.12.*。選擇適用於 32 位或 64 位的 Python 安裝程式可執行文件,然後點擊下載。下載完成後,雙擊下載的安裝程式文件並運行。

  • 立即安裝顯示了 Python 的安裝和運行位置。
  • 自定義安裝選項可自定義安裝位置和其他安裝功能。我們也可以稍後使用 pip 命令進行管理。
  • 將 Python.exe 添加到 PATH(預設未選中)。

2.1.2 在 MacOS和Linux上安裝

請參考官網文檔。

2.1.3 安裝擴展

轉到擴展選項卡(屏幕左側),搜索 Python 擴展。如圖所示,第一個結果就是我們需要安裝的。點擊擴展旁邊的 "安裝 "選項。這樣,Python 擴展就安裝好了。

Python 擴展會自動安裝 Pylance 和 Jupyter 擴展,以簡化編程並改善編碼體驗。

兩個重要的擴展: Code Runner 擴展和 Pylint 擴展。

成功安裝 Code Runner 後,VS 代碼編輯器的右上角會出現一個播放按鈕。該按鈕可用於運行代碼。

第二個重要擴展是 Pylint(預覽如圖所示)。 Pylint 是 Python 的內核工具,可幫助開發人員快速、輕鬆地識別和修複代碼問題。VS Code 中的 Pylint 擴展為 VS Code 中的 Python 提供了出色的校驗體驗,使您能夠快速發現代碼中的問題並採取糾正措施。該擴展提供了增強的校驗功能,例如檢查代碼是否符合 PEP8,以及快速識別問題。它還支持從命令行運行 Pylint。通過該擴展,您可以高效地編寫更好的 Python 代碼,節省時間,提高工作效率。

Linting 工具是一種編程工具,可幫助確保程式代碼符合編碼標準並格式正確。它可以檢測和標記潛在的編程錯誤,例如未定義的變數、不一致的格式、邏輯錯誤和未閉合的迴圈。在編譯和運行代碼之前,通常會使用 Linting 工具來檢測和消除編程錯誤。

2.2 設計一個簡單的戰艦游戲

設計一個簡單的戰艦游戲 讓我們開發一個簡單的人機戰略競猜游戲。程式會創建一個 5*5 的棋盤,電腦會將其戰艦隱藏在一行和一列中(使用隨機數生成)。用戶通過猜測電腦將戰艦藏在哪裡來發號施令。如果猜對了,電腦的艦隊就會被摧毀,而用戶則獲勝。圖 2.11 顯示了輸出示例:

import random

battle_pattern = []

for i in range(5):
    battle_pattern.append(['O '] * 5)

def display(pattern):
    for p in pattern:
        print(" ".join(p))

print("Battleship Challenge - GAME ON!")
display(battle_pattern)

def get_random_row(pattern):
    return random.randint(0, len(pattern) - 1)

def get_random_col(pattern):
    return random.randint(0, len(pattern[0]) - 1)

ship_row = get_random_row(battle_pattern)
ship_col = get_random_col(battle_pattern)
print(f"hint: row={ship_row}, col={ship_col}")

for option in range(4):
    input_row = int(input("Enter Guess Row (Starts with 0):"))
    input_col = int(input("Enter Guess Col (Starts with 0):"))

    if input_row == ship_row and input_col == ship_col:
        print("You Win! You sunk my battleship!")
        break
    else:
        if option == 3:
            battle_pattern[input_row][input_col] = "X "
            display(battle_pattern)
            print("Sorry Player... Game Over!")
            print("\nShip is here: [" + str(ship_row) + "]["+ str(ship_col) + "]")
        else:
            if (input_row < 0 or input_row > 4) or (input_col <0 or input_col > 4):
                print("Where did you fire ? Over the ocean.")
            elif (battle_pattern[input_row][input_col] == "X"):
                print("You have already got that wrong.")
            else:
                print("You totally missed my battleship!")
                battle_pattern[input_row][input_col] = "X "
            print("Attempt : ",option + 1)
            display(battle_pattern)

2.3 設置和配置編輯器

VS Code的核心部分可以自定義。它允許通過各種設置選項,根據程式員的偏好自定義用戶界面和功能行為的幾乎所有組件。打開工作區時,我們會註意到兩個重要的設置:

  • "用戶設置 "會全局應用於同一用戶打開的任何 VS Code 實例
  • 工作區設置存儲在工作區內,在打開工作區時應用。

參考資料

2.3.1 用戶設置

用戶設置可通過編輯設置編輯器設置進行自定義。以下是打開設置編輯器的步驟:

Windows/Linux:文件 | 首選項 | 設置 , 快捷鍵 CTRL + ,

macOS: 轉到 代碼 | 首選項 | 設置, 快捷鍵 Command + ,

也可以使用快捷鍵打開設置編輯器,在 Windows 中鍵入:,在 Mac 中鍵入 Command + ,(逗號)。

在搜索欄中,用戶可以找到想要的設置。在搜索欄中搜索時,你會發現它不僅會顯示並高亮顯示符合條件的設置,還會應用篩選器刪除不符合條件的設置。這樣,搜索就變得快速而簡單。
所有與編輯器相關的設置,如設置組、搜索和篩選,對於用戶和工作區設置都是一樣的。對於給定的項目,與工作區相關的編輯器設置優先於用戶設置。不過,某些與應用程式相關的設置(如更新和安全)不能被工作區設置覆蓋。因此,用戶甚至無法在工作區設置中訪問這些設置,但卻可以在用戶設置中訪問

到目前為止,我們嘗試在用戶界面中編輯設置,但有一個設置文件可以直接編輯值。要打開 settings.json 文件:

也可在命令調板中打開 JSON 設置(Ctrl+Shift+P)

在編輯器中打開文件後,就可以以 JSON 格式寫入設置。JSON 格式包含設置 ID 及其相應值。例如,圖 2.20 中顯示了應用的主題,用戶可以編輯/刪除/添加新的 ID 和相應的設置值。刪除兩個大括弧 {} 之間的所有內容並保存文件後,VS 代碼就可以返回預設設置。與代碼編輯器一樣,settings.json 文件也具有完整的智能提示(IntelliSense)和智能補全設置。如果由於不正確的 JSON 樣式導致錯誤,代碼的這一部分也會高亮顯示,就像 Python 代碼一樣。某些設置,如工作台: 顏色只能在圖中編輯 colorCustomization 已設置為 #4000ff,使得行號顯示為藍色(十六進位等效色碼)。

之前,我們討論過 "設置 "會打開設置編輯器用戶界面,但喜歡直接使用 settings.json 文件的用戶可以設置 workbench.settings.editor: json 選項,這樣 "首選項"|"設置 "和按鍵綁定 Ctrl+ 就會始終帶你進入 settings.json 文件。

你可以在這裡查找用戶設置文件:

在 Windows 平臺上: %APPDATA%\Code\User\settings.json
在 macOS 平臺上:$HOME/Library/Application/Support/Code/User/settings.json
在 Linux 平臺上:$HOME/.config/Code/User/settings.json

2.3.2 工作區設置

與用戶設置不同,工作區設置不是全局性的,而是針對某個項目的。這樣,在同一項目中工作的開發人員就可以共用設置。工作區設置總是優先於用戶設置。你可以通過設置編輯器 "工作區 "選項卡進行編輯,也可以使用首選項:打開 "工作區設置 "命令直接打開該選項卡。

與用戶設置一樣,工作區設置也存儲在 settings.json 文件中。可以通過首選項直接編輯該文件: 打開工作區設置 (JSON) 命令直接編輯。如果要查找工作區設置文件,可以在根目錄下的文件夾中找到。當工作區設置 settings.json 文件被添加到項目或源代碼控制中時,該項目的設置將與該項目的所有用戶共用。
我們一直在談論工作區,但什麼是工作區呢?VS Code 中的工作區通常只是項目根文件夾。所有工作區設置和配置(如調試和任務配置)都存儲在根目錄下的 .vscode 文件夾中。通過多根工作區功能,VS Code 工作區中可以有多個根文件夾。

2.3.3設置和安全

某些設置允許指定可執行的VS代碼,以執行某些操作。設置允許選擇集成終端將使用的 shell。可以理解的是,出於各種安全原因,此類設置只能在用戶設置中定義,而不能在工作區範圍內定義,多個用戶都可以使用。

2.3.4鍵盤參數

直觀的鍵盤快捷方式、簡單的自定義和社區貢獻的鍵盤快捷方式映射,讓您輕鬆瀏覽代碼。VS Code 提供了豐富、自定義且易於編輯的鍵盤快捷方式。顯示選項後,用戶可以使用可用操作輕鬆更改、刪除和重置鍵盤綁定。顯示鍵盤綁定列表也很簡單,可以使用頂部的搜索框來完成。搜索框有助於查找命令或鍵綁定,並直接導航到它們。在 Windows 平臺上使用 VS Code 的用戶可直接進入菜單 "首選項"|"鍵盤 "打開該編輯器(macOS 用戶可進入 "鍵盤 "打開)。

鍵圖擴展是一項偉大的功能,可以幫助其他編輯器的用戶快速開始使用 VS Code 編輯器。如果想查看流行的鍵盤映射擴展列表,可前往 "從......遷移鍵盤快捷方式"(Migrate Keyboard Shortcuts from... 這將顯示流行的鍵盤映射擴展列表。這些擴展會修改 VS Code 的快捷鍵,使其與其他編輯器的快捷鍵相匹配,因此在切換到 VS Code 時無需學習新的鍵盤快捷鍵。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • C++ 解引用 獲取記憶體地址和值 在上一頁的示例中,我們使用了指針變數來獲取變數的記憶體地址(與引用運算符 & 一起使用)。但是,你也可以使用指針來獲取變數的值,這可以通過使用 * 運算符(解引用運算符)來實現: string food = "Pizza"; // 變數聲明 string* ptr = ...
  • 大家好,我是白夜,今天給大家聊聊面向對象的三大特征——封裝 一、包(package) 1.1、包的引入 先來看看我們之前寫的代碼結構 以上代碼存在的問題 所有類寫在一個目錄下麵,非常難管理,因為以後項目不可能只有這麼幾個類,當類數量很大的時候,就不容易管理了。 不能寫同名但是不同需求的類。 為瞭解決 ...
  • 隨著B端業務快速發展,系統愈趨複雜。我們發起了B端架構升級專項,基於B端業務的特點,從研發規範建設、B端架構基建、系統架構升級和落地保障等多方面提升了B端的架構水平 ...
  • 問題背景 訪問某個 HTTP 功能變數名稱介面,偶發性超時,原因可能多種多樣,比如 DNS 解析問題、網路質量問題、對端服務負載問題等,在客戶端沒有良好埋點的情況下,排查起來比較費勁,只能挨個方向嘗試,這裡送大家一個小工具,可以快速採樣 DNS 解析延遲,快速確認是否是 DNS 解析問題。 使用演示 運行工 ...
  • 前端 https://blog.csdn.net/m0_37613503/article/details/128961447 資料庫 1.用戶表 CREATE TABLE `x_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varc ...
  • 1.VS上安裝Qt擴展 點擊菜單欄【擴展】->【管理擴展】,在搜索框搜索“Qt”, 點擊下載Qt Visual Studio Tools, 以2022版為例,需要關閉所有視窗才能執行安裝 關閉VS後,彈出安裝視窗,等待其安裝完成 2. 新建QT工程測試 等待安裝完成後,添加一個Qt Vertion後 ...
  • 隨著互聯網的迅猛發展,越來越多的應用場景需要進行用戶實名認證,其中手機號機主姓名核驗就是其中必不可少的一環。在電商、游戲、直播、金融等領域,用戶實名認證成為了一個重要的手段,以提高安全性和信任度。 近年來,隨著手機號的普及和使用頻率的增加,手機號的歸屬地信息也逐漸成為人們關註的焦點。手機號機主姓名核 ...
  • decltype關鍵字是C++11新標準引入的關鍵字,它和關鍵字auto的功能類似,也可以自動推導出給定表達式的類型,但它和auto的語法有些不同,這篇文章講解了decltype的使用場景以及和auto不同的地方,同時也講解了和auto結合使用的用法。 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 插件化的需求主要源於對軟體架構靈活性的追求,特別是在開發大型、複雜或需要不斷更新的軟體系統時,插件化可以提高軟體系統的可擴展性、可定製性、隔離性、安全性、可維護性、模塊化、易於升級和更新以及支持第三方開發等方面的能力,從而滿足不斷變化的業務需求和技術挑戰。 一、插件化探索 在WPF中我們想要開 ...
  • 歡迎ReaLTaiizor是一個用戶友好的、以設計為中心的.NET WinForms項目控制項庫,包含廣泛的組件。您可以使用不同的主題選項對項目進行個性化設置,並自定義用戶控制項,以使您的應用程式更加專業。 項目地址:https://github.com/Taiizor/ReaLTaiizor 步驟1: ...
  • EDP是一套集組織架構,許可權框架【功能許可權,操作許可權,數據訪問許可權,WebApi許可權】,自動化日誌,動態Interface,WebApi管理等基礎功能於一體的,基於.net的企業應用開發框架。通過友好的編碼方式實現數據行、列許可權的管控。 ...
  • Channel 是乾什麼的 The System.Threading.Channels namespace provides a set of synchronization data structures for passing data between producers and consume ...
  • efcore如何優雅的實現按年分庫按月分表 介紹 本文ShardinfCore版本 本期主角: ShardingCore 一款ef-core下高性能、輕量級針對分表分庫讀寫分離的解決方案,具有零依賴、零學習成本、零業務代碼入侵適配 距離上次發文.net相關的已經有很久了,期間一直在從事java相關的 ...
  • 前言 Spacesniffer 是一個免費的文件掃描工具,通過使用樹狀圖可視化佈局,可以立即瞭解大文件夾的位置,幫助用戶處理找到這些文件夾 當前系統C盤空間 清理後系統C盤空間 下載 Spacesniffer 下載地址:https://spacesniffer.en.softonic.com/dow ...
  • EDP是一套集組織架構,許可權框架【功能許可權,操作許可權,數據訪問許可權,WebApi許可權】,自動化日誌,動態Interface,WebApi管理等基礎功能於一體的,基於.net的企業應用開發框架。通過友好的編碼方式實現數據行、列許可權的管控。 ...
  • 一、ReZero簡介 ReZero是一款.NET中間件 : 全網唯一開源界面操作就能生成API , 可以集成到任何.NET6+ API項目,無破壞性,也可讓非.NET用戶使用exe文件 免費開源:MIT最寬鬆協議 , 一直從事開源事業十年,一直堅持開源 1.1 純ReZero開發 適合.Net Co ...
  • 一:背景 1. 講故事 停了一個月沒有更新文章了,主要是忙於寫 C#內功修煉系列的PPT,現在基本上接近尾聲,可以回頭繼續更新這段時間分析dump的一些事故報告,有朋友微信上找到我,說他們的系統出現了大量的http超時,程式不響應處理了,讓我幫忙看下怎麼回事,dump也抓到了。 二:WinDbg分析 ...
  • 開始做項目管理了(本人3年java,來到這邊之後真沒想到...),天天開會溝通整理需求,他們講話的時候忙裡偷閑整理一下常用的方法,其實語言還是有共通性的,基本上看到方法名就大概能猜出來用法。出去打水的時候看到外面太陽好好,真想在外面坐著曬太陽,回來的時候好兄弟三年前送給我的鍵盤D鍵不靈了,在打"等待 ...