python 基础数据类型 一
2020-12-13 01:42
标签:可迭代对象 机器 replace 十进制 format abs 进制 pass sda 在32位机器上int的范围是: 在64位机器上int的范围是: 在python3中所有的整数都是int类型. 但在python2中如果数据量比较大. 会使用long类型. 在python3中不存在long类型 整数可以进行的操作+ - * / % // ** 二进制转换为十进制:要从右到左用二进制的每个数去乘以2的相应次方,小数点后则是从左往右 通用公式为: 十进制转换为二进制:十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。 求十进制数转换成二进制时所占用的位数可用: print(num.bit_length()) 用于条件使用 True(真) False(假) 数字转换为布尔值: 字符串转换为布尔值: 布尔值转换为字符串: 布尔值转换为数字: 用于存储数据 但量比较小 ‘ ‘ " " ‘‘‘ ‘‘‘ """ """ 里边都是字符串 1.全部大写 upper 全部小写 lower 2.查看开头 startswith 查看结尾 endswith 3.count 统计某元素或内容出现次数 4.替换 replace 5.除去头尾两边的空格 strip 6.分割 split 分割后得到一个列表 7.字符串格式化之 format 8.is系列 判断 str.join() str为要插入的符号,括号内为操作对象,列表,元组,字典都可以 操作结果为以插入的str隔开的字符串 可以用于统计字符串元素个数 for 关键字, i变量 ,s 可迭代对象(除int.bool 外都是) python3打印是它自己本身 python2打印是列表 python 基础数据类型 一 标签:可迭代对象 机器 replace 十进制 format abs 进制 pass sda 原文地址:https://www.cnblogs.com/banshannongchang/p/11006368.html基础数据类型 一
整数:在python3中用关键字int来表示
-2**31 2**31-1,即-2147483648~2147483647
-2**63~2**63-1,即-9223372036854775808~9223372036854775807
abcd.efg(2)=d*2^0+c*2^1+b*2^2+a*2^3+e*2^-1+f*2^-2+g*2^-3(10)
例1101.01转换为十进制
1101.01(2)=1*2^0+0*2^1+1*2^2+1*2^3 +0*2^-1+1*2^-2=1+0+4+8+0+0.25=13.25(10)
18/2=9 余 0
9/2=4 余 1
4/2=2 余0
2/2=1 余0
1/2=0 余1
18用二进制表示为 10010
num = 18
print(num.bit_length())
布尔值
print(bool(-10)) #结果 True 规律:非0即True
print(bool('')) #结果为 False 规律:非空即True(字符串里全空,空格也没有)
print(str(True)) #True type 为字符串
print(int(True)) #结果为1 False转换结果为0
字符串
字符串的索引和切片
name = "张三,Zain01,imm_ky"
#索引 从左往右数 01234... 相当于从0开始从左往右给元素编号,也可从右往左:-1-2-3-4.. 查找时超出范围会错.
#字符串,列表,元组 -- 都是有索引(下标)
print(name[1])
print(name[1:10:3]) # 切片:[起始位置:终止位置:步长] 顾头不顾尾 查找的时候超出范围没事
#步长:正负决定查找的方向 大小决定查找的间隔 默认时1 默认方向为从左到右 如-1是从左至右
#先定义一个范围 再确定方向
print(name[::-1] #倒序输出
print(name[:4]) #开始到3号索引即第四个元素
#[a:b:c] 前两位是去一个范围 a b 可正可负 c的符号决定了输出方向
字符串的常用处理方法
name = "absjdfg"
print(name.upper())
name = "SADFWSSS"
print(name.lower())
name = "alex"
print(name.startswith('a')) #结果为 True
name = "alex"
print(name.endswith('a')) #结果为False
name = "sdsdsdsdaadwfqs"
print(name.count('sd'))
name = "sdsdsdsdaadwfqs"
print(name.replace('d','A',5)) #括号内前面为要被替换的内容,中间为新内容,数字为替换次数,不填默认全换
name = ' imm_ky/ '
print(name.strip()) #默认去掉空格和换行符,可以写自己想换的内容.
name = "a l e x"
print(name.split()) #默认以空格分隔,也可自定义分割
name = 'alex{}wusir{}'
name1 = name.format('去玩了','在上班') #按顺序对应填充
name = 'alex{0}wusir{1}'
name1 = name.format('去玩了','在上班') #按索引位置填充
name = 'alex{a}wusir{b}'
name1 = name.format(a='去玩了',b='在上班') #指名填充
name = '2343②'
print(name.isdigit()) # isdigit 判断是不是阿拉伯数字
name = '385'
print(name.isdecimal()) # isdicimal 判断是不是十进制 一般用它判断是不是数字
name = 'inmm汉字'
print(name.isalpha()) # isalpha 判断是不是由字母和汉字组成
name = 'inmm汉字985'
print(name.isalnum()) #isalnum 判断是不是右字母、数字、汉字组成.
join的用法 (得到字符串)
li = ['a','b','c','d']
s = ':'.join(li) # 用冒号分开各元素
>>> 'a:b:c:d' #得到结果为一个字符串
len() 函数
s = '今晚打老虎'
print(len(s)) # 结果为5
for循环
for i in s:
print(i)
s = 'alex'
for i in s:
pass # 过 占位符
``` #同pass
print(i)
#注意和上边的区别,最终结果为'x',因为对于for循环会根据索引给i赋值为s内的元素,直到最后一个变量(正常完成循环情况下),因此最终print(i)会输出最后一个元素.
range 取一个范围数
for i in range(1,10,2): # (起始位置,终止位置,步长)(顾头不顾尾)
#range(10) 指定了终止位置,起始位置默认是0
print(i)
下一篇:js学习记录