Python——(杂记)

IDE:集成开发环境

enumerate的使用:
例如:已知lst = [1,2,3,4,5,6],要求输出:
0,1
1,2
2,3
3,4
4,5
5,6

a = [1,2,3,4,5]
for index,value in enumerate(a):
	print('%s,%s'%(index,value))
输出如下:
0,1
1,2
2,3
3,4
4,5

#指定索引从1开始
>>> lst = [1,2,3,4,5,6]
>>> for index,value in enumerate(lst,1):
print ('%s,%s' % (index,value))

1,1
2,2
3,3
4,4
5,5
6,6

#指定索引从3开始
>>> for index,value in enumerate(lst,3):
print ('%s,%s' % (index,value))

3,1
4,2
5,3
6,4
7,5
8,6

1.str = r'C:\Program Files\FishC\Good''\\'   
    (结尾加反斜杠,用转义字符,r就是直接把\作为输入而不是转义)
file1 = open(r'C:\windows\temp\readme.txt', 'r') 表示以只读方式打开
2.跨行:(1)                                    (2)                                        (3)
    str = """                   str = '   asdasasd\         str = ('asdasd'
                            sadasdas\                  'asdasd'                        
           """                                asdasds'                  ' sadas')
(单、双引号都可以,可以做多行注释)
3.input 输入的是字符串类型  , int是向下取整
    prompt = ('请输入用户名:')
    name = input(prompt)
4.    s为字符串
    s.isalnum()  所有字符都是数字或者字母,为真返回 Ture,否则返回 False。
    s.isalpha()   所有字符都是字母,为真返回 Ture,否则返回 False。
    s.isdigit()     所有字符都是数字,为真返回 Ture,否则返回 False。
    s.islower()    所有字符都是小写,为真返回 Ture,否则返回 False。
    s.isupper()   所有字符都是大写,为真返回 Ture,否则返回 False。
    s.istitle()      所有单词都是首字母大写,为真返回 Ture,否则返回 False。
    s.isspace()   所有字符都是空白字符,为真返回 Ture,否则返回 False
5.(1)type() 和 isinstance()   e.g.type(1) ;  isinstance(1,int)
   (2)索引函数index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始)
           和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,
           只不过如果str不在 string中会报一个异常。
    index()方法语法:
    str.index(str, beg=0, end=len(string))
    参数:
    str -- 指定检索的字符串
    beg -- 开始索引,默认为0。
    end -- 结束索引,默认为字符串的长度。
   (3)find:str.find(str, beg=0, end=len(string))   有返回开始的索引值,否则返回-1
   (4)split(分割:):    data = '1000,小甲鱼,男'
            (mydict['id'], mydict['name'], mydict['sex'] = data.split(','))
6.temp.isdigit() : 判断temp是否是数字,是则true
7.一个语句分多行输入
    反斜杠:3 > 4 and \
        1 < 2
     括号:  ( 3 > 4 and 
         1 < 2 )
8. print('*',  end=' ')   # 打印的结尾为空白
9. // :整数除法  3//2 = 1  , 3.0//2.0 = 1.0
    not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9 = 4(not > and > or)
10. assert 0:assert后面条件为假的话就报错AssertionError
    直接交换:x, y, z = z, y, x
11. 三元操作符:
     (x < y and [x] or [y])[0] = 2 (x=2,  y=3, z=4)
    small = x if (x < y and x < z) else (y if y < z else z) = 2
12. 列表(随时可以添加和删除), 元组(封闭的列表,不可改变):
    列表:[];元组:();字典:{}  。 (字典要有映射关系,不能只大括号,不然是set类型)
              dict((()))    set([]) or set{}
    mix = [1, ‘小甲鱼’, 3.14, [1, 2, 3]]   
    添加元素:append()、extend() 和 insert()
    mix.append(['o', 'm'])
    mix.extend(['o', 'm'])
    mix = [1, '小甲鱼', 3.14, [1, 2, 3], ['o', 'm'], 'o', 'm']
    name.insert(2, 's')   # 在第2,3个元素之间插入s
    temp=mix.pop(): 把mix列表的最后一个元素拿出来赋给temp
13. list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
     list1[1][2][0] = '小鱿鱼'   # 修改小甲鱼为小鱿鱼
14. 顺序、逆序排序:    列表名.sort()
        列表名.reverse()
                 or列表名.sort(reverse=True)
     拷贝、清空:    list2 = list1.copy() 、 list2.clear()    
15. (1)  temp = (‘小甲鱼’, ‘黑夜’, ‘迷途’, ‘小布丁’)
    # 如果我想在“黑夜”和“迷途”之间插入“怡静”,我们应该:
    temp = temp[:2] + (‘怡静’,) + temp[2:]
     (2)   x, y, z = 1, 2, 3
    (所有的多对象的、逗号分隔的、没有明确用符号定义的这些集合默认的类型都是元组)
    type(x)
    h = x, y, z
    type(h)    #  
16. 没有类似列表推导式的元组推导式,而是生成器
     tuple1 = (x**2 for x in range(10))
    type(tuple1)
    
    tuple1.__next__()            # 生成下一个:即0,1,4,9,16……81
17. str1 = '鱼C资源打包'
    提取出子字符串:'www.fishc.com':str1[16:29]  or  str1[-45:-32]
    提取出:'fishc':str1[20:-36]
18.    符   号       说     明
         %c       格式化字符及其ASCII码
         %s       格式化字符串
        %d       格式化整数
        %o       格式化无符号八进制数
        %x       格式化无符号十六进制数
        %X       格式化无符号十六进制数(大写)
         %f       格式化定点数,可指定小数点后的精度
         %e       用科学计数法格式化定点数
         %g       根据值的大小决定使用%f或者%e
         %G       根据值的大小决定使用%F或者%E
19.     (1)"{{1}}".format("不打印","打印")
             {1}是占位符,表示打印打印第二个
    (2)"{a} love {b}.{c}".format(a="I", b="FishC", c="com")   # 关键字参数
             'I love FishC.com'
    (3)"{0} love {1}.{2}".format("I", "FishC", "com")                # 位置参数
             'I love FishC.com'
    (4)'{0}{1:.2f}'.format('Pi = ', 3.1415)
             'Pi = 3.14'
20. 进制转换:print('十进制 -> 十六进制 : %d -> 0x%x' % (num, num))
                 print('十进制 -> 八进制 : %d -> 0o%o' % (num, num))
                 print('十进制 -> 二进制 : %d -> ' % num, bin(num))
    print('子字符串在目标字符串中共出现%d次' % count)
21.转换:  temp = 'I love FishC.com!'
    list(temp)
    ['I', ' ', 'l', 'o', 'v', 'e', ' ', 'F', 'i', 's', 'h', 'C', '.', 'c', 'o', 'm', '!']
    str(temp)
    'I love FishC.com!'
    list([temp])
    ['I love FishC.com!']
    tuple([temp])
    ('I love FishC.com!',)
22.   def MyFun(x, y):
        return x[0] * x[1] - y[0] * y[1]
23. 函数文档(为了让别人理解你的函数):
                def Dec2Bin(dec):
        '函数文档'
     访问函数文档: Dec2Bin.__doc__
         '函数文档'
     help(Dec2Bin):查看函数的默认参数和函数文档
24. (1)全局变量:global
     (2)在内部函数修改外部函数的局部变量:nonlocal
25. 闭包(可用于游戏的角色移动):
    def funX():            可得6 7 8
        x = 5
        def funY():
            nonlocal x
            x += 1
            return x
        return funY
    
    a = funX()
    print(a()) print(a()) print(a())                (只要a没被重新赋值funX()就没有被释放)
26.(1) 匿名函数:lambda x, y = : x * y
     (2)filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,
   可以使用 list() 来转换。该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传
   递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
    e.g. list(filter(lambda n : not (n % 3), range(1, 100))  # 计算100以内的3的倍数)
         =[ i for i in range(1, 100) if not (i % 3)]    #  filter(function, iterable)
27. (1)zip:将两式以元组形式绑定在一起:list(zip([1,3,5,7,9], [2,4,6,8,10]))
                              [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
      (2)map() 函数语法:map() 会根据提供的函数对指定序列做映射。第一个参数 function 以参数
序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表.
    map(function, iterable, ...)
    e.g. list(map(lambda x, y : [x, y], [1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))    
          [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]
28. 字典: mydict = dict((('F', 70), ('i', 105)))   or   dict()
    {'F': 70, 'i': 105}     
    mydict['F'] -> 70
    直接mydict['G'] = 123就可添加字典元素
29. 集合:集合是无序的(num_set[0]会报错)  set1 = {1, 1.0} -> set1 = 1
     (1)集合:num_set = set([1, 2, 3, 4])
        num_set -> {1, 2, 3, 4}
     (2)不变的集合:num_set = frozenset([1, 2, 3, 4])
        num_set -> frozenset({1, 2, 3, 4})
     (3)添加和删除元素:num1.add(6)        :添加6
               num1.remove(6)  :去除6
30. 打开文件:f = open('E:/test.txt', 'w')       # A   √
         f = open('E:\test.txt', 'w')       # B   ×(用反斜杠需要用双反斜杠进行转义)
         f = open('E://test.txt', 'w')      # C   √
         f = open('E:\\test.txt', 'w')      # D   √
    (默认打开模式为:rt,即可读、文本模式)
    ‘xb’:可写入及二进制模式
    ‘w’ :可写入模式打开,若存在文件名相同的文件会覆盖
    ‘x’  :可写入模式打开,若存在文件名相同的文件会抛出异常

Python——(杂记)_第1张图片 Python——(杂记)_第2张图片

 Python——(杂记)_第3张图片

 

 31.类

Python——(杂记)_第4张图片Python——(杂记)_第5张图片

 32.构造函数与析构函数

Python——(杂记)_第6张图片

Python——(杂记)_第7张图片

 33.静态方法

Python——(杂记)_第8张图片

 34.操作数重载

Python——(杂记)_第9张图片

 35.继承

Python——(杂记)_第10张图片Python——(杂记)_第11张图片

Python——(杂记)_第12张图片

 36.模块 Python——(杂记)_第13张图片

Python——(杂记)_第14张图片

你可能感兴趣的:(Python,python,人工智能)