zoukankan      html  css  js  c++  java
  • python内置函数二

    1 f = [1,2,3,4].__iter__()
    2 print(next(f))                              #通过调取迭代器__next__方法拿出迭代器的下一项
    3 print(object())                             #返回一个无特征对象,是所有类的基类.
    4 open("haha","w",encoding="utf-8")           #打开文件,格式(文件名,读写模式,编码格式)
    5 print(pow(2,3))                             #两个参数是,返回x**y
    6 print(pow(2,3,5))                           #三个参数时,返回x**y%z
    7 print("1","2",sep="_",end="")               #打印输出函数,sep是中间连接符(默认空格),end是末尾字符(默认是
    换行符)

    结果对照:

    1 1
    2 <object object at 0x0000028E770CE0C0>
    3 8
    4 3
    5 1_2
     1 class C:
     2     def __init__(self):
     3         self._x = None
     4 
     5     def getx(self):
     6         return self._x
     7 
     8     def setx(self, value):
     9         self._x = value
    10 
    11     def delx(self):
    12         del self._x
    13 
    14     x = property(getx, setx, delx, "I'm the 'x' property.")
    15 print(C.x)

    结果对照:

    1 <property object at 0x0000028FD26EAB88>
    1 print(list(range(10)))              #range实际不是一个函数,而是一个不变的序列
    2 print(range(0,10,2))                #python3中,直接打印range是直接输出,不是列表
    3 print(repr("asdf"))                 #返回对象可打印形式的字符串.
    4 print(list(reversed([1,2,3,4])))    #将对象返回一个反向迭代器,参数必须拥有__reversed__()方法
    5 print(round(3.45678,3))             #将数字四舍五入,第二个参数,给定保留几位数字

    结果对照:

    1 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    2 range(0, 10, 2)
    3 'asdf'
    4 [4, 3, 2, 1]
    5 3.457
    1 print(set([1,2,3,4,5]))                #将元素返回成一个新的集合对象
    2 lst = [1,2,3,4]
    3 print(lst[slice(0,3,1)])               #切片
    4 print(sorted([1,2,3,4,5],key=lambda x:x%2,reverse=True))        #排序,通过函数(key)指定排序方式,再通过reverse选择升序或者降序
    5 print(sum([1,2,3,4,5,6]))                   #返回可迭代对象的总和

    结果对照:

    1 {1, 2, 3, 4, 5}
    2 [1, 2, 3]
    3 [1, 3, 5, 2, 4]
    4 21

     python排序规则:

     1 li = [(1,1,1),(1,0,1),(0,0,0),(1,1,0),(0,0,1)]
     2 """
     3 F F F   3
     4 F F T   5
     5 T F T   2
     6 T T F   4
     7 T T T  1
     8 
     9 """
    10 li.sort()
    11 print(sorted(li))  #结果:[(0, 0, 0), (0, 0, 1), (1, 0, 1), (1, 1, 0), (1, 1, 1)]
    12 print(li)  #结果:[(0, 0, 0), (0, 0, 1), (1, 0, 1), (1, 1, 0), (1, 1, 1)]

    结果对照:

    1 [(0, 0, 0), (0, 0, 1), (1, 0, 1), (1, 1, 0), (1, 1, 1)]
    2 [(0, 0, 0), (0, 0, 1), (1, 0, 1), (1, 1, 0), (1, 1, 1)]

     例题:

    1 s = "Sorting1234"
    2 print("".join(sorted(s,key=lambda x: ( x.isdigit(), x.isdigit() and int(x) % 2 == 0, x.isupper(), x.islower(),x) )))

    拆分:

    1 for x in s:
    2     print( x.isdigit(), x.isdigit() and int(x) % 2 == 0, x.isupper(), x.islower(),x)

    结果显示:

     1 False False True False S
     2 False False False True o
     3 False False False True r
     4 False False False True t
     5 False False False True i
     6 False False False True n
     7 False False False True g
     8 True False False False 1
     9 True True False False 2
    10 True False False False 3
    11 True True False False 4
    1 ginortS1324      #先True后False,,相同情况按ASCII码排序
  • 相关阅读:
    博客园样式设置
    最坏情况为线性时间的选择算法
    棋盘覆盖
    矩阵乘法的Strassen算法及时间复杂度
    大整数乘法及算法时间复杂度
    全排列问题的递归算法(Perm)
    python的lambda
    python的zip函数
    python操作队列
    mysql基础命令
  • 原文地址:https://www.cnblogs.com/NoteBook3013/p/10273572.html
Copyright © 2011-2022 走看看