zoukankan      html  css  js  c++  java
  • 【Python自动化运维之路Day2】

    1. 常量命名规则

        在Python中,会在变量命名上标明某变量是常量,通常采用全是大写的方式来标明,如:  

    CONNECT= '127.0.0.1'
    PORT = '3306'

    2、Python编译

      python先把源码文件(.py)编译成字节码文件(.pyc)

          python3执行后,生成了一个__pycache__目录,pyc会在此目录下,python2执行可以看到直接生成了一个.pyc文件

      pyc  与py  时间戳不同,pyc才去重新编译

    3  数据

      <1> str

      1、str1+str2    ----万恶的字符串拼接   + 号

         2、

      str.replace(old, new[, max])  --字符串有 list没有此函数
           strip()     --去除空格
           split     ---分割字符串
           join    ---连接字符串

    <2> list

    1、list.append(obj):在列表末尾添加新的对象
    2、list.count(obj):统计某个元素在列表中出现的次数
    3、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
    4、list.index(obj):从列表中找出某个值第一个匹配项的索引位置
    5、list.insert(index, obj):将对象插入列表
    6、list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
    7、list.remove(obj):移除列表中某个值的第一个匹配项
    8、list.reverse():反向列表中元素
    9、list.sort([func]):对原列表进行排序  会改变原list。   3.x版本的  数字和字符串不能混合在一起排序

      PS:

    list[-5:-1]       list[-1:-5]  倒序去切片不可以,虎头蛇尾:list[5,10]   包含第5个  但是没有第10个
    del是全局:可以删除变量
    del list[2];   del  list  ; del list[:]--删除多个元素
     
    <3> tuple       ----  无法修改
      count   计数
      index    
    <4>dict     ----字典是无序的
          dict[name]  与dict.get('age')  --- 后者效率更高
      从字典中取值,当键不存在时不想处理异常
        dics.get('key', 'not found')
      dict[name]='alex'
      del dict[name]
      dict.clear()     --清空字典
      setdefault   取回一个key,如果不存在可以指定一个value,如果没设值(Value),默认返回None
         ps:
        dist  会自动去重
        for key in dict:
             print(key,dict[key])   ##  效率高
        dict.update(dict2)    dict2 -- 这是被添加dict到的词典
     
    4)  list的copy:
    list.copy()    只复制第一级,子list是指针
    完全copy :
    import copy
    copy.copy()
    copy.depcopy()
    #定义一个l3列表,里面嵌套两层列表
    >>> l3 = [1,2,3,['a','b','c',['A','B','D']],4,5]
    #l4从l3 copy
    >>> l4 = l3.copy()
    #列出l3元素
    >>> l3
    [1, 2, 3, ['a', 'b', 'c', ['A', 'B', 'D']], 4, 5]
    #列出l4元素
    >>> l4
    [1, 2, 3, ['a', 'b', 'c', ['A', 'B', 'D']], 4, 5]
    #修改l3嵌套的列表值
    >>> l3[3][1] = 'X'
    >>> l3[3][2] = 'Y'
    >>> l3[3][3] = 'Z'
    #而后查看l3和l4的元素,发现l3改了之后l4也跟着改了
    >>> l3
    [1, 2, 3, ['a', 'X', 'Y', 'Z'], 4, 5]
    >>> l4
    [1, 2, 3, ['a', 'X', 'Y', 'Z'], 4, 5]
    
    
    #如果要深度拷贝,可以使用Python标准模块copy的deepcopy方法:
    >>> import copy
    >>> l3 = [1, 2, 3, ['a', 'X', 'Y', 'Z'], 4, 5]
    >>> l5 = copy.deepcopy(l3)
    >>> 
    >>> 
    >>> l5
    [1, 2, 3, ['a', 'X', 'Y', 'Z'], 4, 5]
    >>> l3
    [1, 2, 3, ['a', 'X', 'Y', 'Z'], 4, 5]
    >>> l3[3][0] = 'A'
    >>> l3
    [1, 2, 3, ['A', 'X', 'Y', 'Z'], 4, 5]
    >>> l5
    [1, 2, 3, ['a', 'X', 'Y', 'Z'], 4, 5]

     5)  序列化到文本文件

    import pickle
    
    with open ( 'shop.txt' , 'wb' ) as f :
       pickle.dump ( shop , f )
    
    with open("shop.txt",'rb')  as obj:
        entry = pickle.load(obj)
    print(entry)

     6) 指定占位符宽度   左对齐

    print ("Name:%10s Age:%8d Height:%8.2f"%("Aviad",25,1.83))

    print ("Name:%-10s Age:%-8d Height:%-8.2f"%("Aviad",25,1.83))
  • 相关阅读:
    Creckme_Andrnalin.3
    逆向工程核心原理——第十三章
    Creckme_Andrnalin.2
    逆向工程核心原理——第十章
    第一个windows桌面应用程序
    逆向工程核心原理——第八章
    逆向工程核心原理——第七章
    逆向工程核心原理——第六章
    Creckme_6_aLoNg3x.1
    35. 搜索插入位置
  • 原文地址:https://www.cnblogs.com/renyb/p/5513143.html
Copyright © 2011-2022 走看看