python開發【第二篇】python基本數據類型

基本數據類型

  • 數字 

  1,沒用雙引號印起來的,支持 +  -  *  /  % (其中乘法 4**4 冪 4的4次方,% 取模,也就是取餘數,/ 除法,//結果是商)python

  2,在python3裏,無論數字多大,都是int類型git

  3,將字符串轉換爲數字正則表達式

轉換數字類型和查看轉換類型
a = "123"
print(type(a),a)

b = int(a)
print(type(b),b)

默認不加base,int是轉換成10進制,加base=16 是把16進制的num轉換成10進制。
num = "a"
v = int(num,base=16)
print(v)

這個數字的二進制用幾位來表示
age = 4
r = age.bit_length()
print(r)
  • 字符串

     (引號印起來的),支持加法(字符拼接),乘法,str  api

      10個基本字符串魔法(join,split,find,strip,upper,lower,len,replace,for循環,索引,切片)數據結構

     

#!/usr/bin/env python
# -*- coding:utf-8 -*-
test = "alexAlEx"
# 首字母大寫,其餘都變小寫
v = test.capitalize()
print(v)
# 全部變小寫,casefold更牛逼,不少未知的對應變小寫
v1 = test.casefold()
print(v1)
# 處理普通變小寫
v2 = test.lower()
print(v2)
# 設置寬度,並將內容居中
# 20代指總長度
# * 空白未知填充,一個字符,無關緊要
v3 = test.center(20,"*")
print(v3)
# 把內容放在左邊,右邊填充
v4 = test.ljust(20,"*")
print(v4)
# 把內容放在右邊,左邊填充
v5 = test.rjust(20,"*")
print(v5)
# 去字符串尋找,尋找子序列的出現次數,能夠設置起始序列和結束序列
v6 = test.count('ex',1,9)
print(v6)
# encode
# decode
# 表示以...結尾,或以...開始,結果是布爾值
v7 = test.endswith('eeex')
v8 = test.startswith('ex')
print(v7,v8)
# 從開始日後找,找到第一個之後,獲取其位置,未找到返回-1
# index找不到報錯,忽略
# >=1< 6,
v9 = test.find('ex',1,6)
print(v9)
# 格式化,將一個字符串中的佔位符'{name}'替換未指定的值,傳參
test = 'i am {name},age {a}'
print(test)
v10 = test.format(name='alex',a=23)
print(v10)
# 格式化,傳入的值{"name":'alex',"a":19}
test1 = 'i am {name},age {a}'
v11 = test1.format_map({"name":'alex',"a":19})
print(v11)
# 判斷字符串中是否只包含數字和字母,結果是布爾值
test2 = "二十"
v12 = test2.isalnum()
print(v12)
a = "i am {name},年齡 {a},來自 {b}"
c = a.format(name='侯曉鳳',a = 25,b = '天水')
print(c)
# 判斷字符串是否只包含字母,結果是布爾值
v13 = test2.isalpha()
print(v13)
# 判斷字符串是數字,isdecimal 判斷是不是十進制數字,isdigit還包含特殊數字好比②也能比較isnumeric 都包含,結果是布爾值
v14 = test2.isdecimal()
v15 = test2.isdigit()
v16 = test2.isnumeric()
print(v14,v15,v16)
# expandtabs,須要傳斷多少的參數,好比20
test3 = "username\temail\tpassword\nlaiying\tding@qq.com\t123\nlaiying\tding@qq.com\t123\nlaiying\tding@qq.com\t123\nlaiying\tding@qq.com\t123\n"
v17 = test3.expandtabs(20)
print(v17,len(v17))
# 大小寫轉換
test4 = "aLex"
v18 = test4.swapcase()
print(v18)
#判斷是字母,數字,下劃線,標識符,結果是布爾值
a = "_def"
x = a.isidentifier()
print(x)
# 是否存在不可顯示的字符例如\t,\n,結果是布爾值
test5 = "oifjdsifjskdsjfkls"
v19 = test5.isprintable()
print(v19)
# 判斷是否所有是空格,空字符,結果是布爾值
test6 = "\t \n"
v20 = test6.isspace()
print(v20)
# 判斷是不是標題,title 轉換成首字母大寫變成標題,istitle 判斷是不是標題
test7 = "Return True if B is a titlecased string and there is at least one"
v21 = test7.istitle()
print(v21)
v22 = test7.title()
print(v22)
# !!!!!將字符串中的每個元素按照每個分隔符進行拼接
test8 = "你是風兒我是沙,去你媽的風和沙"
v23 = "_".join(test8)
print(v23)
# 判斷是不是大小寫,以及轉換成大小寫
test9 = "alex"
x1 = test9.islower()
x2 = test9.lower()
print(x1,x2)
x3 = test9.isupper()
x4 = test9.upper()
print(x3,x4)
# 默認去除左右空格,去除\t,\n,移除指定字符,優先最多匹配去除
test10 = "alexalex"
x5 = test10.lstrip('')
x6 = test10.rstrip('ex')
x7 = test10.strip('ex')
print(x5,x6,x7)
# 字符替換,對應關係的替換,要想替換,先本身建立一個對應關係m = str.maketrans("1","2") 而後再替換
test11 = "afsdfdsaeiou;afsdaeioufdsf;afsdfaeioufdsf"
m = str.maketrans("aeiou",'12345')
new_test11 = test11.translate(m)
print(new_test11)
# 用來作分隔
test12 = "qwertyuiopasdfghjklmndbvxcz"
# 分紅三個元素
s1 = test12.partition('d')
s2 = test12.rpartition('d')
#!!!!正則表達式,是否想要分隔的元素,弊端,沒有分隔符
s3 = test12.split('d')
s4 = test12.rsplit('d')
print(s1,s2,s3,s4)
# !!!!!分隔,只能根據 true,false 是否保留換行
test13 = "asdfasdfsd\nfasdfsdfasdf"
w = test13.splitlines(True)
print(w)
# 替換字符串,後邊的參數是指定替換第幾個
test14 = "alexalexalex"
l = test14.replace("ex",'bbb',1)
print(l)
#################灰魔法#######################
# 字符串一旦建立,不可修改
# 一旦修改或者拼接,都會形成從新生成字符串
# 索引,下標,經過索引的方式獲取字符串裏邊的某一個字符
test15 = 'alex'
r1 = test15[2]
print(r1)
# 切片
# [0:2] 表示索引範圍,大於等於0小於1,-1是最後一個位置
r2 = test15 [0:2]
print(r2)
# len獲取當前字符串由幾個字符組成
r3 = len(test15)
print(r3)
# 用中括號括起來,逗號分隔,就叫列表,這種能夠用list表示
s = "sfjkdsjfdslkfjsjfjfdks"
y = s.split("k")
print(y)
#for 循環
#for 變量名 in 字符串:
#   變量名
test16 = "小丁妹紙有種衝我來"
index = 0
while index < len(test):
    v = test16[index]
    print(v)
    index += 1
print("咦。。。")
# 幫助建立連續的數字,經過設置步長來指定不連續的數字
test17 = input(">>>")
for item in range(0,len(test)):
    print(item,test17[item])
#注意 如下這幾個再其餘的數據結構也能用
#len("aafd")
#'_'.join("fdsdfjkld")
#for 循環
#索引
#切片
# int.bit_length 獲得該變量用多少個二進制表示
n = 26
i = int.bit_length(n)
print(i)
  • 布爾值

    True 真ide

    False 假ui

    先計算括號內,再從前到後spa

  • 列表list
相關文章
相關標籤/搜索