Python基础⑶
1. Python中常见的数据类型
Python3 中有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Sets(集合)
- Dictionary(字典)
Python3 的六个标准数据类型中:
- 不可变数据(四个):Number(数字)、String(字符串)、Tuple(元组)、Sets(集合);
- 可变数据(两个):List(列表)、Dictionary(字典)。
2. int类型
整型(Int)
在Python内部对整数的处理分为普通整数和长整数,普通整数长度为机器位长,通常都是32位,超过这个范围的整数就自动当长整数处理,而长整数的范围几乎完全没限制
Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。
bit_length(self): """ 返回表示该数字的时占用的最少位数 """
3. Bool的转化
在python中,以下数值会被认为是False:
- 为0的数字,包括0,0.0
- 空字符串,包括”,”“
- 表示空值的None
- 空集合,包括(),[],{}
其他的值都认为是True。
None是python中的一个特殊值,表示什么都没有,它和0、空字符、False、空集合都不一样。
bool(‘False’)的结果是True,因为‘False’是一个不为空的字符串,当被转换成bool类型之后,就得到True。
bool(’ ‘)的结果是True,一个空格也不能算作空字符串。
bool(”)才是False。
4. Str类型
capitalize : 将字符串的首字母大写,其它均小写
- >>> a = 'aBCdEF'
- >>> a.capitalize()
- 'Abcdef'
casefold : 此功能与lower功能类似,将字符串转换为小写
lower : 将所有字符转换为小写
center rjust ljust : 根据显示的长度中间对齐、左对齐、右对齐,不足的部分根据指定内容填充,默认为空格
- >>>> b 'Hello sOrlD'
- >>> b.center(20)
- ' Hello sOrlD '
- >>> b.center(20,'*')
- '****Hello sOrlD*****'
- >>> b.ljust(20,'*')
- 'Hello sOrlD*********'
- >>> b.rjust(20,'*')
- '*********Hello sOrlD'
count : 统计字符串中包含子串的个数
- >>> a = 'aaAAbbBB'
- >>> a.count('a')
- 2
lstrip 、 rstrip、 strip : 去除字符串左边空格 右边空格 两边空格
- >>> a
- ' abc '
- >>> a.strip()
- 'abc'
- >>> a.lstrip()
- 'abc '
- >>> a.rstrip()
- ' abc'
startswith endswith 是否已制定子串开始 是否已制定子串结尾
- >>> a='abc1234def'
- >>> a.startswith('abc')
- True
- >>> a.endswith('def')
- True
translate 用指定的字符串替换,该内置函数在2.x与3.x中使用方法有一定区别
3.x
- >>> a = '12345'
- >>> b = 'abcde'
- >>> source = 'aAAbc123d'
- >>> source.translate(source.maketrans(b,a))
- '1AA231234'
split rsplit 按照指定字符进行分割
- >>> a = '123e456e789'
- >>> a.split('e')
- ['123', '456', '789']
- >>> a.rsplit('e')
- ['123', '456', '789']
splitlines 按照行分隔,返回一个包含各行作为元素的列表
- >>> a = '''''123
- 456
- 789
- '''
- >>> a
- '123\n456\n789\n'
- >>> a.splitlines()
- ['123', '456', '789']
find rfind 分别表示从左边、右边开始搜索指定的字符串子串,返回从0开始的下标值,找不到返回-1
- >>> a
- '123\n456\n789\n'
- >>> a.find('a')
- -1
- >>> a.find('\n')
- 3
- >>> a.rfind('\n')
- 11
index rindex 功能与上面的find类似,只是找不到的时候返回错误
zfill 指定一个宽度,不足的左边补0
- >>> a = 'abcd'
- >>> a.zfill(10)
- '000000abcd'
upper lower 分别表示转换字母为大 、小 写
join 用指定字符串分隔
- >>> a
- 'abcd'
- >>> ' '.join(a)
- 'a b c d'
- >>> '_'.join(a)
- 'a_b_c_d'
replace 替换指定字符串为子串
- >>> a = '123abc123'
- >>> a.replace('abc','ABC')
- '123ABC123'
swapcase 将字符串的大小写反转,大写变小写,小写变大写
- >>> a='abcABC'
- >>> a.swapcase()
- 'ABCabc''
format 格式化字符串,返回格式化后的内容
- >>> s = 'i am {0}, age is {1},sex is {2}'
- >>> s.format('aaaa',12,'F')
- 'i am aaaa, age is 12,sex is F'
- >>> d = 'i am {name},age is {age}, sex is {sex}'
- >>> d.format(name='sss',age=12,sex='F')
- 'i am sss,age is 12, sex is F'
判断属性:
isnum 是否是数字
isalpha 如果 string 至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
isdecimal 如果 string 只包含十进制数字则返回 True 否则返回 False
istitle 是否是标题(标题的每个单词首字母大写),是返回True
isupper 是否都是大写字母
islower 是否都是小写字母
isdigit 如果 string 只包含数字则返回 True 否则返回 False.
isalnum 如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False