欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python變量、數(shù)據(jù)類型、數(shù)據(jù)類型轉(zhuǎn)換相關(guān)函數(shù)用法實(shí)例詳解

 更新時(shí)間:2020年01月09日 09:48:19   作者:隨風(fēng)行云  
這篇文章主要介紹了Python變量、數(shù)據(jù)類型、數(shù)據(jù)類型轉(zhuǎn)換相關(guān)函數(shù)用法,結(jié)合實(shí)例形式詳細(xì)分析了Python變量類型、基本用法、變量類型轉(zhuǎn)換相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下

本文實(shí)例講述了Python變量、數(shù)據(jù)類型、數(shù)據(jù)類型轉(zhuǎn)換相關(guān)函數(shù)用法。分享給大家供大家參考,具體如下:

python變量的使用不需要進(jìn)行類型聲明(類型名 變量名),給一個(gè)變量名賦什么值就是什么類型。

  • 變量的賦值使用 =

image

說明:雖然python聲明變量時(shí)沒有一個(gè)類型來圈注,但它并不是弱類型語(yǔ)言,相反,它是一門強(qiáng)類型語(yǔ)言。

  • 弱類型的語(yǔ)言的東西沒有明顯的類型,它能隨著環(huán)境的不同自動(dòng)變換類型;
  • 而強(qiáng)類型則沒這樣的規(guī)定,不同類型間的操作有嚴(yán)格定義,只有相同類型的變量才能操作

為什么說 Python 是強(qiáng)類型語(yǔ)言


Python變量命名規(guī)則:

  • 變量名只能是 字母、數(shù)字或下劃線的任意組合
  • 變量名的第一個(gè)字符不能是數(shù)字
  • 不能與關(guān)鍵字重名(關(guān)鍵字用著用著就記熟了)

image


數(shù)據(jù)類型

整數(shù)int類型:

python3中移除了python2中的long

Python3中沒有限制int數(shù)值的大小

image

  • 可以用其他數(shù)制來表示數(shù)值:二進(jìn)制是以0b開頭的,8進(jìn)制是以0O(第二個(gè)是英文o,大小寫都可以)開頭的,16進(jìn)制是以0x開頭的
>>> i=0b1111
>>> print(i)
15
>>> i=0x0010
>>> print(i)
16
>>> i=0o0010
>>> print(i)
8
>>> i=0O0010
>>> print(i)
8

小數(shù)float類型:

  • 可以用小數(shù)表示:3.1415,1.5,.......
  • 也可以用科學(xué)計(jì)數(shù)法表示(10用e替代,比如0.000012可以寫成  1.2e-5)
>>> a=1.5
>>> print(a)
1.5
>>> a=-9999.5
>>> print(a)
-9999.5
>>> a=1.5e5
>>> print(a)
150000.0
>>> a=1.5e-10
>>> print(a)
1.5e-10
>>> a=0.0000000000000001
>>> print(a)
1e-16

注:對(duì)于太小的數(shù),會(huì)自動(dòng)轉(zhuǎn)化成科學(xué)計(jì)數(shù)法表示,太大的數(shù)不會(huì)自動(dòng)轉(zhuǎn)化

 

布爾bool類型:True、False

  • 使用True和False兩個(gè)關(guān)鍵字來表示布爾類型
  • 可以使用非零數(shù)值表示True,但總覺得這是一個(gè)不好的習(xí)慣
>>> type(True)
<class 'bool'>
>>> type(False)
<class 'bool'>
>>> a=bool(2)
>>> a
True
>>> a=int(True)
>>> a
1
>>> print(int(False))
0

字符串str類型:

  • Python不支持字符類型; 字符會(huì)被視為長(zhǎng)度為  1的字符串
  • 可以使用兩個(gè)單引號(hào),或兩個(gè)雙引號(hào)來代表字符串
>>> type("aaaa")
<class 'str'>
>>> type('aaaa')
<class 'str'>
  • 可以使用下標(biāo)來訪問字符串的值【-1代表最后一位】:
>>> str1="123"
>>> str1[0]
'1'
>>> str1[-1]
'3'
  • 可以對(duì)字符串進(jìn)行切片(切片方法:字符串名[左下標(biāo):右下標(biāo)(不取到右下標(biāo))]),返回值是切片后的字符串,但并不會(huì)改變?cè)址闹?/li>

【    [:]代表完全切片,[:右下標(biāo)]代表從零開始,[左下邊:]代表結(jié)尾是最后一位,-1下標(biāo)代表最后一位   】

【切片也可以有間隔,用法字符串名[左下標(biāo):右下標(biāo):間隔]   】

>>> hello="hello world!"
>>> new_hello=hello[:]
>>> new_hello
'hello world!'
>>> hello[:2]
'he'
>>> hello[1:3]
'el'
>>> hello[1:-1]
'ello world'
>>> hello[1:-1:1]
'ello world'
>>> hello[1:-1:2]
'el ol'
  • 可以使用三引號(hào)(單引號(hào)或雙引號(hào))來代表多行字符串
>>> type("""hahah
haha
hahah""")
<class 'str'>
>>> type('''第一行
第二行
第三行''')
<class 'str'>

列表list類型:

  • list是一種有序的集合,可以隨時(shí)添加和刪除其中的元素。
  • 使用中括號(hào)包裹元素,表明這是一個(gè)列表。[元素,元素,元素,.......]
>>> i=['a',100,True]
>>> type(i)
<class 'list'>
  • 列表的元素不限定數(shù)據(jù)類型,可以是字符串,可以是數(shù)值,可以是布爾類型,也可以是其他列表等等
  • 列表可以是空的:list1=[]
  • 可以使用list函數(shù)來創(chuàng)建列表
>>> list("abcd")
['a', 'b', 'c', 'd']
  • 列表也可以使用下標(biāo)來訪問元素,也可以切片,操作與字符串相同。
  • 列表可以替換元素【使用 = 】:
>>> i
['a', 100, True]
>>> i[0]='b'
>>> i
['b', 100, True]
  • 如果列表中包含列表時(shí),如果要取子列表中的元素,相當(dāng)于操作“二維數(shù)組”,使用 列表名[索引][索引]:
>>> i
['b', 100, True]
>>> l=[i,"helloworld"]
>>> l
[['b', 100, True], 'helloworld']
>>> l[0][0]
'b'
  • 可以使用“+”拼接列表,使用*重復(fù)列表
>>> l2=i*2
>>> l2
['b', 100, True, 'b', 100, True]
>>> l3=i+l
>>> l3
['b', 100, True, ['b', 100, True], 'helloworld']

元組tuple類型:

  • 使用()跟,來表示元組,當(dāng)tuple中只有一個(gè)元素時(shí),逗號(hào)可以特別的說明這是一個(gè)tuple,實(shí)際上,python也允許tuple定義時(shí)沒有括號(hào)
>>> t1=('a',1,True)
>>> type(t1)
<class 'tuple'>
>>> t2=('a')
>>> type(t2)
<class 'str'>
>>> ####注意上面的類型###
>>> t3=('a',)
>>> type(t3)
<class 'tuple'>
>>> tuple2=1,2,3,4,5
>>> type(tuple2)
<class 'tuple'>
>>> tuple2
(1, 2, 3, 4, 5)
  • 有序列表叫元組,tuple的元素一旦初始化就不能修改,但可以存儲(chǔ)list,因?yàn)閠uple并不會(huì)復(fù)制一份list到自己的內(nèi)存中,它只會(huì)存儲(chǔ)list的內(nèi)存指向,只要list的內(nèi)存指向不變,就不跟tuple的不變?cè)瓌t沖突。
>>> t1=('a',i)
>>> t1
('a', ['b', 100, True])
>>> id(t1[1])
1673650817160
>>> id(i)
1673650817160
  • tuple也可以可以使用下標(biāo)來訪問元素,也可以切片,操作與字符串相同。
  • 元組可以為空
  • 元組常用函數(shù)

    tuple一旦初始化就不能修改,所以它沒有append()、insert(),也沒有pop()等能增刪元素的方法

    >>> tuple1=(1,2,3,4)
    >>> print(tuple1.index(2))#查找指定元素的下標(biāo)
    1
    >>> print(tuple1.count(2))#查找某元素存在的數(shù)量
    1

字典dict類型:

  • 使用鍵-值(key-value)存儲(chǔ)
  • 由于其哈希特性,因此具有極快的查找速度
  • 可以使用{鍵1:值1,鍵2:值2,鍵3:值3 ...}來定義一個(gè)字典
>>> d1={'a':'apple','b':'banana','c':'cabbage'}
>>> type(d1)
<class 'dict'>
  • 字典是使用哈希算法來計(jì)算對(duì)應(yīng)對(duì)應(yīng)值的位置的,所以key必須是固定不可變的,在Python中,字符串、整數(shù)等都是不可變的,所以,可以作為key。其余元素可變的對(duì)象如list、set、dict就不能作為key,因?yàn)槠湓亟Y(jié)果不確定,無法確定哈希值。
>>> l1=['a']
>>> d1[l1]='c'
Traceback (most recent call last):
 File "<pyshell#5>", line 1, in <module>
  d1[l1]='c'
TypeError: unhashable type: 'list'
  • dict內(nèi)部存放的順序和key放入的順序是沒有關(guān)系的
  • 可以使用  字典名[鍵]     快速查找出對(duì)應(yīng)的值,鍵不存在則無法查找
>>> d1
{'a': 'apple', 'b': 'banana', 'c': 'cabbage', ('a',): 'c'}
>>> d1['a']
'apple'
>>> d1['d']
Traceback (most recent call last):
 File "<pyshell#17>", line 1, in <module>
  d1['d']
KeyError: 'd'
  • 可以給某一個(gè)鍵的對(duì)應(yīng)的值重新賦值,但由于一個(gè)key只能對(duì)應(yīng)一個(gè)value,所以新的賦值會(huì)把就得值覆蓋掉【如果定義的時(shí)候出現(xiàn)多個(gè)同名的鍵,這個(gè)鍵的值以最后的賦值為準(zhǔn)】
>>> d1
{'a': 'apple', 'b': 'banana', 'c': 'cabbage', ('a',): 'c'}
>>> d1['a']='apple pen'
>>> d1
{'a': 'apple pen', 'b': 'banana', 'c': 'cabbage', ('a',): 'c'}
  • 可以使用   字典名[一個(gè)未使用的鍵]=值  來添加一個(gè)鍵值對(duì):
>>> d1
{'a': 'apple pen', 'b': 'banana', 'c': 'cabbage', ('a',): 'c'}
>>> d1['ai']='python'
>>> d1
{'a': 'apple pen', 'b': 'banana', 'c': 'cabbage', ('a',): 'c', 'ai': 'python'}
  • 注:直接迭代字典,只能迭代出key
>>> dict10={1:"蘋果","雪碧":"雪梨"}
>>> 
>>> for i in dict10:
  print(i)
1
雪碧
  • 使用 字典名[key] 獲取不存在的鍵時(shí)會(huì)拋出異常KeyError,可以使用成員運(yùn)算符來避免或使用get()來避免
>>> dict10
{1: '蘋果', '雪碧': '雪梨'}
>>> 1 in dict10
True
>>> 3 in dict10
False
>>> print(dict10.get(3))
None
>>> print(dict10.get(1))
蘋果

集合類型:

  • set和dict類似,也是使用大括號(hào)包裹
  • 可以使用大括號(hào)來定義一個(gè)集合
>>> s1={'a','b','c'}
>>> s1
{'b', 'c', 'a'}
>>> type(s1)
<class 'set'>
  • 可以使用set來定義一個(gè)集合,set函數(shù)的參數(shù)為一個(gè)可迭代對(duì)象(Iterable)
>>> s2=set()
>>> type(s2)
<class 'set'>
>>> s3=set(['a','b','c'])
>>> type(s3)
<class 'set'>

image_5a71b783_2fb0

image_5a71b783_40a0

  • set不能使用下標(biāo)來取出元素
  • set的原理和dict一樣,所以,同樣不可以放入可變對(duì)象,因?yàn)樗彩鞘褂霉碛?jì)算計(jì)算結(jié)果的,可以記作set與dict不同的是它只存儲(chǔ)key,不存儲(chǔ)value【set()函數(shù)傳入一個(gè)字典作為參數(shù)時(shí),只取key作為結(jié)果】
>>> s3.add(['cbd'])
Traceback (most recent call last):
 File "<pyshell#37>", line 1, in <module>
  s3.add(['cbd'])
TypeError: unhashable type: 'list'

數(shù)據(jù)類型轉(zhuǎn)換相關(guān)函數(shù):

  • int()函數(shù)可以把其他數(shù)據(jù)類型轉(zhuǎn)換為整數(shù):
  • float( )函數(shù)可以把其他數(shù)據(jù)類型轉(zhuǎn)換成浮點(diǎn)數(shù)
  • str( )函數(shù)可以把其他數(shù)據(jù)類型轉(zhuǎn)換成字符串類型
  • bool( )函數(shù)可以把其他數(shù)據(jù)類型轉(zhuǎn)換成布爾類型
  • tuple()將其他數(shù)據(jù)類型轉(zhuǎn)換為元組。
  • set()將其他數(shù)據(jù)類型轉(zhuǎn)換為集合。

 

>>> print(type(int("123")))
<class 'int'>
>>> print(type(float("123")))
<class 'float'>
>>> float("123")
123.0
>>> str(123)
'123'
>>> bool(2)
True
>>> list("123")
['1', '2', '3']
>>> tuple("123")
('1', '2', '3')

注:轉(zhuǎn)換是有規(guī)則的,要符合規(guī)則才能轉(zhuǎn)化,比如int()不能轉(zhuǎn)換"abc"

image

關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python面向?qū)ο蟪绦蛟O(shè)計(jì)入門與進(jìn)階教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python 3.3實(shí)現(xiàn)計(jì)算兩個(gè)日期間隔秒數(shù)/天數(shù)的方法示例

    Python 3.3實(shí)現(xiàn)計(jì)算兩個(gè)日期間隔秒數(shù)/天數(shù)的方法示例

    這篇文章主要介紹了Python 3.3實(shí)現(xiàn)計(jì)算兩個(gè)日期間隔秒數(shù)/天數(shù)的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了基于Python3.3的日期時(shí)間轉(zhuǎn)換與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • python 批量壓縮圖片的腳本

    python 批量壓縮圖片的腳本

    用Python編寫的批量壓縮圖片的腳本,可以自定義壓縮質(zhì)量,有批量圖片壓縮需求的朋友可以直接拿來用
    2021-06-06
  • python遍歷文件夾的各種方法大全

    python遍歷文件夾的各種方法大全

    在Python中,可以使用多種方法來多次遍歷文件,下面這篇文章主要給大家介紹了關(guān)于python遍歷文件夾的各種方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • Python的collections模塊中的OrderedDict有序字典

    Python的collections模塊中的OrderedDict有序字典

    字典是無序的,但是collections的OrderedDict類為我們提供了一個(gè)有序的字典結(jié)構(gòu),名副其實(shí)的Ordered+Dict,下面通過兩個(gè)例子來簡(jiǎn)單了解下Python的collections模塊中的OrderedDict有序字典:
    2016-07-07
  • python django model聯(lián)合主鍵的例子

    python django model聯(lián)合主鍵的例子

    今天小編就為大家分享一篇python django model聯(lián)合主鍵的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python修改IP地址的常見方法總結(jié)

    Python修改IP地址的常見方法總結(jié)

    在網(wǎng)絡(luò)編程中,可能會(huì)遇到需要修改IP地址的情況,Python提供了一些功能強(qiáng)大的庫(kù)和模塊,可以幫助我們實(shí)現(xiàn)IP地址的修改操作,本文將介紹幾種常見的方法,以及如何使用它們來修改IP地址,需要的朋友可以參考下
    2023-12-12
  • Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具

    Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具

    正好最近在學(xué)習(xí)python,于是打算用python實(shí)現(xiàn)了數(shù)據(jù)導(dǎo)入導(dǎo)出工具,由于是新手,所以寫的有些不完善的地方還請(qǐng)見諒
    2015-07-07
  • Python調(diào)用OpenCV實(shí)現(xiàn)圖像平滑代碼實(shí)例

    Python調(diào)用OpenCV實(shí)現(xiàn)圖像平滑代碼實(shí)例

    這篇文章主要介紹了Python調(diào)用OpenCV實(shí)現(xiàn)圖像平滑代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Django 返回json數(shù)據(jù)的實(shí)現(xiàn)示例

    Django 返回json數(shù)據(jù)的實(shí)現(xiàn)示例

    這篇文章主要介紹了Django 返回json數(shù)據(jù)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python退出命令是什么?詳解python退出方法

    python退出命令是什么?詳解python退出方法

    在本篇內(nèi)容中我們給學(xué)習(xí)python編程的朋友們整理了關(guān)于python退出的命令和方法,需要的學(xué)習(xí)下。
    2018-12-12

最新評(píng)論