datatype在python專題及常見問題 - CSDN

2020-12-22 CSDN技術社區
title category layout tags date

python教程之3基本數據類型

python

post

2018-01-29 23:00:24

上篇文章簡單介紹了Python語言的基本語法,以及如何在IDE編寫一個Python程序。

本文將介紹Python中的基本數據類型以及相關的操作。

基本數據類型

Python有五個標準的數據類型:

  • Numbers(數字)
  • String(字符串)
  • List(列表)
  • Tuple(元組)
  • Dictionary(字典)

Python中創建變量時不需要聲明具體的數據類型,由賦值時確定。比如:

i=1#整形j=1.0#float型k='qwer'#字符型m=[1,2,3,4]#列表n=(2,1,3)#元組x={'mm':1}#字典型

基本數據類型之數值型

數值型有下面幾種類型:

  • int(有符號整型)
  • float(浮點型)
  • complex(複數)

示例:

j=10#intk=1.0#floatm=1+2j#complex,1為實部,2為虛部n=complex(1,2)#complex,1為實部,2為虛部

注意:長整型也可以使用小寫 l,但建議使用大寫L,避免與數字1混淆。複數由實數部分和虛數部分構成,可以用 a + bj,或者 complex(a,b) 表示, 複數的實部 a 和虛部 b 都是浮點型。

基本數據類型之字符串

字符串或串(String)是由數字、字母、下劃線組成的一串字符。

一般記為 :s="a1a2···an"(n>=0),表示文本的數據類型。

python的字串列表有2種取值順序:

  • 從左到右索引默認0開始的,最大範圍是字符串長度少1
  • 從右到左索引默認-1開始的,最大範圍是字符串開頭

如果要實現從字符串中獲取一段子字符串的話,可以使用變量 [頭下標:尾下標],就可以截取相應的字符串,其中下標是從 0 開始算起,可以是正數或負數,下標可以為空表示取到頭或尾。

比如:

str = 'Hello World!' print str           # 輸出完整字符串print str[0]        # 輸出字符串中的第一個字符print str[2:5]      # 輸出字符串中第三個至第五個之間的字符串print str[2:]       # 輸出從第三個字符開始的字符串print str * 2       # 輸出字符串兩次print str + "TEST"  # 輸出連接的字符串

基本數據類型之列表

列表支持字符,數字,字符串甚至可以包含列表(即嵌套)。

列表用 [ ] 標識,是 python 最通用的複合數據類型。

列表中值的切割也可以用到變量 [頭下標:尾下標] ,就可以截取相應的列表,從左到右索引默認 0 開始,從右到左索引默認 -1 開始,下標可以為空表示取到頭或尾。

加號 + 是列表連接運算符,星號 * 是重複操作。如下實例:實例(Python 2.0+)

list = [ 'hello', 786 , 2.23, 'world', 70.2 ]add = [123, 'python'] print list               # 輸出完整列表print list[0]            # 輸出列表的第一個元素print list[1:3]          # 輸出第二個至第三個元素 print list[2:]           # 輸出從第三個開始至列表末尾的所有元素print tinylist * 2       # 輸出列表兩次print list + add    # 列印組合的列表

以上實例輸出結果:

['hello', 786, 2.23, 'world', 70.2]hello[786, 2.23][2.23, 'world', 70.2][123, 'python', 123, 'python']['hello', 786, 2.23, 'world', 70.2, 123, 'python']

基本數據類型之元組

元組類似於List(列表),用"()"標識。內部元素用逗號,且不能二次賦值,相當於只讀列表。

tuple_list = ('hello', 786, 2.23, 'world', 70.2)add_tuple = (123, 'python')print(tuple_list)  # 輸出完整元組print(tuple_list[0] ) # 輸出元組的第一個元素print(tuple_list[1:3] ) # 輸出第二個至第三個的元素print(tuple_list[2:])  # 輸出從第三個開始至列表末尾的所有元素print(tuple_list * 2)  # 輸出元組兩次print(tuple_list + add_tuple)  # 列印組合的元組

輸出為:

hello(786, 2.23)(2.23, 'world', 70.2)('hello', 786, 2.23, 'world', 70.2, 'hello', 786, 2.23, 'world', 70.2)('hello', 786, 2.23, 'world', 70.2, 123, 'python')

基本數據類型之字典

字典(dictionary)是除列表以外python之中最靈活的內置數據結構類型。

列表是有序的對象集合,字典是無序的對象集合。

兩者之間的區別在於:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。字典用"{ }"標識。字典由索引(key)和它對應的值value組成。

dict = {}dict['one'] = "This is one"dict['two'] = "This is two"namedict = {'name': 'ruben', 'code': 1, 'gender': 'man'}

輸出如下:

{'one': 'This is one', 'two': 'This is two'}{'name': 'ruben', 'code': 1, 'gender': 'man'}

數據類型之間的轉換

Python提供了基本數據類型之間轉換的內置方法:

函數描述
int(x [,base])將x轉換為一個整數
long(x [,base] )將x轉換為一個長整數
float(x)將x轉換到一個浮點數
complex(real [,imag])創建一個複數
str(x)將對象 x 轉換為字符串
repr(x)將對象 x 轉換為表達式字符串
eval(str)用來計算在字符串中的有效Python表達式,並返回一個對象
tuple(s)將序列 s 轉換為一個元組
list(s)將序列 s 轉換為一個列表
set(s)轉換為可變集合
dict(d)創建一個字典。d 必須是一個序列 (key,value)元組。
frozenset(s)轉換為不可變集合
chr(x)將一個整數轉換為一個字符
unichr(x)將一個整數轉換為Unicode字符
ord(x)將一個字符轉換為它的整數值
hex(x)將一個整數轉換為一個十六進位字符串
oct(x)將一個整數轉換為一個八進位字符串

相關焦點

  • python卡方分析專題及常見問題 - CSDN
    公司製造出10臺引擎供測試使用,每一臺的排放水平如下:15.6 16.2 22.5 20.5 16.4 19.4 16.6 17.9 12.7 13.9問題:公司生產的引擎是否符合政府規定呢?1.推論統計分析2.1 問題是什麼?問題是: 樣本數據是否滿足總體排放值要求?
  • mnist tensorflow 預測專題及常見問題 - CSDN
    for updating:Please use alternatives such as official/mnist/dataset.py from tensorflow/models.WARNING:tensorflow:From /home/cnu105/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/learn/python
  • 流轉json專題及常見問題 - CSDN
    OvsHttpMessageConverter(); ObjectMapper objectMapper = new ObjectMapper(); /** * 序列換成json時,將所有的long變成string, 因為js 中得 Number 數字類型不能包含所有的 java long 值 (js中會被截斷) * 參考文章: https://blog.csdn.net
  • Python爬取CSDN 2020 博客之星實時數據排名
    打開 Google Chrome 的審查工具,可以找到一個 getUsers 的請求,請求地址為:https://bss.csdn.net/m/topic/blog_star2020/getUsers,請求方式為 POST,返回的是 JSON 格式的數據,裡面包含了每一位博主的相關信息。
  • 方差檢驗專題及常見問題 - CSDN
    對於兩組服從正態分布的定量數據的平均數差異的檢驗均可以採用t檢驗,常見的t檢驗有單樣本t檢驗、獨立樣本t檢驗和配對樣本t檢驗。1.單樣本T檢驗單樣本t檢驗是指對樣本平均數與總體平均數的差異進行的顯著性檢驗。即檢驗單個變量的均值是否與給定的常數之間存在差異。
  • Python中pip常見問題以及解決辦法
    這個問題有用嗎?解決辦法二.添加到名為pip的$ PATH符號連結,指向pip3二進位文件(順便說一句,即使關於pip並不是真正與python相關的問題,所以你應該重拍它)將/usr/bin/pip備份/刪除,從所需的pip版本建立符號連結。
  • android camera 沒圖像專題及常見問題 - CSDN
    null) { Camera.Parameters parameters = mCamera.getParameters(); parameters.setPictureFormat(PixelFormat.JPEG);//設置照片拍攝後的保存格式 mCamera.setDisplayOrientation(90);//否則方向會有問題
  • python 猜想 - CSDN
    I wrote short python code to test the algorithm, the numbers I checked did converge to 1.But, as my maths professor always says:"For example" is NOT a proof!
  • 有現狀 需求分析專題及常見問題 - CSDN
    另一方面也反映了目前應屆生培養中存在的問題,學校應該培養學生的理論知識和實踐能力。2.熟悉常用算法和數據結構,熟悉OPENMP等多線程編程技術2.能夠熟練使用Oracle、MySQL、Mongodb等常用的資料庫,對其框架設計及其原理有一定了解2.精通linux平臺下的C/C++編程,熟練使用shell腳本語言,了解python
  • windows10卡啟動修復專題及常見問題 - CSDN
    在Windows 10上,安全模式允許加載一組基本功能和通用設備驅動程序,足以解決常見的軟體和硬體問題。例如,當計算機無法正常啟動、網絡連接問題以及應用程式或Windows Update無法下載更新時,可以使用安全模式對其進行故障排除。
  • it運維滿意度專題及常見問題 - CSDN
    企業需要發展,發展離不開我們的用戶,用戶滿意度為導向能時刻提醒我們怎麼做好運維服務工作,做好了運維服務工作,才能發展;要做好運維服務工作就得圍繞用戶滿意度,推進「紮根」工作,「紮根」就是服務更加貼近用戶實際,急用戶所急,想用戶所想,加強主動服務,幫用戶解決實際工作中的困難與問題,讓用戶「放心、舒心、開心」。紮根是行動,結果是成長,讓運維始於「紮根」,長於「大樹」。
  • Python面試常見問題及答案匯總整理
    Python面試題—常見的HTTP狀態碼有哪些?Python面試題—如何提高python的運行效率 ?使用生成器;關鍵代碼使用外部功能包(Cython,pylnlne,pypy,pyrex);針對循環的優化,儘量避免在循環中訪問變量的屬性。
  • 垂直行業雲計算專題及常見問題 - CSDN
    北京某三甲醫院用的就是這樣的一個服務,解決了安全問題。至於計算能力和存儲能力,這是我們雲廠商的強項,所以當把安全的問題解決之後,我們可以幫他們很大的忙,隨時擴充計算資源問:針對服務性能,從醫院的操作來說,也就是將從科研與臨床方面逐步實現上雲?
  • java 信號與槽專題及常見問題 - CSDN
    QT信號/槽在我的理解中,QT和Android都是類似的開發框架,都是由開發團隊封裝了各式各樣的接口和數據結構.將一些問題的解決方法簡單化 比如QT中將線程封裝為QThread,派生類通過重寫run方法來將代碼投入到新的線程執行,而同樣的Android中的線程是Java自帶的Thread
  • c定時 linux專題及常見問題 - CSDN
    如果由於權限問題無法完成拷貝,可以用:$ crontab <filename>其中,<filename>是你在$ H O M E目錄中副本的文件名。我建議你在自己的$ H O M E目錄中保存一個該文件的副本。我就有過類似的經歷,有數次誤刪了crontab文件(因為r鍵緊挨在e鍵的右邊)。
  • 梯度檢驗專題及常見問題 - CSDN
  • android 虛擬機版本專題及常見問題 - CSDN
    為了解決這個問題,Google在2.2版本添加了JIT編譯器,當App運行時,每當遇到一個新類,JIT編譯器就會對這個類進行編譯,經過編譯後的代碼,會被優化成相當精簡的原生型指令碼(即native code),這樣在下次執行到相同邏輯的時候,速度就會更快。當然使用JIT也不一定加快執行速度,如果大部分代碼的執行次數很少,那麼編譯花費的時間不一定少於執行dex的時間。
  • redis 虛擬槽分區專題及常見問題 - CSDN
    數據分布分布式資料庫首先要解決把整個數據集按照分區規則映射到多個節點的問題,即把數據集劃分到多個節點上,每個節點負責整體數據的一個子集。數據分布有兩種方式1 順序分區順序分布就是把一整塊數據分散到很多機器中,如下圖所示。
  • cdn邊緣計算專題及常見問題 - CSDN
    您必須說,速度足夠快,而且我從未遇到任何問題! 你猜怎麼了? 他們已經在網絡中處於邊緣並且離您更近了,簡而言之,他們正在使用Content Delivery Network(CDN )。 CDN如何運作? (How does CDN work?)
  • spss 方法 線性回歸專題及常見問題 - CSDN
    原始數據本資訊原始數據「百度網盤」下載連結:https://pan.baidu.com/s/10KvLh3ZMGb8z2n-lXwWvcg 提取碼:fx02問題反饋如您遇到有關統計學的問題,可以通過郵件聯繫我們。