day_14 内置函数

1:    locals()     查找当前作用域中的内容             globals()  查找全局作用域中的内容

2:    range(起始位置, 结束位置 ,步长)      累似切片取值

3:     lst = ["大阳哥", "喜欢", "私密的徒步"]

        it = iter(lst)

        print(it.__next__())

        print(next(it))               ====>功能和 __next__功能是一样的

4:     print("李嘉诚", "黄花菜", "马云", sep="*", end="大阳哥") # seperator是中间项,打印效果而已,不能用作处理                 input(交互,输入提示语)

5:     a= '高永杰'     print(hash(a))   算出来的值有正负这个就是负的          (1)  目的是唯一性       (2) dict 查找效率非常高, hash表.用空间换的时间 比较耗费内存

6:    name = input("请输入你要导入的模块:")

        __import__(name)        ======>可以动态导入模块   

7:    help()       ======>括号里要输入你要查询的类型              推荐使用  ctrl+单击   可以更加方便的查找你要了解的内置函数

8:    print(dir(str))            ======>  可以查询函数的内置功能

9:   a = 11.25     print(type(a))                  ======>  可以查询变量的类型

10:   print(bin(3))     ====>0b11       ===>十进制转二进制                      print(oct(8))        ===>0o10        ===>十进制转八进制  

         print(10)          ====> 十进制                                                           print(hex(16))     ===>0x10       ===>十进制转十六进制

11:    a = 10          print(callable(a))                 =====>判断一个变量名或者函数名能否被调用

12:  print(abs(-2))    ==>求绝对值无视正负          print(divmod(20,3)) # 求商和余数      ===>打印的是20/3的商和余数             print(round(4.50)) ===>打印的是个整数,4舍5入

13:  print(sum([1,2,3,4,5,6,7,8,9,10],666))      ====>求和,可以是两个数,        也可以求可迭代的对象和与两一个数字相加的和

        print(pow(10,2,3))        =====>  如果给了第三个参数. 表示最后取余数

14:    lst = "你好啊"

         it = reversed(lst)   # 不会改变原列表. 返回一个迭代器, 设计上的一个规则     

         print(list(it))

15     lst = [1, 2, 3, 4, 5, 6, 7]           print(lst[1:3:1])             效果和后者一样      s = slice(1, 3, 1)           print(lst[s])

16:     print(repr(name))     ====>  原样输出,过滤掉转义字符 \n \t \r 不管百分号,占位符

17;    print(ord('a')) # 97, 返回字母a在编码表中的码位                                     print(chr(65)) # 已知码位. 计算字符

         print(ord('中')) # 20013 中国的中字在编码表中的位置                              print(chr(20018))

18:   print(ascii("房"))   判断是否在ascii中

19:       s = "李嘉诚的爸爸"                a = s.encode("UTF-8") 用utf-8编码              print(a.decode("utf-8"))用utf-8编码

20:   ret =  bytearray("alex" ,encoding ='utf-8')           print(ret[0])  ===>将单个的字节孤立串联起来,可以按所以修改,修改英文不会出错,修改其他语会出错

21:   s = memoryview("麻花藤".encode( "utf-8")) # 查看内存

         print(s)

22:   print(any())       括号内的元素有一个为真,打印结果就为真                         print(all())     括号内的元素都为真,打印结果才为真

23:    lst = ["蛋1", "蛋2", "蛋3", "蛋4"]

         for index, el in enumerate(lst, 1):      ===>           通过解构把索引和元素一起获取,索引默认从0开始. 可以更改

         print(el)      print(index)

24:       lst1 = ["施瓦辛格", "泰达米尔", "阿米尔汗", "威震天"]

            lst2 = ["终结者", "英雄联盟", "我的个神啊", "变形金刚"]

            lst3 = [10000000, 3, 10, 55,66]

            for el in zip(lst1, lst2, lst3):

                   print(el)                                   ====>zip()会依据最短的列表来进行匹对

25;       

# 字符串串
print(format('test', '<20')) # 左对齐
print(format('test', '>20')) # 右对齐
print(format('test', '^20')) # 居中
# 数值
print(format(3, 'b')) # 二进制
print(format(97, 'c')) # 转换成unicode字符
print(format(11, 'd')) # 十进制
print(format(11, 'o')) # 八进制
print(format(11, 'x')) # 十六进制(小写字母)
print(format(11, 'X')) # 十六进制(大写字母)
print(format(11, 'n')) # 和d一样
print(format(11)) # 和d一样
# 浮点数
print(format(123456789, 'e')) # 科学计数法. 默认保留留6位小数
print(format(123456789, '0.2e')) # 科学计数法. 保留留2位小数(小写)
print(format(123456789, '0.2E')) # 科学计数法. 保留留2位小数(大写)
print(format(1.23456789, 'f')) # 小数点计数法. 保留留6位小数
print(format(1.23456789, '0.2f')) # 小数点计数法. 保留留2位小数
print(format(1.23456789, '0.10f')) # 小数点计数法. 保留留10位小数
print(format(1.23456789e+10000, 'F')) # 小数点计数法.

26:      eval() 执行字符串类型的代码. 并返回最终结果       如:     print(eval("2+2")) ===> 4                  n = 8    print(eval("2+n")) ===>10

           exec() 执行字符串类型的代码

           compile() 将字符串类型的代码变异. 代码对象能够通过exec语句来执行或者eval()进行求值        

参数说明:
1. resource 要执行的代码, 动态代码片段
2. 文件名, 代码存放的文件名, 当传入了第一个参数的时候, 这个参数给空就可以了
3. 模式, 取值有3个,
1. exec: 一般放一些流程语句的时候
2. eval: resource只存放一个求值表达式.
3. single: resource存放的代码有交互的时候. mode应为single

code1 = "for i in range(10): print(i)"
c1 = compile(code1, "", mode="exec")
exec(c1)
code2 = "1+2+3"
c2 = compile(code2, "", mode="eval")
a = eval(c2)

print(a)
code3 = "name = input('请输⼊入你的名字:')"
c3 = compile(code3, "", mode="single")
exec(c3)
print(name)

有返回值的字符串形式的代码用eval(). 没有返回值的字符串形式的代码用exec(). 一般很少用到compile()



   



 

   

猜你喜欢

转载自www.cnblogs.com/laogao123/p/9338512.html