最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Python數(shù)據(jù)類型、進(jìn)制轉(zhuǎn)換、字符串格式化的問題

 更新時(shí)間:2022年04月28日 11:57:36   作者:這個(gè)手剎不太靈兒  
這篇文章主要介紹了Python數(shù)據(jù)類型、進(jìn)制轉(zhuǎn)換、字符串格式化,Python2中區(qū)分整型int、長(zhǎng)整型long,Python3中只有統(tǒng)稱為整型int,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧

1. 整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù)

Python2中區(qū)分整型int、長(zhǎng)整型long
Python3中只有統(tǒng)稱為 整型int

浮點(diǎn)數(shù)

即帶有小數(shù)點(diǎn)的數(shù)字,因?yàn)楦↑c(diǎn)數(shù)用二進(jìn)制表示的,小數(shù)部分有時(shí)是無法表示的。是不精確的

float組成: 由整數(shù)位,小數(shù)點(diǎn),小數(shù)位組成,也可以用科學(xué)計(jì)數(shù)法表示

Decimal

是精確的

from decimal import Decimal  #從decimal 包導(dǎo)入Decimal  類
mydec = Decimal("3.22")   #將字符串轉(zhuǎn)換成decimal類型
print(mydec, type(mydec))
mydec2 = Decimal(3.22)   #浮點(diǎn)型3.22 是不精確的,轉(zhuǎn)換成decimal就是精確的
print(mydec2, type(mydec))

結(jié)果:3.22 <class 'decimal.Decimal'>
3.220000000000000195399252334027551114559173583984375 <class 'decimal.Decimal'>

復(fù)數(shù)

dir(a) 查看屬性
a.imag 獲取虛部,無論定義的時(shí)候是整型還是浮點(diǎn)型最終都會(huì)轉(zhuǎn)換成浮點(diǎn)型
a.real 獲取實(shí)部

>>> a = 4 + 5j
>>> a.imag
5.0
>>> a.real
4.0

2.進(jìn)制轉(zhuǎn)換

進(jìn)制數(shù)字類型

二進(jìn)制、八進(jìn)制、十六進(jìn)制都是整型

>>> a=0b11  二進(jìn)制   binary
>>> type(a)  
<class 'int'>  
>>> b=0o11  八進(jìn)制 octonary
>>> type(b)
<class 'int'> 
>>> c=0x11 十六制   hexadecimal
>>> type(c)
<class 'int'> 

整型進(jìn)制操作

整型轉(zhuǎn)換成2、8、16進(jìn)制,得到的值是字符串類型

>>> num = 100
>>> bin(num)  整型轉(zhuǎn)換成二進(jìn)制,()里面只能是整型
              任意進(jìn)制轉(zhuǎn)2進(jìn)制, 接收一個(gè)int, 返回一個(gè)str
'0b1100100'   
>>> oct(num) 任意進(jìn)制轉(zhuǎn)8進(jìn)制, 接收一個(gè)int, 返回一個(gè)str
'0o144'
>>> hex(num)   任意進(jìn)制轉(zhuǎn)16進(jìn)制, 接收一個(gè)int, 返回一個(gè)str
'0x64'
>>> int (0o11) 接收整型 
9
>>> int("0o11",base=8) 接收整型,但要指定幾進(jìn)制
9
>>> int("11")  接收整型,可以不指定,因?yàn)樗且粋€(gè)數(shù)字
11

3. 字符串

3.1 轉(zhuǎn)義字符

r標(biāo)志:是輸出原始字符串,不轉(zhuǎn)義

3.2 字符串取值

下標(biāo)取值法
從左0123456
從右-1 -2 -3 -4 -5

>>> a = 'abcdefghijklmnopq'
>>> a[0]
'a'
>>> a[-8]
'j'

切片取值法

str[start:end:step]       左閉右開
step 為正數(shù) 從左至右
step 為負(fù)數(shù) 從右至左
str[2:]  從左至右 第三個(gè)數(shù)開始
str[:7] 從左至右到第七位
str[::-1]  從右至左 步長(zhǎng)為1
str[4::-2]  從第五個(gè)數(shù)開始從右至左 步長(zhǎng)為2
>>> a = 'abcdefghijklmnopq'  一旦定義不可改變
>>> a[2:5]
'cde'

4. 字符串運(yùn)算與轉(zhuǎn)換

>>> str1="qqq"
>>> str2 = "lll"
>>> str1+str2 # 字符串拼接
'qqqlll'
>>> str3="abc"  
>>> str3*3  
'abcabcabc'字符串復(fù)制
>>> result = str(100)  # int轉(zhuǎn)換成字符串
>>> type(result)
<class 'str'>
>>> result
'100'

5. 字符串的常用方法

判斷系列

演示:

>>> str7= "helloabc xx zz"
>>> str7.startswith("abc")
False
>>> str7.startswith("abc",5)
True
>>> str7.startswith("abc",5,7)
False
>>> str7.startswith("abc",5,8)
True

查找統(tǒng)計(jì)系列

len不是字符串的屬性方法,不能通過.len的方式去計(jì)算長(zhǎng)度

字符串轉(zhuǎn)換類

>>> str7
'helloabc xx zz'
>>> str7.upper()  轉(zhuǎn)大寫
'HELLOABC XX ZZ'
>>> str7.title()  轉(zhuǎn)標(biāo)題格式
'Helloabc Xx Zz'
>>> str9 = str7.title().swapcase()  大小寫互換
>>> str9
'hELLOABC xX zZ'
>>> str9 = "a b c d e f"
>>> str9.split()  默認(rèn)按空格切割
['a', 'b', 'c', 'd', 'e', 'f']
>>> str10 = "a#b#c#d#e#f#g#h"
>>> str10.split("#")
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
>>> str11 = str10.split("#")
>>> str11
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
>>> "*".join(str11)
'a*b*c*d*e*f*g*h'

+和join的效率問題

+ 拼接效率比join低。+拼接,每一次出現(xiàn)都會(huì)在內(nèi)存中開辟一個(gè)新的空間,所以效率低

6 . 字符串格式化

%格式化


語(yǔ)法格式:%[(name)][flags][width].[precision]typecode

  • (name):命名
  • flags: +,-,’ '或0。

+表示右對(duì)齊;-表示左對(duì)齊;
’ '為一個(gè)空格,表示在正數(shù)的左側(cè)填充一個(gè)空格,從而與負(fù)數(shù)對(duì)齊,0表示使用0填充。

  • width表示顯示寬度
  • precision表示小數(shù)點(diǎn)后精度

%s 一個(gè)蘿卜一個(gè)坑,一一對(duì)應(yīng),不能多也不能少

演示:

結(jié)果

format格式化

num1 = 0.1416926   #轉(zhuǎn)換成百分位
print("%.2f%% " % (num1 * 100))

f格式化

python2不支持這種寫法

print(f"my name is {name},my age is {age}")
結(jié)果:my name is sc,my age is 4  
print(f"my name is {name},my age is {age:*>10}")
結(jié)果:my name is sc,my age is *********4

練習(xí)

字符串的拼接方式
請(qǐng)計(jì)算出新拼接出來的字符串長(zhǎng)度,并取出其中的第七個(gè)字符。

a = "字符串拼接1"
b = "字符串拼接2"
print("方式1:" + a + b)
print("方式2:%s%s" % (a, b))
print(f"方式3:{a}")
print("方式4:{0}{1}".format(a, b))
c = a + b
print("新拼接的字符串長(zhǎng)度為:", len(c))
print("第七個(gè)字符為:", c[6])
str1 = "8*y*cali*china**it*soft*linux*python"
count = str1.count("*")
list = str1.split("*")
str2 = "".join(list)
print("*" * count + str2)

將字符串"8ycalichina**itsoftlinuxpython"里的所有的*號(hào)抽
取出來放到最前面,里面的字符串保持順序不變

str1 = "8*y*cali*china**it*soft*linux*python"
count = str1.count("*")
list = str1.split("*")
str2 = "".join(list)
print("*" * count + str2)

7. 字符串拼接

print(“%s %s”%(str1,str2))

>>> str1 = "你好" 
>>> str2 = "hejin"
>>> str1+str2    #方式1:加號(hào)拼接
'你好hejin'
>>> "".join([str1,str2])  #方式2:join拼接
'你好hejin'
>>> print("%s,%s"%(str1,str2))  #方式3:% 占位符
你好,hejin
>>> "{},{}".format(str1,str2)   #方式4:format()
'你好,hejin'
>>> "{0},{1}".format(str1,str2) # 方式5 
'你好,hejin'
>>> "{1},{0}".format(str1,str2)
'hejin,你好'
>>> "{a},".format(a=str1,b=str2)  # 方式6 
'你好,hejin'
>>> ",{a}".format(a=str1,b=str2)
'hejin,你好'
>>> f"{str1},{str2}"  # 方式7:f格式化
'你好,hejin'

練習(xí):猜誰(shuí)是小偷

嫌疑人A、B、C、D的筆錄如下,其中三人為真,一人為假:
a:我不是小偷
b:C是小偷
c:小偷肯定是D
d:小偷肯定是D
lst = ["a", "b", "c", "d"]
for x in lst:
    if ("a" != x) + ("c" == x) + ("d" == x) + ("d" != x) == 3:
        print(f"{x}是小偷")

到此這篇關(guān)于Python數(shù)據(jù)類型、進(jìn)制轉(zhuǎn)換、字符串格式化的文章就介紹到這了,更多相關(guān)Python字符串格式化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 實(shí)現(xiàn)彈球游戲的示例代碼

    python 實(shí)現(xiàn)彈球游戲的示例代碼

    這篇文章主要介紹了python 實(shí)現(xiàn)彈球小游戲,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-11-11
  • python實(shí)現(xiàn)AES和RSA加解密的方法

    python實(shí)現(xiàn)AES和RSA加解密的方法

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)AES和RSA加解密的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • pytorch中index_select()的用法詳解

    pytorch中index_select()的用法詳解

    這篇文章主要介紹了pytorch中index_select()的用法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python中six模塊基礎(chǔ)用法

    Python中six模塊基礎(chǔ)用法

    在本篇文章里小編給大家分享的是關(guān)于Python中six模塊基礎(chǔ)用法以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-12-12
  • Django實(shí)現(xiàn)jquery select2帶搜索的下拉框

    Django實(shí)現(xiàn)jquery select2帶搜索的下拉框

    最近在開發(fā)一個(gè)web應(yīng)用中需要用到帶搜索功能下拉框,本文實(shí)現(xiàn)Django實(shí)現(xiàn)jquery select2帶搜索的下拉框,感興趣的小伙伴們可以參考一下
    2021-06-06
  • 利用Python?NumPy庫(kù)及Matplotlib庫(kù)繪制數(shù)學(xué)函數(shù)圖像

    利用Python?NumPy庫(kù)及Matplotlib庫(kù)繪制數(shù)學(xué)函數(shù)圖像

    最近開始學(xué)習(xí)數(shù)學(xué)了,有一些題目的函數(shù)圖像非常有特點(diǎn),下面這篇文章主要給大家介紹了關(guān)于利用Python?NumPy庫(kù)及Matplotlib庫(kù)繪制數(shù)學(xué)函數(shù)圖像的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • python leetcode 字符串相乘實(shí)例詳解

    python leetcode 字符串相乘實(shí)例詳解

    這篇文章主要介紹了python leetcode 字符串相乘的示例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • python數(shù)據(jù)結(jié)構(gòu)之列表和元組的詳解

    python數(shù)據(jù)結(jié)構(gòu)之列表和元組的詳解

    這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)之列表和元組的詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家徹底理解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-09-09
  • Python使用defaultdict讀取文件各列的方法

    Python使用defaultdict讀取文件各列的方法

    這篇文章主要介紹了Python使用defaultdict讀取文件各列的方法,涉及Python針對(duì)文件相關(guān)讀取、遍歷操作技巧,需要的朋友可以參考下
    2017-05-05
  • python中使用時(shí)間戳timestamp問題

    python中使用時(shí)間戳timestamp問題

    文章介紹了Python中使用時(shí)間戳和時(shí)間模塊的操作,包括獲取當(dāng)前時(shí)間、計(jì)算程序運(yùn)行時(shí)間以及時(shí)間戳與時(shí)間字符串之間的轉(zhuǎn)換
    2025-02-02

最新評(píng)論

马公市| 漾濞| 修文县| 云梦县| 平塘县| 塔河县| 江西省| 资兴市| 泸定县| 大理市| 遂宁市| 自治县| 中宁县| 高台县| 乌苏市| 河北省| 同心县| 定日县| 昌都县| 山阳县| 泽普县| 绿春县| 苍梧县| 顺昌县| 平阳县| 高雄县| 沂源县| 分宜县| 疏勒县| 当阳市| 读书| 石屏县| 青冈县| 广河县| 曲阜市| 育儿| 清丰县| 克拉玛依市| 马山县| 丽水市| 靖远县|