1、数字
int(整型)
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
关于int的常用方法:
1.创建 例如:n=123 或 n=int(123)
2.转变 例: s="123" m=int(s) 注:int只能转变数字,对于字母或者汉字会报错
3.功能:bit_length() #查看二进制占用的最小位数 (37).bit_length ==> 6
conjugate() #返回该数字的共轭复数
_abs_ #绝对值 _and_ #x&y _cmp_ #比较大小 _coerce_ #将x,y强制生成一个元组
剩余其他功能可在int类中alt+鼠标左键查看。
2、布尔值
真或假 1或0 True或False
3、字符串
字符串常用功能:移除空白strip()、 分割split()、 长度len()、 索引index()、 切片s[0:2]
1.创建 s="abc" s=str("abc")
2.转换 a=123 s=str(a) 拓展:bytes类型==> 字符串str s=str(b,encoding="utf8")
例题:将自己的名字以二进制形式表示出来
name="张三"
for i inname:
print(i)
bytes_list=bytes(i,encoding="utf8")#utf8一个汉字占三个字节,也可转成GBK,占两个字节for j inbytes_list:
print(bytes_list,bin(j))
#结果为:
张
b'\xe5\xbc\xa0'0b11100101
b'\xe5\xbc\xa0'0b10111100
b'\xe5\xbc\xa0'0b10100000
三
b'\xe4\xb8\x89'0b11100100
b'\xe4\xb8\x89'0b10111000
b'\xe4\xb8\x89' 0b10001001
3.其他功能(由于字符串是不可变的,因此它的操作均具有返回值,并且原字符串不改变)
① 返回为str类型功能
S.capitalize() #首字母大写 s.casefold() #大写变小写 s.swapcase(self) # 大写变小写,小写变大写
s.center(self, width, fillchar=None)#指定字符串长度,使居中,第二个参数为填充内容(可以是"-","","*"等)
s.ljust(self, width, fillchar=None) #指定长度,左对齐 s.rjust()
s.zfill(self, width) #指定长度,左侧填充0
s.strip(self, chars=None)#去除开头结尾的空格,换行符及tab键,
If chars is given and not None, remove characters in chars instead
s.upper() s.lower(self) s.strip()
s.replace(self, old, new, count=None) #count指定替换次数
s.title(self) #转为标题
s.expandtabs(self, tabsize=8)#将tab键转换为八个空格
②判断型功能(返回为bool)
s.endswith(self, suffix, start=None, end=None) #suffix后缀,在此suffix也可以为字符串的元组
s.startswith(self, prefix, start=None, end=None)
s.isalnum(self) #判断是否为数字 s.isdecimal(self) #判断是否为十进制数
s.isalpha(self) #判断是否为字母 s.digit() #判断是否为数字
s.isidentifier(self) #判断变量名是否为合法 s.isnumeric() #判断是否为数字(一,壹都可识别)
s.islower() s.isupper() s.istitle()#每个单词首字母是否大写 s.isspace() s.isprintable()
③返回为int类型功能
s.count(self, sub, start=None, end=None) #sub表示子序列,返回为int
s.find(self, sub, start=None, end=None)#返回第一个sub的index,若无返回为-1
s.rfind(self, sub, start=None, end=None)
s.index(self, sub, start=None, end=None)#同上,但若无,报错
s.rindex(self, sub, start=None, end=None)
④返回为bytes,tuple,list
encode(self, encoding='utf-8', errors='strict') #编码 返回值为bytes
s.partition(sep) -> (head, sep, tail) #分割,若sep不存在,则返回(s,"","")
s.rpartition(self, sep)
s.rsplit(self, sep=None, maxsplit=-1) #maxsplit指定分割次数,返回列表
s.split(self, sep=None, maxsplit=-1) # sep如无,则将s转换为列表
s.splitlines(self, keepends=None)#以换行符分割,返回列表
⑤与其他数据类型结合使用的功能
s.join(self, iterable) #连接 举例见下
li=["abc","cmd","hello"]
s="_".join(li)
print(s)
#结果:
#abc_cmd_hello
s.translate(self, table) 和 s.maketrans(self, *args, **kwargs)
name="hello_world"In= "elordh"Out= "@#$%&*"trans_table=str.maketrans(In,Out)
print(name.translate(trans_table))
#结果为:
#*@##$_w$%#&
s.format(self, *args, **kwargs) s.format_map(self, mapping)# map 映射
注:各式数据类型占位符:str(%s),digit(%d),float(%f),%s之间加入数字,可以规定字符串长度,%.4f可规定小数点个数。%s可代替%d。默认右对齐,加-号改为左对齐。下面是关于format用法。
print("nihao%-10scb"%"ai")
print("nihao%10scb"%"ai")
#结果为
#nihaoai cb
#nihao aicb
print("hello {0},my age is {1}".format("zhangge",23))
print("hello {name},my age is {age}.".format(age=23,name="zhangge"))#建议使用,位置可互换
print("hello {name},my age is {age}.".format_map({"age":23,"name":"zhangge",}))
未完待续...