網站首頁 編程語言 正文
常見數據類型介紹
Python 原生的數據類型相對較少, bool、int、float、str等。這在不需要關心數據在計算機中表示的所有方式的應用中是方便的。然而,對于科學計算,通常需要更多的控制。為了加以區分 numpy 在這些類型名稱末尾都加了“_”。
類型 | 備注 | 說明 |
bool8 = bool_(加下滑線代表為最大) | 8位(一個字節八位) | 布爾類型 |
int8 = byte | 8位 | 整型 |
int16 = short | 16位 | 整型 |
int32 = intc | 32位 | 整型 |
int_ = int64 = long = int0 = intp | 64位 | 整型 |
uint8 = ubyte | 8位 | 無符號整型 |
uint16 = ushort | 16位 | 無符號整型 |
uint32 = uintc | 32位 | 無符號整型 |
uint64 = uintp = uint0 = uint | 64位 | 無符號整型 |
float16 = half | 16位 | 浮點型 |
float32 = single | 32位 | 浮點型 |
float_ = float64 = double | 64位 | 浮點型 |
str_ = unicode_ = str0 = unicode | Unicode 字符串 | |
datetime64 | 日期時間類型 | |
timedelta64 | 表示兩個時間之間的間隔 |
創建數據類型
numpy 的數值類型實際上是 dtype 對象的實例。
class dtype(object):
def __init__(self, obj, align=False, copy=False):
pass
數據類型對象 (dtype)
數據類型對象(numpy.dtype 類的實例)用來描述與數組對應的內存區域是如何使用,它描述了數據的以下幾個方面::
- 數據的類型(整數,浮點數或者 Python 對象)
- 數據的大小(例如, 整數使用多少個字節存儲)
- 數據的字節順序(小端法或大端法)
- 在結構化類型的情況下,字段的名稱、每個字段的數據類型和每個字段所取的內存塊的部分
- 如果數據類型是子數組,那么它的形狀和數據類型是什么。
字節順序是通過對數據類型預先設定 < 或 > 來決定的。 < 意味著小端法(最小值存儲在最小的地址,即低位組放在最前面)。> 意味著大端法(最重要的字節存儲在最小的地址,即高位組放在最前面)。
dtype 對象是使用以下語法構造的:
numpy.dtype(object, align, copy)
- object - 要轉換為的數據類型對象
- align - 如果為 true,填充字段使其類似 C 的結構體。
- copy - 復制 dtype 對象 ,如果為 false,則是對內置數據類型對象的引用
每個內建類型都有一個唯一定義它的字符代碼,如下:
字符 | 對應類型 | 備注 |
b | boolean | 'b1'(將這個字符代碼作為參數傳給dtype,則會建立boolean實例) |
i | signed integer | 'i1', 'i2', 'i4', 'i8' |
u | unsigned integer | 'u1', 'u2' ,'u4' ,'u8' |
f | floating-point | 'f2', 'f4', 'f8' |
c | complex floating-point | |
m | timedelta64 | 表示兩個時間之間的間隔 |
M | datetime64 | 日期時間類型 |
O | object | |
S | (byte-)string | S3表示長度為3的字符串 (傳入的參數 必須是大寫S)Bytes 代表的是(二進制)數字的序列,只不過在是通過 ASCII 編碼之后才是我們看到的字符形式 |
U | Unicode | Unicode 字符串 (傳入的參數 必須是大寫U) |
V | void |
結構化數據類型的使用,類型字段和對應的實際類型將被創建:
dt = np.dtype([("age",np.int_)])
dt
a = np.array([(31,),(27,),(36,),(28,),(18,)],dtype=dt)
a["age"]
定義一個結構化數據類型 student,包含字符串字段 name,整數字段 age,及浮點字段 marks,并將這個 dtype 應用到 ndarray 對象。
student = np.dtype([("name","S30"),("age",np.int_),("marks","f4")])
student
student = np.dtype([("name","S30"),("age",np.int_),("marks","f4")])
a = np.array([("STZZ",31,0.3),("WJ",22,0.9),("WTX",27,1.0)],dtype=student)
a
a["name"]
a["age"]
a["marks"]
原文鏈接:https://wtl4it.blog.csdn.net/article/details/129164490
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-11-07 PostgreSQL長事務概念解析_PostgreSQL
- 2023-04-02 pytorch?transform數據處理轉c++問題_python
- 2022-03-31 C語言類的基本語法詳解_C 語言
- 2023-11-19 urllib2.HTTPError: HTTP Error 403: Forbidden; in h
- 2022-12-12 pycharm?console?打印中文為亂碼問題及解決_python
- 2022-04-16 C#基于Socket實現多人聊天功能_C#教程
- 2022-06-28 python神經網絡使用tensorflow構建長短時記憶LSTM_python
- 2022-05-23 ELK與Grafana聯合打造可視化監控來分析nginx日志_nginx
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支