python基础2-数字和字符串

GBK编码是中文编码

以一种编码编,以另外一种编码读,肯定会乱码

utf8中文占用3个字节

gbk中文占用2个字节

python的while也有else语句,但是只执行一次

IDE集成开发环境

“郑建文”,建文,是子字符串,也叫子序列

运算符

  • in,和not in。 if判断后的条件,本质上就是true或者false
  • 算数运算符和赋值运算符,得到的是数值
  • 比较运算,逻辑运算和成员运算符,得到的布尔值

数据类型

  • 数字,字符串,布尔值,每种类型有自己的魔法功能,变量.就可以调用魔法

数字

  • int将字符串转换为数字,num = "0011",v = int (num, base = 16),将16进制的num转换成10进制
  • type()获取数据的类型
  • age.bit_length(),表示age的数字取值,用二进制至少用几位来表示。如5的二进制位数至少是3

字符串test= "alex"(7个基本魔法,4个灰魔法)

  • test.capitalize(),首字母大写
  • test.casefold()和test.lower,所有的变小写
  • 遇到魔法中def center(self,width,fillchar = None)没有等号的,都是必须带的。如果有=None,则默认为None。该函数是设置宽度,并将内容居中
  • test.l just(20,"*"),占用20位,将test放置左边,*补充空位。r just。
  • test.count('r'),计算r在test中出现多少次
  • encode和decode很重要
  • test.endswith('x'),字符串是否以x结尾。startswith
  • test.find('ex')在字符串中找到第一个ex,获取其位置,找不到返回-1。    index(‘x’)也可以找x的位置,找不到返回错误。
  • test = 'i am {name}, age = {a}'。v= test.format(name='alex', a=19),格式化,将format中的值替换到test对应的占位符
  • test = ‘ i am {0}, age = {1}’,test.format('alex',19),按照format中的顺序填入test对应的占位符
  • test.format_map({"name":'alex',"a":19}),利用字典的性质进行格式化,与format功能相同
  • test.isanum(),检测test字符串是否只包含字母和数字
  • test.expandtabs(6),表示按照6位一组来检测有无tab,如果有,则当前组不够6位的数字用空格凑。/t+前边的等于6位长度
  • test.isalpha检测test是否仅为字母
  • test.isdecimal,和test.isdigit均是判定是否是数字,test.isnumeric()也能判断是否为数字,包括“二”
  • test.isidentifier()检测test是否是标识符,只由字母,数字,下划线组成
  • test.isprintable(),检测字符串中是否有打印时不可显示的东西,如/t,/n等
  • test.isspace(),判断字符串是否全为空格
  • test.istitle(),检测字符串是否为标题。标题的每个单词的首字母需要大写。test.title(),将字符串转换为标题
  • !!!t.join(test),将字符串的每个元素按照指定分隔符t拼接起来,如t = " ",则将test每个元素之间加个空格。在列表中也能用
  • test.upper,isupper,lower,islower,转换为大写,是否全部为大写
  • test.lstrip('abc')从左向右,使用字符abc中的子序列进行最大正向匹配,然后去除匹配成功的序列。rstrip,strip,去除左右空白。最长公共子序列
  • m = str.makettrans("aeiou", "12345"),将两个字符做匹配,a对应1,然后test.translate(m),是将字符串test中的字符按照m给出的对应关系进行替换,如将test中的a替换为1
  • 正则表达式是以下两个魔法的功能合集:
  • test.partition('s)将test按照s从左开始分割成3份,rpartition('s')是从右开始分割
  • !!!test.split('s',2),是将test从左开始,按照s分割成3份,不显示s。rsplit是从右开始。
  • test.splitlines(True),是将test按照换行符号进行分割,并显示换行符号
  • test.swapcase(),是对test每个字符进行大小写互换,大写字符转成小写,小写字符转成大写
  • test.replace("ex","bbb",n),对test从左开始的前n个ex替换成bbb

 

  • 灰魔法:

 

  • 索引下标来获取字符串中的某一个字符。
  • 截取或切片[ 2: 4],左闭右开。
  • len获取长度。len在其他数据类型中也能用到,如列表。
  • for循环,for 变量名 in 字符串:print (变量名)。for循环自动完成+1的操作,将字符串一个个遍历。for循环的灰魔法,在其他数据类型中也能用,break和continue也支持

  • 深灰魔法

  • 字符串在内存中一旦创建,就不可修改。如果修改,则重新创建一个字符串。原因是,如果修改内容大于原本内容,则空间不够用。在java,c#同样

  • 创建连续的数字,v= range(100,x),for item in v:print(item),python3中不会一开始就创建0到100,只有使用时才创建。x是步长,每x个创建一个
上一篇:【基础02】python字符串格式化的三种方式


下一篇:微信公众号 菜单 { “errcode“: 47001, “errmsg“: “data format error rid: 61b36b ...“}