搞定Python的幾個常用數據結構!

2021-12-11 日常學python

大家好,我是濤哥。

python基本數據類型

數字類型

各進位的表示與轉換

序列

str字符串

列表(list)

元組(tuple)

序列總結

集合(set)

字典(dict)

轉義字符

知識點總結

首先需要你的電腦安裝好了Python環境,並且安裝好了Python開發工具。

數字類型

python中的數據類型==僅有int和float兩種==(沒有如short,long,double之分)

具體運算中數據的類型

這裡查看各種情況的數據類型運用到了python中的==type函數==

print(type(1))
print(type(-1))
print(type(1.1111))
print(type(1+1))
print(type(1+1.0))  # 由於1.0為float類型,python將1+1.0自動轉化為float類型

print(type(1*1))
print(type(1*1.0))
#  python中的除法使用'/'結果為float類型,使用"//"為int類型
print(type(2/2))
print(type(2//2))
print(type(1//2))  # 與其他語言類似python中整除會忽略小數點後數字

運行結果:

==小結:==

1、只要式子中出現了浮點型數字(小數)最終整體類型都會變成float類型2、使用'/'結果為float類型,使用"//"為int類型(第一點優先級最高)

布爾類型:bool==python中,布爾類型也是數字的一種==

不同情況下的布爾類型
#  bool類型包括 True和 False兩種
print(type(True))
print(type(False))
#  將bool類型轉換為int類型
print(int(True))
print(int(False))
#  python中0為假,非0為真(無論進位)
print(bool(1))
print(bool(0))
print(bool(2.2))
print(bool(0b10))
#  對字符串取布爾值
print(bool('abc'))
print(bool(''))
#  對列表取布爾值
print(bool([1,2,3]))
print(bool([]))

運行結果:

==小結==

數字中:0為False,其他均為True;在其他類型中:空為False,非空為True各進位的表示與轉換 進位的表示
# 二進位標識符為 0b,列印輸出其代表的十進位數
print(0b10)
print(0b11)
# 八進位標識符為 0o,列印輸出其代表的十進位數
print(0o10)
print(0o11)
# 十六進位標識符為 0x,列印輸出其代表的十進位數
print(0x10)
print(0x1F)
# 輸入數字默認為十進位
print(10)

結果:

==小結==:需牢記各種進位的表示形式

進位的轉換轉換為十六進位(hexadecimal):hex()
# 轉換為二進位
print(bin(10))
print(bin(0o7))
print(bin(0xE))
# 轉換為八進位
print(oct(0b111))
print(oct(0x777))
# 轉換為十進位
print(int(0b111))
print(int(0o777))
# 轉換為十六進位
print(hex(888))
print(hex(0b111))
print(hex(0o7777))

運行結果:

序列 str字符串字符串類型表示為單/雙引號內的內容,由於英文語句中可能出現單引號的情況(Let's go),此時可使用雙引號擴起字符串中的內容
print("Let't go")
print('Let't go')  #  其中此語句會報錯

運行結果:

字符串的運算
#  字符串的運算
print("he"+"llo")
print("hello"*3)

結果

獲取單個字符在str後添加[i](i代表想要獲取str中的位置下標),可獲取指定位置字符
#  輸出指定位置的字符
print("hello world"[0])
print("hello world"[1])
print("hello world"[2])
print("hello world"[-1])
print("hello world"[-2])

結果

其中==i可為負數==,代表獲取倒數第i位的數字

獲取指定區間內的字符串使用『:』對起始位置和末尾位置進行連接,如:[m:n+1]表示截取str中下標為==m~n+1==的字符串進行截取(==n+1位置取開區間==)[m:]則表示由下標為m的位置一直截取到末尾
#  截取指定區域的字符串
print("hello world"[0:5])
print("hello world"[-5:11])
print("hello world"[-5:])

列表(list)列表存儲的數據類型
#  列表可存儲的類型
print(type([1, 2, 3, 4, 5]))
print(type(["hello", 1, False]))
print(type([[1, 2], [3, 4], [True, False]]))  # 嵌套列表

讀取列表中的元素
#  讀取列表中的元素
print(["hello", "world"][0:])  # 和str類型的讀取方式相同

列表的運算
#  列表的運算(和str的運算相似)
print(["hello", "world"] + ["hello", "world"])
print(["hello", "world"] * 3)

元組(tuple)元組的基本使用方法,存儲數據的規則和列表相同,它們的區別主要在以下幾點:列表是動態數組,它們可變且可以重設長度(改變其內部元素的個數)。元組是靜態數組,它們不可變,且其內部數據一旦創建便無法改變。元組緩存於Python運行時環境,這意味著我們每次使用元組時無須訪問內核去分配內存。對元組的基本操作
#  元組存儲是數據類型
print(type((1, 2, 3, 4, 5)))
print(type((1, 2, "hello", [1, 2, 3], True)))
#  獲取指定位置元素
print((1, 2, 3, 4)[2])
#  獲取指定區域元素
print((1, 2, 3, 4)[1:])
print(type((1, 2, 3, 4)[1:]))  # 返回類型為tuple
#  元組的運算
print((1, 2, 3, 4)+(5, 6))
print((1, 2, 3, 4)*2)

序列總結提取指定區間元素方法:序列後面緊跟[m : n](m,n為區間下標,n為開區間)

==序列這種類型對其中的元素操作方法完全相同==

集合(set) 集合中的數據是==無序的==,故==不能用下標==進行訪問集合的運算
#  求兩個集合的差集
print({1, 2, 3, 4, 5, 6} - {2, 3})  # '-'為求差集的符號
#  求兩個集合的交集
print({1, 2, 3, 4, 5, 6} & {2, 3})  # '&'為求交集的符號
#  求兩個集合的併集
print({1, 2, 3, 4, 5, 6} | {5, 6, 7})  # '-'為求差集的符號

>>> set()

字典(dict) 字典和集合定義的區別:dict:{key1:value1,key2:value2}set:{value1,value2....}字典中的鍵==不能重複也不可變==(如list列表就是可變類型)
#  字典類型的輸入格式
print(type({1: 1, 2: 2, 3: 3}))
#  字典的使用
print({1:"Hello", 2:"world"}[2])

轉義字符 知識點總結

相關焦點

  • 一日一技:python中4大數據結構常用接口簡介
    具體到python中數據結構的選擇運用,雖然有很多類型可供選擇:除了基本的列表、字典、集合和元組4個基本類型外,collections模塊中提供了很多定製化的數據結構,還有專用的堆heapq和枚舉enum等。誠然,特定數據結構在某些應用場景下可能有神奇的效果,但把基礎數據類型用到極致也可堪稱是絕招。
  • 學好Python,必須熟練掌握的幾種數據結構【文末送書】
    python提供了多種數據結構可供選擇,除了全局的列表、字典、集合和元組4個基本類型外,collections模塊提供了一些定製化的數據結構集合類數據結構,array和heapq模塊則分別提供了數組和堆數據結構,本文就這4種類型加以分別介紹。本文所指數據結構特指容器類數據結構,不包含int、str、boolean等單數據類型。
  • python數據分析常用庫
    python被稱作膠水語言原因是具有非常非常多的庫可以使用。其中做數據分析時那些庫常用,怎麼用是本篇文字討論的內容。官方的網址:https://pandas.pydata.org/Pandas包含:1、DataFrame(二維表)數據結構2、Series(一維數組)數據結構3、對數據的操作工具和方法如果是用Anaconda的話,默認已經包含Pandas,不需要另外安裝DataFrame讀取CSV構建對象,只需一行代碼df = pd.DataFrame(pd.read_csv
  • Python基礎學習—數據結構:列表
    前面我們學習了pyth
  • Simple is better than complex——python中4大數據結構常用接口簡介
    具體到python中數據結構的選擇運用,雖然有很多類型可供選擇:除了基本的列表、字典、集合和元組4個基本類型外,collections模塊中提供了很多定製化的數據結構,還有專用的堆heapq和枚舉enum等。誠然,特定數據結構在某些應用場景下可能有神奇的效果,但把基礎數據類型用到極致也可堪稱是絕招。
  • 了解這些python數據結構,你也可以進BAT
    了解了數據結構,你就能把python代碼寫的如絲般順滑。  現如今在很多大廠面試中,面試官都會著重考察候選人對數據結構的認識程度和應用水平,為什麼呢?因為在實際工作過程中,數據結構就像代碼的地基一樣,地基不牢地動山搖。只有充分理解數據機構,才能在工作中應用的得心應手。Python中有哪些數據結構呢?
  • 【乾貨分享】Python數據結構與算法設計總結篇
    1.Python數據結構篇數據結構篇主要是閱讀[Problem Solving with Python](http://interactivepython.org/courselib/static/pythonds/index.html)時寫下的閱讀記錄,當然,也結合了部分[算法導論]( http:/
  • 一網打盡Python中4大數據結構
    具體到python中數據結構的選擇運用,雖然有很多類型可供選擇:除了基本的列表、字典、集合和元組4個基本類型外,collections模塊中提供了很多定製化的數據結構,還有專用的堆heapq和枚舉enum等。誠然,特定數據結構在某些應用場景下可能有神奇的效果,但把基礎數據類型用到極致也可堪稱是絕招。
  • Python機器視覺編程常用數據結構與示例
    數據結構數據結構是通過某種方式(例如對元素進行編號)組織在一起的數據元素的集合,這些數據元素可以是數字或者字符,甚至可以是其他數據結構。在Python中最基本的數據結構是序列(sequence)。序列中每個元素被分配一個序號——即元素的位置,也稱為索引(index),第一個元素的索引是0,第二個是1,以此類推。python包含6種內建序列,最常用的兩種類型是:列表和元組。
  • python數據處理 | 氣象數據的常用格式以及處理方法
    這次我們來簡單了解下氣象數據常用的格式以及處理的工具,常用的數據格式包括普通的二進位格式、文本數據、NetCDF、HDF4/5以及GRIB1/2數據。我們可以利用程式語言例如python、matlab以及c語言,根據數據的說明文檔或者相應的數據api開發文檔進行讀取,此外我們也可以根據提供的command命令行進行高效提取數據。
  • python高級用法,自定義數據結構,我猜你一定沒使用過
    文/IT可達鴨圖/IT可達鴨、網絡前言每個學習python的人都會對這些原生的數據結構有一定的了解,python底層給我們提供了多種多樣的原生數據結構,例如:list同樣的,原生數據結構所定義的基本方法,也是大家所熟悉的,例如:len()、str()、int()等等。當然還有,我們最最熟悉的比較操作符,例如:>=、==、<=等等。還有運算操作符、容器操作等等。魔術方法我現在告訴你,其實上面這些原生數據結構、操作符、運算符都可以自定義,而且非常簡單。
  • 這幾個常用的python庫你需要知道
    python可以說是近幾年最火熱、最實用的、最容易上手的工具之一了。功能強大、應用廣泛,可以幫你搜集工作數據,還能幫你下載音樂,電影,於是就掀起了一波學習python的大潮,小編也毫不猶豫的加入了。但是對於向小編一樣的小白來說,剛開始學習還是有些困難的,需要首先了解python的一些基礎知識。所以小編就整理了一些常用的python庫,希望對正在學習python的小夥伴有所幫助。1.MatplotlibMatplotlib是一個用於創建二維圖和圖形的底層庫。藉由它的幫助,你可以構建各種不同的圖標,從直方圖和散點圖到費笛卡爾坐標圖。
  • Python帶你了解數據結構【一】
    我們學過計算機的童鞋們都知道算法與數據結構一直是大家逃不掉的噩夢,那麼今天小編就帶大家來看看用python來解讀這些數據結構是否會變得簡單一點呢
  • python數據分析常用庫之pandas入門(2)
    索引、選擇和賦值昨天介紹了pandas的模塊引入、創建和讀取數據,今天主要看看怎麼從數據結構中獲得想要的值,也就是數據的索引查找、
  • python數據分析專題 (7):python數據分析模塊
    也就是這些python的擴展包讓python可以做數據分析,主要包括numpy,scipy,pandas,matplotlib,scikit-learn等等諸多強大的模塊,在結合上ipython交互工具 ,以及python強大的爬蟲數據獲取能力,字符串處理能力,讓python成為完整的數據分析工具。
  • Python | 看得到,取得到,才是數據(二):幾行代碼搞定PDF文件中表格數據讀取
    幾行代碼搞定PDF文件中表格數據讀取!相關閱讀如何用Python幫你高效地翻憑證?Python整合平臺Anaconda的安裝和使用如何批量在多個word文檔中查找線索關鍵詞?看得到,取得到,才是數據:pandas 也可爬蟲?
  • 【Python基礎】盤點 Python 10 大常用數據結構(上篇)
    Python 常用數據結構學習目的這個專題,儘量使用最精簡的文字,藉助典型案例盤點Python常用的數據結構。如果你還處於Python入門階段,通常只需掌握list、tuple、set、dict這類數據結構,做到靈活使用即可。
  • Python基礎學習之常用六大數據類型
    Python六大常用數據類型: int 整數 float 浮點數 str 字符串 list 列表a = 1b = 1.1print(type(a+b)) #<class 'float'>三、字符串字符串在任何程式語言中都是最常用的數據類型。字符串的創建很簡單,也是上面所說的三步,但是要加上單引號或者雙引號。
  • Pandas常用數據結構DataFrame詳細教程
    pandas 是python的數據分析庫,提供快速、靈活和富有表現力的數據結構,用於數據挖掘和數據分析,同時也提供數據清洗功能,與numpy、matplotlib
  • python:collections模塊中的數據結構
    python中的數據結構除了內置的數據結構如列表、字典、元組、集合等之外,python的colletions內置模塊中還有一些高級的數據結構,可以在特定場景下提高便利性