5.18 day24

知識點回顧:

  1. 元組
  2. 可迭代對象
  3. os模塊

作業:對自己電腦的不同文件夾利用今天學到的知識操作下,理解下os路徑。

元組
元組的特點:

有序,可以重復,這一點和列表一樣
元組中的元素不能修改,這一點非常重要,深度學習場景中很多參數、形狀定義好了確保后續不能被修改。
很多流行的 ML/DL 庫(如 TensorFlow, PyTorch, NumPy)在其 API 中都廣泛使用了元組來表示形狀、配置等。

可以看到,元組最重要的功能是在列表之上,增加了不可修改這個需求

元組的創建

my_tuple1 = (1, 2, 3)
my_tuple2 = ('a', 'b', 'c')
my_tuple3 = (1, 'hello', 3.14, [4, 5]) # 可以包含不同類型的元素
print(my_tuple1)
print(my_tuple2)
print(my_tuple3)
# 可以省略括號
my_tuple4 = 10, 20, 'thirty' # 逗號是關鍵
print(my_tuple4)
print(type(my_tuple4)) # 看看它的類型
# 創建空元組
empty_tuple = ()
# 或者使用 tuple() 函數
empty_tuple2 = tuple()
print(empty_tuple)
print(empty_tuple2)
元組的常見用法
# 元組的索引
my_tuple = ('P', 'y', 't', 'h', 'o', 'n')
print(my_tuple[0])  # 第一個元素
print(my_tuple[2])  # 第三個元素
print(my_tuple[-1]) # 最后一個元素
# 元組的長度獲取
my_tuple = (1, 2, 3)
print(len(my_tuple))

管道工程中pipeline類接收的是一個包含多個小元組的 列表 作為輸入。

可以這樣理解這個結構:

列表 []: 定義了步驟執行的先后順序。Pipeline 會按照列表中的順序依次處理數據。之所以用列表,是未來可以對這個列表進行修改。
元組 (): 用于將每個步驟的名稱和處理對象捆綁在一起。名稱用于在后續訪問或設置參數時引用該步驟,而對象則是實際執行數據轉換或模型訓練的工具。固定了操作名+操作
不用字典因為字典是無序的。

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline
from sklearn.metrics import accuracy_score# 1. 加載數據
iris = load_iris()
X = iris.data
y = iris.target# 2. 劃分訓練集和測試集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)# 3. 構建管道
# 管道按順序執行以下步驟:
#    - StandardScaler(): 標準化數據(移除均值并縮放到單位方差)
#    - LogisticRegression(): 邏輯回歸分類器
pipeline = Pipeline([('scaler', StandardScaler()),('logreg', LogisticRegression())
])# 4. 訓練模型
pipeline.fit(X_train, y_train)# 5. 預測
y_pred = pipeline.predict(X_test)# 6. 評估模型
accuracy = accuracy_score(y_test, y_pred)
print(f"模型在測試集上的準確率: {accuracy:.2f}")

可迭代對象
可迭代對象 (Iterable) 是 Python 中一個非常核心的概念。簡單來說,一個可迭代對象就是指那些能夠一次返回其成員(元素)的對象,讓你可以在一個循環(比如 for 循環)中遍歷它們。

Python 中有很多內置的可迭代對象,目前我們見過的類型包括:

序列類型 (Sequence Types):

list?(列表)
tuple?(元組)
str?(字符串)
range?(范圍)
集合類型 (Set Types):

set?(集合)
字典類型 (Mapping Types):

dict?(字典) - 迭代時返回鍵 (keys)
文件對象 (File objects)

生成器 (Generators)

迭代器 (Iterators) 本身

# 列表 (list)
print("迭代列表:")
my_list = [1, 2, 3, 4, 5]
for item in my_list:print(item)# 元組 (tuple)
print("迭代元組:")
my_tuple = ('a', 'b', 'c')
for item in my_tuple:print(item)# 字符串 (str)
print("迭代字符串:")
my_string = "hello"
for char in my_string:print(char)# range (范圍)
print("迭代 range:")
for number in range(5):  # 生成 0, 1, 2, 3, 4print(number)# 集合類型 (Set Types)# 集合 (set) - 注意集合是無序的,所以每次迭代的順序可能不同
print("迭代集合:")
my_set = {3, 1, 4, 1, 5, 9}
for item in my_set:print(item)# 字典 (dict) - 默認迭代時返回鍵 (keys)
print("迭代字典 (默認迭代鍵):")
my_dict = {'name': 'Alice', 'age': 30, 'city': 'Singapore'}
for key in my_dict:print(key)# 迭代字典的值 (values)
print("迭代字典的值:")
for value in my_dict.values():print(value)

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

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

相關文章

Uniapp中小程序調用騰訊地圖(獲取定位地址)

1、先配置權限: 這是上圖的代碼: "permission": { "scope.userLocation": { "desc": "你的位置信息將用于小程序位置接口的效果展示" } } 第二步:寫代碼: //下面是uniapp的模版代碼 主…

寫spark程序數據計算( 數據庫的計算,求和,匯總之類的)連接mysql數據庫,寫入計算結果

1. 添加依賴 在項目的 pom.xml&#xff08;Maven&#xff09;中添加以下依賴&#xff1a; xml <!-- Spark SQL --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_2.12</artifactId> <version>3.3.0…

nginx服務器實驗

1.實驗要求 1&#xff09;在Nginx服務器上搭建LNMP服務&#xff0c;并且能夠對外提供Discuz論壇服務。 在Web1、Web2服務器上搭建Tomcat 服務。 2&#xff09;為nginx服務配置虛擬主機&#xff0c;新增兩個域名 www.kgc.com 和 www.benet.com&#xff0c;使用http://www.kgc.…

Spring Boot 與 RabbitMQ 的深度集成實踐(一)

引言 ** 在當今的分布式系統架構中&#xff0c;隨著業務復雜度的不斷提升以及系統規模的持續擴張&#xff0c;如何實現系統組件之間高效、可靠的通信成為了關鍵問題。消息隊列作為一種重要的中間件技術&#xff0c;應運而生并發揮著舉足輕重的作用。 消息隊列的核心價值在于其…

c++多線程debug

debug demo 命令行查看 ps -eLf|grep cam_det //查看當前運行的輕量級進程 ps -aux | grep 執行文件 //查看當前運行的進程 ps -aL | grep 執行文件 //查看當前運行的輕量級進程 pstree -p 主線程ID //查看主線程和新線程的關系 查看線程棧結構 pstack 線程ID 步驟&…

10.7 LangChain v0.3架構大升級:模塊化設計+多階段混合檢索,開發效率飆升3倍!

LangChain v0.3 技術生態與未來發展 關鍵詞:LangChain Chains, Agents 架構, Retrieval Strategy, LangGraph, 模塊化設計 3. LangChain 項目:Chains, Agents, Retrieval Strategy LangChain v0.3 通過 Chains-Agents-Retrieval 三位一體的技術棧,構建起完整的大模型應用開…

分布式 ID 生成的五種方法:優缺點與適用場景

0.簡介 在分布式系統中&#xff0c;生成全局唯一的id是一個常見的需求。由于分布式系統的特性&#xff08;多節點&#xff0c;網絡分區&#xff0c;時鐘不同步等&#xff09;&#xff0c;傳統的單機ID生成方式不再適用&#xff0c;所以一些分布式生成方式應運而生&#xff0c;…

基于單片機路燈自動控制儀仿真設計

標題:基于單片機路燈自動控制儀仿真設計 內容:1.摘要 本設計旨在解決傳統路燈控制方式效率低、能耗大的問題&#xff0c;開展了基于單片機的路燈自動控制儀仿真設計。采用單片機作為核心控制單元&#xff0c;結合光照傳感器、時鐘模塊等硬件&#xff0c;運用相關軟件進行編程和…

計算機網絡-MPLS VPN基礎概念

前面幾篇文章我們學習了MPLS的標簽轉發原理&#xff0c;有靜態標簽分發和LDP動態標簽協議&#xff0c;可以實現LSR設備基于標簽實現數據高效轉發。現在開始學習MPLS在企業實際應用的場景-MPLS VPN。 一、MPLS VPN概念 MPLS&#xff08;多協議標簽交換&#xff09;位于TCP/IP協…

LWIP的Socket接口

Socket接口簡介 類似于文件操作的一種網絡連接接口&#xff0c;通常將其稱之為“套接字”。lwIP的Socket接口兼容BSD Socket接口&#xff0c;但只實現完整Socket的部分功能 netconn是對RAW的封裝 Socket是對netconn的封裝 SOCKET結構體 struct sockaddr { u8_t sa_len; /* 長…

windows 安裝gdal實現png轉tif,以及柵格拼接

windows 安裝gdal實現png轉tif&#xff0c;以及柵格拼接 一、安裝gdal 網上有很多安裝gdal的方法&#xff0c;此處通過osgeo4w安裝gdal 1.下載osgeo4w 下載地址 https://trac.osgeo.org/osgeo4w/ 2、安裝osgeo4w exe文件安裝&#xff0c;前面部分很簡單&#xff0c;就不再…

Node.js 源碼概覽

Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行時環境&#xff0c;它的源碼結構相當龐大且復雜。下面我將為你講解 Node.js 源碼的主要結構和關鍵組成部分。 源碼結構 Node.js 的主要源碼目錄結構如下&#xff1a; node/ ├── lib/ # JavaScript 核心模…

Linux :線程 【生產者消費者模型】

Linux &#xff1a;線程 【生產者消費者模型與信號量】 &#xff08;一&#xff09;生產消費模型1、生產消費模式概念2、生產者消費者之間的關系3、生產者消費者模型優點 &#xff08;二&#xff09;基于BlockingQueue的生產者消費者模型1、基于阻塞隊列模型2、模擬實現基于阻塞…

mac本地docker鏡像上傳指定虛擬機

在Mac本地將Docker鏡像上傳至指定虛擬機的完整步驟 1. 在Mac本地保存Docker鏡像為文件 通過docker save命令將鏡像打包為.tar文件&#xff0c;便于傳輸至虛擬機。 # 示例&#xff1a;保存名為"my_image"的鏡像到當前目錄 docker save -o my_image.tar my_image:ta…

C++跨平臺開發經驗與解決方案

在當今軟件開發領域&#xff0c;跨平臺開發已成為一個重要的需求。C作為一種強大的系統級編程語言&#xff0c;在跨平臺開發中扮演著重要角色。本文將分享在實際項目中的跨平臺開發經驗和解決方案。 1. 構建系統選擇 CMake的優勢 跨平臺兼容性好 支持多種編譯器和IDE 強大…

Void: Cursor 的開源平替

GitHub&#xff1a;https://github.com/voideditor/void 更多AI開源軟件&#xff1a;發現分享好用的AI工具、AI開源軟件、AI模型、AI變現 - 小眾AI Void&#xff0c;這款編輯器號稱是開源的 Cursor 和 GitHub Copilot 替代品&#xff0c;而且完全免費&#xff01; 在你的代碼庫…

基于HTML+JavaScript+CSS實現教學網站

摘要 21世紀是信息化的時代&#xff0c;信息化物品不斷地涌入我們的生活。同時&#xff0c;教育行業也產生了重大變革。傳統的身心教授的模式&#xff0c;正在被替代。互聯網模式的教育開辟了一片新的熱土。 這算是對教育行業的一次重大挑戰。截至目前&#xff0c;眾多教育行…

基于ssm+mysql的高校設備管理系統(含LW+PPT+源碼+系統演示視頻+安裝說明)

系統功能 管理員功能&#xff1a;系統登錄、員工管理、設備管理、設備采購統計、設備報廢統計&#xff1b;用戶角色功能&#xff1a;設備采購管理、設備報廢管理、個人資料管理。 作者&#xff1a;計算機搬磚家 開發技術&#xff1a;SpringBoot、php、Python、小程序、SSM、Vu…

電力桿塔安全監測解決方案

一、方案背景 在臺風、滑坡等自然災害出現時&#xff0c;極易產生倒桿、斷桿、桿塔傾斜、塔基滑動等致使桿塔失穩的狀況&#xff0c;進而引發導線斷線、線路跳閘等事故&#xff0c;給電網的安全穩定運行造成影響。可借助在鐵塔上裝設的傳感器&#xff0c;能夠感知鐵塔的工作狀態…

基于Quicker構建從截圖到公網圖像鏈接獲取的自動化流程

寫在前面&#xff1a;本博客僅作記錄學習之用&#xff0c;部分圖片來自網絡&#xff0c;如需引用請注明出處&#xff0c;同時如有侵犯您的權益&#xff0c;請聯系刪除&#xff01; 文章目錄 前言預備內容轉webp程序PicGo設置Quicker設置視頻演示總結互動致謝參考 前言 在自建博…