python基本数据类型

1.进制转换

1.二进制和十进制互转

  • 十进制转二进制
    在这里插入图片描述
  • 二进制转十进制
/87654321
二进制00010101
十进制0 * 270 * 260 * 251 * 240 * 231 * 220 * 211* 20

十进制最后求和:21

其他进制转化不做要求

2.基本类型转换(str<–>bool<–>int)

1.str --> bool

bool('') == False 其他都是True

2.bool --> str

str(True) == ‘True’

3.str --> int

非数字报错

4.bool --> int

int(True) == 1
int(False) == 0

5.int --> str

转变成字符串类型

6.int --> bool

bool(0) == False
其他数字都是 True

3.int类型

  • int.bit_length()
    返回数字的有效二进制位数

4.str类型

  • 切片

s = "我爱北京天安门"

s1 = s[0]
print(s1) # 我

s2 = s[2]
print(s2) # 北

s3 = s[-2]
print(s3) # 安

s4 = s[:6] # 从零开始可以省略
print(s4) # 我爱北京天安

s5 = s[:] # 取最后一位可以不写
print(s5) # 我爱北京天安门

s6 = s[6:] 
print(s6) # 门

s7 = s[:6:2]
print(s7) # 我北天

s8 = s[-1:-6:-2]
print(s8) # 门天北
  • 常用操作方法

大前提:对字符串的任何操作都是产生一个新的字符串,与原字符串没有关系

1.capitalize() ☆

用于首字母大写,仅限第一个字符

2.upper()、lower() ☆☆☆

  • upper()
    将所有字母转变成大写字母,非字母不变
  • lower()
    将所有字母转变成小写字母,非字母不变

3.center(width[,fill]) ☆

输出居中显示,可设置填充字符

4.swapcase() ☆

将所有字母大小写反转,非字母不变

5.title() ☆

将非字母隔开的每个单词的首字母大写

6.strip()、lstrip() 、rstrip() ☆☆☆

  • strip([chars])
    默认去除字符串两边的空格,换行符,制表符
    可设置去除的字符
 s = 'qw*awle@xyt@'
# 可设置去除的字符
s6 = s.strip('qyt@w*')
print(s6) # awle@x
  • ltrip([chars])
    默认去除字符串左边的空格,换行符,制表符
  • rtrip([chars])
    默认去除字符串右边的空格,换行符,制表符

7.split()、rsplit() ☆☆☆

1.split()
从左边开始分割

  • 默认按照空格、制表符(\t)、换行(\r)、回车(\n)分割
s = '武大 小潘\t西门'
l = s.split()
print(l) # ['武大', '小潘', '西门']
  • 指定字符分割
s = '武大a小潘a西门'
l = s.split('a')
print(l) #  ['武大', '小潘', '西门']

2、rsplit()
从右边开始分割

  • 其他同split()

8.join() ☆☆☆

将序列中的元素以指定的字符连接生成一个新的字符串

操作列表时,列表里面的内容必须全部是字符串类型

用法:连接符.join(iterable)

s = 'yxl'
s7 = '*'.join(s)
print(s) # 'y*x*l'

l1 = ['wu', 'li', 'zhou']
s7 = ','.join(l1)
print(s7) # 'wu, li, zhou'

9.startswith()、endswith() ☆☆☆

  • startswith()
    判断以什么为开头 可以切片
s = 'aaaatailiang'
s8 = s.startswith('ta', 4, 9)
print(s8) # True
  • endswith()
    判断以什么为结尾 可以切片

10.find()、index() ☆☆

  • find()
    通过元素获取其索引,找到第一个就返回,找不到会返回-1
  • index()
    通过元素获取其索引,找到第一个就返回,找不到会报错
s = 'tailiang'
s9 = s.find('ai')
print(s9) # 1
s9 = s.find('a',2,)
print(s9) # 4
s9 = s.index('W') # 找不到报错

11.replace() ☆☆☆

把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。

s = 'wo 是一个很nb的人,非常nb,太nb了'
s10 = s.replace('nb', 'sb')
print(s10) # wo 是一个很sb的人,非常sb,太sb了
s10 = s.replace('nb', 'sb', 2)
print(s10) # wo 是一个很sb的人,非常sb,太nb了

12.format() ☆☆☆

一种格式化字符串的函数

  • 方法一
 s = '我叫{},今年{},性别{}'
s11 = s.format('美龙', '23', 'man')
print(s11) # 我叫美龙,今年23,性别man
  • 方法二
s = '我叫{0},今年{1},性别{2},我依然叫{0}{0}{0}'
s11 = s.format('美龙', '23', 'man')
print(s11) # 我叫美龙,今年23,性别man,我依然叫美龙美龙美龙
  • 方法三
s = '我叫{name},今年{age},性别{sex},我依然叫{name}'
s11 = s.format(name='美龙', sex='man', age='23')
print(s11) # 我叫美龙,今年23,性别man,我依然叫美龙

如果需要输出{},请用双大口号包起来,{{}}

s = '我叫{{{name}}}'
s11 = s.format(name='美龙')
print(s11) # 我叫{美龙}

13.is系列

  • isalnum() ☆☆
    字符串由字母、中文或数字组成
  • isalpha() ☆☆
    字符串只由字母、中文组成
  • isdigit() ☆☆☆
    字符串只由数字组成

14.count() ☆☆

字符串某个字符出现的次数

15.len() ☆☆☆

获取字符串的字符个数,总长度

5.for循环

for 有限循环

for循环结构

for 变量 in iterable:
    pass
else:
	pass
s = "123456789"
for c in s:
	print(c)
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值