{ }.format()格式方法的一个指示器
创新互联公司是一家专注于成都做网站、成都网站建设与策划设计,建始网站建设哪家好?创新互联公司做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:建始等地区。建始做网站价格咨询:028-86922220
例如:'{0:b}'.format(int(a,2)+int(b,2))
这个的意思就是 按照 2进制 a + 2进制b的格式 输出
: 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。
format 函数可以接受不限个参数,位置可以不按顺序。
str.format() 格式化数字的多种方法:
Python divmod() 函数
Python 内置函数
python divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。
在 python 2.3 版本之前不允许处理复数。
函数语法
divmod(a, b)
参数说明:
a: 数字
b: 数字
实例
^ -------异或xor
想复杂了
^就是数学里的 那个判断的异或符号
但是python里是按2进制算的
就是说
10进制的就按照转换为2进制 再转换为10进制来算
就是比如 5^3 = 6
因为:
5 = 0101(b)
3 = 0011(b)
二进制之后就是: 01100
再换回10进制就是 6
deque是双边队列,具有队列和栈的性质。相当于可以在两端操作的list。
以下是deque的常用方法:
数组初始化 = [None for _in range(rowNum)]
Python zip() 函数
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。
res = [a + b for a, b in zip([0] + res, res + [0])]
这句琢磨了半天
感觉应该跟三元表达式一样是个倒装句
但是其实应该是个省略句。。。
1、python自带punctuation包,可以消除所有中文标点符号。
Python itertools模块combinations方法
itertools模块combinations(iterable, r)方法可以创建一个迭代器,返回iterable中所有长度为r的子序列,返回的子序列中的项按输入iterable中的顺序排序。
例1:
例2、实现一位数组的所有排列组合:
例3:利用chain.from_iterable方法将多个迭代器连接起来
Python 认识格式化输出 中的 格式化符号
在前面的文章里我们早早就接触过Python中的输出的函数prinnt(),它的作用顾名思义就是输出,也就是程序输出内容给用户看。现在这篇文章不再说这么简单的print()输出,而是格式化输出。格式化输出含义:就是程序输出一种带格式的数据给用户。
输出:prinnt()
利用 print函数 返回结果是一个数字30,但是这个返回的数据30别人并不知道是30岁还是30年还是附有其他含义的一个数字。假如这里有一个需求:输出‘今年我的年龄是30岁’,这样的话那么这个需求里的30是不是就是取到我们上面的age = 30变量里存储的数据呢,这种操作就是格式化输出.
格式化输出
格式化输出含义:所谓的格式化输出就是按照一定的格式输出内容。
下面通过两点来讲解格式化输出。
1.1 格式化符号
这里是Python当中一些内置好的格式符号,大家不用全部背诵下来,只要着重学习前三个常用的就可以了,其他的等用到再把这篇笔记拿出来查一下就ok。
%s:是格式化字符串的,%s中的s代表str字符串类型的缩写,这样方便记忆。
%d:代表有符号对的十进制整数,有符号呢表示整数前面有正号或负号,有符号表示正负号都可以有。%u表示无符号的十进制整数,也就是只包含正整数,在与没用的时候我们一般用%d更全面一些。
%f:数据类型浮点数float缩写的前面字母f
1. 字符串字母处理
2. 字符串填充
str.ljust(width, fillchar)、str.center(width, fillchar)、str.rjust(width, fillchar)
返回一个指定的宽度 width 「居左」/「居中」/「居右」的字符串,如果 width 小于字符串宽度直接返回字符串,否则使用 fillchar 去填充。
3,字符串计数
str.count(sub, start, end)
#统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。
start, end遵循**“左闭右开”**原则。
4. 字符串位置
str.endswith(suffix, start, end)和str.startswith(substr, beg, end)
#判断字符串是否以指定后缀结尾/开头,如果以指定后缀「结尾」/「开头」返回 True,否则返回 False。
5. 字符串查找
6. 字符串判断
7. 字符串拼接
str.join() #将序列中的元素以指定的字符连接生成一个新的字符串。
s1 = "-" s2 = "" seq = ("r", "u", "n", "o", "o", "b")
# 字符串序列 print (s1.join( seq )) print (s2.join( seq )) r-u-n-o-o-b runoob
8. 统计字符串长度
str.len() #返回对象(字符、列表、元组等)长度或项目个数。
9. 去除字符两侧空格
str.lstrip()、str.rstrip()、str.strip() #截掉字符串「左边」/「右边」/「左右」两侧的空格或指定字符。
str0 = ' Hello World!' str0.lstrip() 'Hello World!' str1 = 'aaaa Hello World!' str1.lstrip('a') ' Hello World!'
10. str.maketrans(intab, outtab)和str.translate(table)
str.maketrans()创建字符映射的转换表
str.maketrans()根据参数table给出的表转换字符串的字符。
str.maketrans()传入的也可以是字典
tab = {'e': '3', 'o': '4'} trantab = str.maketrans(tab) str0.translate(trantab) 'H3ll4 W4rld!'
11. 字符串替换
str.replace(old, new, max)
12. 字符分割
str.split(str, num)
13. 字符填充
str.zfill(width)
返回指定长度的字符串,原字符串右对齐,前面填充0。
∧ X1Y1+X2Y2+......+XnYn-n*X(平均值)Y(平均值)
b =---------------------------------------------------------------
X1²+X2²+......+XnYn-(X(平均值))²
∧ ∧
a =Y(平均值)- b X
∧ ∧ ∧
y =b X+ a
已有字符串形式的函数名称,那么如何调用这个函数呢?
通过调用内置函数locals()和globals()返回的字典对象,就可以可以获得名称与对象的映射关系。其中,locals()仅在全局范围内调用时可以获得函数对象。 我们来看以下的例子。
需要注意的是,使用上述方法通过字符串调用函数时,为了系统的安全,防止执行任意函数,需要对函数名做一些处理,也就是使用统一的前缀为这些函数命名。例如在上述例子中,使用前缀cmd_+函数名的形式定义函数(cmd_help,cmd_sum)。
在传入函数名字符串时,只传入函数名的后半部分(如"help","sum"),由程序添加前缀后组成完整的函数名,再调用该函数。
对于类的成员函数,则可以使用getattr()获得类成员函数。
上述代码通过字符串调用了类成员函数,与前一段代码执行的结果相同。
此外,还可以使用字典将字符串与函数对应起来调用,缺点就是每增加一个函数需要相应在字典对象中添加相应的键值,增加代码维护工作量。
以上代码在Python 3.6以上运行通过。