Python基础02 数据类型(1)字符串、数字、布尔

一、字符串(str)

1、语法构造

可以引号或三引号,单双引号都可以,但需要匹配。

name = "我'是'中国人"    #我'是'中国人
print(name)
name = 'world'
name = """world"""
name = '''我是
中国人'''
print(name)
'''
我是
中国人
'''

2、支持的计算

支持加法和乘法
s1 = 'hello'
s2 = 'world'
print(s1+s2)    #helloworld
print(s1*3)     #hellohellohello

3、字符串的方法

(1)capitalize() 首字母大写

s1 = 'china'
s2 = s1.capitalize()
print(s2)   #China

(2)casefold()、lower() 将所有字母变小写,但是casefold应用广泛

test = 'cHIna'
v1 = test.casefold()
print(v1)  # china
v2 = test.lower()
print(v2)  # china

(3)upper() 将所有字母变大写

test = 'cHIna'
v1 = test.upper()
print(v1)   #CHINA

(4)center() 设置宽度,并将内容居中

test = 'cHIna'
v1 = test.center(20,'*')
print(v1)       #*******cHIna********

(5)count() 去字符串中寻找子序列的出现次数

test = "aL1exalexr"
v1 = test.count('ex')
print(v1)  # 2
v2 = test.count('ex', 5, 9)
print(v2)  # 1

(6)startswith()、endswith() 字符串以什么子串开头/结尾

test = 'excHInae'
v1 = test.startswith('ex')
v2 = test.endswith('ex')
print(v1,v2)        #True False

(7)expandtabs() 以指定数字为宽度,每次遇到 ‘\t’ 都补空格,直到到达指定宽度

s = 'aaaaabc\tadab\taafabsaa'
r = s.expandtabs(10)
print(r)        #aaaaabc   adab      aafabsaa

(8)find() 从左往右找子串,找到第一个之后,获取其索引,未找到返回-1

s = 'exchinaex'
r = s.find('e2x')
print(r)  # -1

(9)index() 从左往右找子串,找到第一个之后,获取其索引,未找到报错

s = 'exchinaex'
r = s.index('ex')
print(r)  # 0

(10)format()、format_map() 格式化,将一个字符串中的占位符替换为指定的值

s1 = 'I am {name},and age {age}'
v1 = s1.format(name='dod', age=18)
print(v1)   #I am dod,and age 18

s2 = 'I am {0},and age {1}'
v2 = s2.format('dod',18)
print(v2)   #I am dod,and age 18

v3 = s1.format_map({'name':'dod','age':18})
print(v3)   #I am dod,and age 18

(11)isalnum() 字符串中是否只包含 字母和数字

s = 'ad123'
v = s.isalnum()
print(v)    #True

(12)title() 将字符串写成标题的格式

s = 'china and us'
v = s.title()
print(v)    #China And Us

(13)isalpha() 判断字符串是否是字母、汉字

s = 'af中x'
r = s.isalpha()
print(r)        #True

(14)isdecimal()、isdigit()、isnumeric() 判断是否为数字(函数顺序按适用范围递增排列)

s = '二'
v1 = s.isdecimal()
v2 = s.isdigit()
v3 = s.isnumeric()
print(v1,v2,v3)     #False False True

(15)isidentifier() 判断是否是标识符

s = "123"
v = s.isidentifier()
print(v)    #False

(16)isprintable() 判断是否全部原样输出

s = 'aaaxw\ta\nxs'
v = s.isprintable()
print(v)        #False

(17)isspace() 判断字符串是否全部为空格组成

s = '   '
v = s.isspace()
print(v)    #True

(18)istitle() 判断是否为标题

s = 'RETURN TRUE'
v = s.istitle()
print(v)    #False

(19)join() 将字符串按照指定分隔符进行拼接

s = '社会主义核心价值观'
t = '_'
v = t.join(s)
print(v)    #社_会_主_义_核_心_价_值_观

(20)ljust()、rjust() 原字符串靠左/右,其余部分补指定字符,总长度达到指定长度。

s = '社会主义核心价值观'
v = s.ljust(12,'*')
t = s.rjust(12,'*')
print(v)    #社会主义核心价值观***
print(t)    #***社会主义核心价值观

(21)zfill() 左侧补零

s = '社会主义核心价值观'
v = s.zfill(12)
print(v)    #000社会主义核心价值观

(22) islower()、isupper() 判断是否为小写/大写

s = 'cHinA'
v1 = s.islower()
v2 = s.isupper()
print(v1,v2)    #False False

(23)lstrip()/rstrip()/strip() 去除左/右/左右两侧空格、\n、\t

s = ' china\t '
v1 = s.lstrip()
v2 = s.rstrip()
v3 = s.strip()
print(v1)   #china	 
print(v2)   # china
print(v3)   #china

与指定字符串的子序列进行匹配去除,例如

s = 'chinachina111chxiina'
v = s.strip('china')
print(v)  # 111chx

(24)maketrans()和translate()搭配使用

s = 'xalex,abafwewx'
m = str.maketrans('abc','123')
v = s.translate(m)
print(v)    #x1lex,121fwewx

(25)一些分割方法

s = 'xalexaafwewx'
v1 = s.partition('a')
v2 = s.rpartition('a')
v3 = s.split('a')
v4 = s.rsplit('a',2)
v5 = s.split('a',2)
print(v1)   #('x', 'a', 'lexaafwewx')
print(v2)   #('xalexa', 'a', 'fwewx')
print(v3)   #['x', 'lex', '', 'fwewx']
print(v4)   #['xalex', '', 'fwewx']
print(v5)   #['x', 'lex', 'afwewx']
s = 'xale\nxaaf\nwewx'
v1 = s.splitlines()
v2 = s.splitlines(True)
print(v1)   #['xale', 'xaaf', 'wewx']
print(v2)   #['xale\n', 'xaaf\n', 'wewx']

(26)swapcase() 大小写转换

s = 'cHIna'
v = s.swapcase()
print(v)    #ChiNA

(27)replace() 替换指定子串

s = 'chinnan'
v = s.replace('n','22',2)
print(v)    #chi2222an

(28)encode() / decode() 编码/解码
字符串 → 二进制:encode()
二进制 → 字符串:decode()

s = '中国'
v1 = s.encode(encoding='utf-8')
v2 = v1.decode(encoding='utf-8')
print(v1, v2)  # b'\xe4\xb8\xad\xe5\x9b\xbd' 中国

4、字符串的其他特性

(1)用索引(下标)获取字符串中的某一个字符
从左数,从0开始;从右数,从-1开始

s = 'china'
v1 = s[1]
v2 = s[-2]
print(v1,v2)    #h n

(2)切片

s = 'china'
v1 = s[1:]
v2 = s[2:3]
print(v1,v2)    #hina i

(3)len() 该函数表示参数的长度

s = 'china'
v = len(s)
print(v)    #5

(4)字符串一旦创建,就不能修改。以下代码错误:
s = ‘china’
s[1] = ‘e’

二、数字

(整数和小数均可进行下列计算)

a1 = 10
a2 = 20

a3 = a1 + a2    #加法:30
a3 = a1 - a2    #减法:-10
a3 = a1 * a2    #乘法:200
a3 = 100 / 10   #除非:10.0
a3 = 2 ** 4     #乘方:16
a3 = 5%2        #取余:1
a3 = 5//2       #取商:2

1、整数(int)的常用方法

(1)int() 将参数转换为整型

s = '123'
num = int(s)
print(type(num),num)    # 123
num = "b"
v = int(num, base=16)
print(v)    #11
#先将参数转为16进制的数值,然后以10进制显示

(2)bit_length() 表示最少所需的二进制位数

num = 7
n = num.bit_length()
print(n)    #3

2、浮点数(float)

三、布尔类型(bool)

只有两个值:
真:True
假:False

你可能感兴趣的:(python基础,python,开发语言)