zoukankan      html  css  js  c++  java
  • python3.0笔记

    python文件头

    #!/usr/bin/env python
    # -*- coding: utf-8 -*- 
    
    '''
    Created on 2017年5月9日
    @author: Administrator
    '''

     python主入口

    #!usr/bin/python
    # -*- coding: utf-8 -*- 
    
    '''
    Created on 2017牛5月9日
    @author: Administrator
    '''
    '''
    通俗的理解name == '__main__':假如你叫小明.py,在朋友眼中,你是小明(name == '小明');在你自己眼中,你是你自己(name == '__main__')
    '''
    def ceshi():
        name='name in fun'
        print(name)
    
    name='test'
    if __name__ == '__main__':
        ceshi()
        print(name)

    模块导入

    方式1. 导入模块中的函数
    from ceshi.py import fun
    
    方法2: 导入整个模块(ceshi模块)
    import ceshi
    
    方法3:导入工程中的任何模块
    import os,sys
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #获取到工程路径
    sys.path.append(BASE_DIR) #工程路径加入到  模块搜索路径
    from day1 import note1 #导入模块
    print(dir(note1))

     获取当前文件路径

    #!usr/bin/python
    # -*- coding: utf-8 -*- 
    
    '''
    Created on 2017年5月9日
    @author: Administrator
    '''
    
    import os,sys
    #输出本文件的绝对路径
    print(os.path.abspath(__file__))
    
    #输出本文件的上级目录,op.path.dirname()可以多层
    print(os.path.dirname(os.path.abspath(__file__)))
    
    sys.path.append(os.path.dirname(os.path.abspath(__file__)))
    
    from tools import base
    
    result=base.js(1,2,'+')
    print(result)

    例子格式化输出 

    #!usr/bin/python
    # -*- coding: utf-8 -*- 
    
    '''
    Created on 2017年5月9日
    @author: Administrator
    '''
    
    '''例子格式化输出
    #### %s:字符串  %d:十字制数字
    '''
    _str1="abc"
    _str2="trfc"
    _num1=10
    _num2=20
    print('''
    _str1=%s,
    _str2=%s,
    _num1=%d,
    _num2=%d 
    ''' %(_str1,_str2,_num1,_num2))

    例子三元运算

    '''例子三元运算
    
    a,b=3,5
    c=a if a<b else b  # 表达式:值1 if 条件  else 值2    结果 条件为true,返回值1,否则返回值2
    print(c)
    '''

     例子文件操作

    描述

    文件读操作是有个句柄。读过后句柄就往后走了。想重新读上面的内容 需要设置句柄

    文件打开模式

    最常用的r和r+
    r,只读模式(默认)。
    w,只写模式。【不可读;不存在则创建;存在则删除内容;】
    a,追加模式。【可读;   不存在则创建;存在则只追加内容;】
    
    "+" 表示可以同时读写某个文件
        r+,可读写文件。【可读;可写;可追加】
        w+,写读
        a+,同a
    "U"表示在读取时,可以将 
     
     
    自动转换成 
     (与 r 或 r+ 模式同使用)
        rU
        r+U
    "b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)
        open('文件名',mode='rb')  #注意这里不能给编码,二进制文件不存在编码
        rb
        wb
        ab

    例子-模式

    fn = open('yesterday',encoding='utf8',mode='r')  #参数路径,编码
    print(fn.read())

    循环读文件1,用这种方法是 只保存一行在内存中,所以高效

    fn = open('yesterday',encoding='utf8',mode='r')
    for line in fn:
        print(line.strip())

    循环读文件1,用这种方法是 一次性把整个文件内容读出来放在内存里。大文件的话效率低,而且占用内存大

    fn = open('yesterday',encoding='utf8',mode='r')
    for line in fn.readlines():
        print(line.strip())

    打开文件推荐方法,此方法不用手动去关闭文件

    with open('yesterday',encoding='utf8',mode='r') as fn:
        for line in fn:
            print(line.strip())

    #例子:句柄的操作,tell()和 seek()

    fn =  open('yesterday',encoding='utf8',mode='r')
    print(fn.readline())
    print(fn.tell())
    fn.seek(0)
    print(fn.readline())

     #列子,写文件

    import os
    file_path="d:\111.txt"
    
    if not os.path.exists(file_path):
        fn = open(file_path,mode='a')
        fn.close()
    else:
        with open(file_path,encoding='utf8',mode='a+') as fn:
            fn.write("this is ceshi ...
    ")
            fn.write("this is ceshi 22222 ...
    ")
            fn.close()

    循环和控制

    例子if_elif_else

    '''例子if_elif_else
    例子if_else
    _name='hui'
    _pwd='hui123'
    name=input("name:")
    pwd=input("pwd:")
    if _name==name and _pwd==pwd:
        print("login sucess")
    else:
        print("login fail")
    
    例子: if elif else
    age_of_alex=35
    guessAge=int(input('input guess age :'))
    if guessAge==age_of_alex:
        print('is right')
    elif guessAge>age_of_alex:
        print('think to small...')
    else:
        print('think to big...')
    
    例子 if 取反
    import os
    dir='D:\tmp'
    if not os.path.exists(dir):
        os.mkdir(dir)
    '''

     例子while

    '''例子while
    例子while
    count=0
    while count < 3:
        print(count)
        count+=1
    
    例子2:while
    count=0
    while True:
        if count == 10:
            break
        print(count)
        count+=1
    
    例子3: while, else:为while正常走完后执行的语句。如果被break破坏了 不执行else:
    age_of_alex=35
    count=0
    while count<3:
        guessAge=int(input('input guess age :'))
        if guessAge==age_of_alex:
            print('is right')
            break
        elif guessAge>age_of_alex:
            print('think to small...')
        else:
            print('think to big...')
        count+=1
    else:
        print('while end')
    '''

     例子for

    '''例子for
    例子for
    for i in range(5):
        print('loop:',i)
    
    例子2:for。注意 else:为for正常走完后执行的语句。如果被break破坏了 不执行else:
    age_of_alex=35
    for i in range(3):
        guessAge=int(input('input guess age :'))
        if guessAge==age_of_alex:
            print('is right')
            break
        elif guessAge>age_of_alex:
            print('think to small...')
        else:
            print('think to big...')
    else:
        print('while end')
    
    例子3:for 
    注意: range三个参数
    @0 开始  
    @10 结束  
    @2步长  。如果没有给 默认为1
    
    for i in range(0,10,2):
        print('loop:',i)
    
    例子4:for 
    注意: i%2 == 0 为偶数。
    
    for i in range(0,10):
        if i%2 == 0:
            continue
        print('loop:',i)
    '''

    数据类型

    例子:字符串操作

    '''例子:字符串操作
    
    __abc__ 此命名的为内容方法。不用管
    
    #例子:正则替换字符串
    import re
    
    reg=' +'
    str="abc    123 23   1234"
    
    result,number=re.subn(reg,' ',str)
    
    print(result)
    
    #例子:首字母大写
    name='alex'
    print(name.capitalize())
    
    #例子:统计单词数量
    name='alex'
    print(name.count('ex'))
    
    #例子:把字符串放在中间
    效果:-----------------------alex-----------------------
    name='alex'
    print(name.center(50,"-"))
    
    #例子:判断字符串以什么为结尾,可用来判断邮件地址
    email='abcd@qq.com'
    if email.endswith('.com'):
        print('true')
    else:
        print('false')
        
    #例子:定义	的空格数
    name='刘	德华'
    print(name.expandtabs(tabsize=10))
    
    #例子:找索引1
    name='我的名字是刘德华'
    print(name.find(''))
    
    #例子:找索引2
    name='我的名字是刘德华'
    print(name.index(''))
    
    #例子:模式字符串format_map
    name='my name is {name},i am {year} old'
    print(name.format_map({'name':'andy','year':52}))
    
    #例子:判断英文和数字,不包含特殊字符
    效果:True
    name='abc123'
    print(name.isalnum())
    
    #例子:判断纯英文
    name='abc'
    print(name.isalpha())
    
    #例子:判断整数
    print('2541'.isdigit())  #True
    print('-9'.isdigit())   #False
    
    #例子:判断纯数字
    print('123'.isnumeric()) #True
    print('10.2'.isnumeric()) #False
    
    #例子:判断是否合法的变量名
    print('abc'.isidentifier())
    
    #例子:判断小写
    print('abc'.islower()) #True
    print('Abc'.islower()) #False
    
    #例子:判断大写
    print('abc'.isupper()) #False
    print('Abc'.isupper()) #False
    print('ABC'.isupper()) #True
    
    #例子:判断是否首字母大写
    print('Andy Is Name'.istitle()) #True
    print('Andy is Name'.istitle()) #False
    
    #例子:列表变字符串
    name_list=['andy','alex','hui']
    print(''.join(name_list)) #andyalexhui
    print(','.join(name_list)) #andy,alex,hui
    
    #例子:ljust,rjust
    print('abc'.ljust(50,'-')) #50个 不够在右边加-
    print('abc'.rjust(50,'-')) #50个 不够在左边加-
    
    #例子:大小写转换
    print('abc'.upper())
    print('ABC'.lower())
    
    #例子:去空格回车
    print('  abc  '.strip()) #去两边
    print('  abc  '.lstrip()) #去左边
    print('  abc  '.rstrip()) #去右边
    
    #例子:自定义加密解密
    p_en=str.maketrans('abcdefghijklm','~!@#$%^&*()_+') #加密表
    p_de=str.maketrans('~!@#$%^&*()_+','abcdefghijklm') #解密表
    print('defklmabcd'.translate(p_en)) #加密
    print('#$%)_+~!@#'.translate(p_de)) #解密
    
    #例子:replace替换
    print('alex li'.replace('l', 'L'))
    print('alex li'.replace('l', 'L',1))
    
    #例子:切隔
    print('alex li'.split())
    print('alex+li'.split('+'))
    
    #例子:字符串中大写转小写,小写转大写
    print('alex ABCDEFG li'.swapcase())
    
    例子:格式化字符串方法1
    name=input('name:')
    age=input('age:')
    sex=input('sex:')
    address=input('address:')
    info='-----info of %s-----------
     name:%s 
     age:%s 
     sex:%s 
     address:%s '%(name,name,age,sex,address)
    print(info)
    
    例子:格式化字符串方法2
    name=input('name:')
    age=input('age:')
    sex=input('sex:')
    address=input('address:')
    info='-----info of {0}-----------
     name:{0} 
     age:{1} 
     sex:{2} 
     address:{3} '.format(name,age,sex,address)
    print(info)
    
    例子:格式化字符串方法3
    name=input('name:')
    age=input('age:')
    sex=input('sex:')
    address=input('address:')
    info='-----info of {_name}-----------
     name:{_name} 
     age:{_age} 
     sex:{_sex} 
     address:{_address} '.format(_name=name,_age=age,_sex=sex,_address=address)
    print(info)
    
    
    例子:长度
    abc="123456789"
    print(len(abc))
    
    例子:切片前5
    abc="123456789"
    print(abc[0:5]) #开始位包括,结束位不包括
    
    例子:python3.0字符串转二进制和二进制转字符串  python3.0字符串默认为unincode
    abc="你好"
    abc_2=abc.encode(encoding='utf_8') #字符串转二进制
    print(abc_2)
    ttt=abc_2.decode('utf-8') #二进制转字符串
    print(ttt)
    
    例子:字符串转二进制--2
    a='国家'
    print(bytes(a,encoding='utf-8'))
    
    
    例子utf8转gbk,python2.7 默认字符串为assic码
    # -*- coding: utf-8 -*-    这个是文件编码
    abc_utf8="你好"
    abc_unicode=abc_utf8.decode('utf_8') #转unicode
    abc_gbk=abc_unicode.encode('gbk') #unicode 转 gbk
    print(abc_gbk)
    
    #例子字符串打印颜色
    # Python中字符串颜色
    # 格式:033[显示方式;前景色;背景色m
    #
    # 说明:
    # 前景色            背景色           颜色
    # ---------------------------------------
    # 30                40              黑色
    # 31                41              红色
    # 32                42              绿色
    # 33                43              黄色
    # 34                44              蓝色
    # 35                45              紫红色
    # 36                46              青蓝色
    # 37                47              白色
    # 显示方式           意义
    # -------------------------
    # 0                终端默认设置
    # 1                高亮显示
    # 4                使用下划线
    # 5                闪烁
    # 7                反白显示
    # 8                不可见
    print('33[5;33;44m this is test33[0m')
    '''

    例子变量

    '''例子变量
    name="韩孝辉"
    print("my name is %s,%s" %(name,"哈哈") )
    
    例子:删除变量
    name="韩孝辉"
    print("my name is %s,%s" %(name,"哈哈") )
    del name
    print(name)
    
    例子:全局变量和局部变量
    描述 :
    全局与局部变量
    
    在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。
    全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。
    当全局变量与局部变量同名时:
    在定义局部变量的子程序内,局部变量起作用;在其它地方全局变量起作用。
    
    
    name='alex' #全局变量
    def test():
        name='fun in name'  #局部变量, 函数里是不能修改string int ...全局变量的, list ...是可以修改的
        print(name)
    
    test()
    print(name)
    
    例子:函数内 修改全局变量
    name='alex'
    def test():
        global name
        name='fun in name'
        print(name)
    
    test()
    print(name)
    
    #例子,多变量赋值,左右两边要相称,不然会出错
    
    a,b=0,1  #等号右边相当于元组
    a,b=b,a+b  #这步相当于  t=(b,a+b)  a=t[0]  b=t[1]
    print(a,b)
    
    '''

     例子:列表

    '''例子:列表
    例子:列表切片,中间切
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    print(names[names.index('刘德华'):names.index('孙燕姿')])
    
    例子:列表取值,正取  索引从0开始
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    print(names[0])
    
    例子:列表取值,反取   索引从-1开始
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    print(names[-3])
    
    例子:列表取值,后三位
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    print(names[-3:])
    
    例子:列表取值,前三位
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    print(names[:3])
    
    例子:切片设置步长
    l1=[0,1,2,3,4,5,6,7,8,9,10]
    print(l1[0:-1:2])  #从0到结束   2为步长 
    
    例子:追加,添加到最后面
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names.append("abc")
    print(names)
    
    例子:插入指定位置前面
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names.insert(names.index('刘德华'),"abc")
    print(names)
    
    例子:插入指定位置后面
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names.insert(names.index('刘德华')+1,"abc")
    print(names)
    
    例子:替换1
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names[names.index('王五')]='123'
    print(names)
    
    
    
    例子:删除1
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names.remove('王五')
    print(names)
    
    例子:删除2
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    del names[names.index('张三')]
    print(names)
    
    例子:删掉最后一个,pop()方法是给索引删除,默认是最后一个
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names.pop()
    print(names)
    
    例子:删掉第三个,pop()方法是给索引删除,默认是最后一个
    names=['张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    names.pop(3)
    print(names)
    
    例子:统计数量
    names=['刘德华','张三','李四','王五','赵六','刘德华','张学友','梁朝伟','孙燕姿']
    print(names.count('刘德华'))
    
    例子:排序
    soce=[8,4,6,0,10]
    soce.sort()
    print(soce)
    
    例子:反转
    soce=[8,4,6,0,10]
    soce.sort()
    print(soce)
    soce.reverse()
    print(soce)
    
    例子:浅复制,注意:只复制一层列表,如果列表里有列表。复制的是第二个列表的内存地址
    names=['刘德华','张三','李四','王五',['alex','abc'],'赵六','刘德华','张学友','梁朝伟','孙燕姿']
    name2=names.copy()
    names[0]='change刘德华'
    names[4][0]='ALEX'
    print(names)
    print(name2)
    
    例子:深复制,完全独立的
    import copy
    names=['刘德华','张三','李四','王五',['alex','abc'],'赵六','刘德华','张学友','梁朝伟','孙燕姿']
    name2=copy.deepcopy(names)
    names[0]='change刘德华'
    names[4][0]='ALEX'
    print(names)
    print(name2)
    
    
    例子:合并两个列表
    l1=['a','b','c']
    l2=[1,2,3,4]
    l1.extend(l2)
    print(l1)
    
    例子:循环列表,带索引
    produce_list=[
        ('苹果手机',5888),
        ('三星手机',4999),
        ('华为手机',3888),
        ('苹果数据线',200),
        ('武侠小说',50),
        ('自行车',500)
        ]
    
    for index,item in enumerate(produce_list):
        print(index,item)
    
    例子:列表生成式_快速生成列表
    #方法1:
    a=[ x*2 for x in range(1,11)]
    print(a)
    
    #方法2:#列表里的元素都*2
    b=map(lambda x:x*2, range(1,11))
    print(b)
    for i in b:
        print(i)
    
    #方法3:
    li=range(10)
    print(li)
    for i in li:
        print(i)
    
    '''

     例子元组

    '''例子:元组
    
    #说明,元组不能更改。相当于只读列表
    
    例子:创建元组
    names=('刘德华','张学友','郭富城','黎明')
    print(names)
    
    例子:统计
    names=('刘德华','张学友','郭富城','黎明')
    print(names.count('张学友'))
    
    例子:获取值的索引 
    names=('刘德华','张学友','郭富城','黎明')
    print(names.choice('郭富城'))
    print(names[2])
    '''

     例子字典

    '''例子字典
    
    描述:字典是无序的,key尽量不要用中文,key是唯一的天生去重
    
    #例子:查找1,key不存在会出错
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    print(info['stu1'])
    
    #例子:查找2,key不存在不会出错
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    print(info.get('stu1'))
    
    #例子:修改和添加。
    #注意:如果key存在是修改,不存在为添加
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    info['stu1']='andy' #存在为修改
    print(info)
    info['stu5']='孙燕姿' #不存在为添加
    print(info)
    
    #例子:删除1
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    del info['stu4']
    print(info)
    
    #例子:删除2
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    info.pop('stu4')
    print(info)
    
    #例子:删除3,随机删除
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    info.popitem()
    print(info)
    
    #例子:判断key是否存在
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'stu3':'郭富城',
        'stu4':'黎明',
    }
    print('stu1' in info)
    
    #例子:多级嵌套
    info={
        'stu1':{
            'name':'刘德华',
            'age':50,
            'desc':['歌神','影帝','不老男神']
        },
        'stu2':{
            'name':'张学友',
            'age':52,
            'desc':['歌神','多情','有磁性']
        },
    }
    info.get('stu1').get('desc')[2]='已经老了'
    print(info)
    
    #例子:获取到所有key并循环打印
    info={
        'stu1':{
            'name':'刘德华',
            'age':50,
            'desc':['歌神','影帝','不老男神']
        },
        'stu2':{
            'name':'张学友',
            'age':52,
            'desc':['歌神','多情','有磁性']
        },
    }
    keys=info.keys()
    for index,key in enumerate(keys):
        print(index,key)
    
    #例子:获取到所有value并循环打印   
    info={
        'stu1':{
            'name':'刘德华',
            'age':50,
            'desc':['歌神','影帝','不老男神']
        },
        'stu2':{
            'name':'张学友',
            'age':52,
            'desc':['歌神','多情','有磁性']
        },
    }
    values=info.values()
    for index,value in enumerate(values):
        print(index,value)
        
    #例子:setdefault.在字典里找key,如果存不则什么都不做。不存在就添加一个
    info={
        'stu1':{
            'name':'刘德华',
            'age':50,
            'desc':['歌神','影帝','不老男神']
        },
        'stu2':{
            'name':'张学友',
            'age':52,
            'desc':['歌神','多情','有磁性']
        },
    }
    info.setdefault('stu1',['abc','123'])
    print(info)
    
    #例子:合并字典,如果存在相同的key就修改,不存在的key就添加
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
    }
    b={
        'stu1':'曾经拥有',
        'stu2':'张学友',
        1:2,
        3:4,
    }
    info.update(b)
    print(info)
    
    #例子:dict.items(),返回一个列表。列表里有多个元组,每个元组就是字典的key,value
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'key3':{
            'name':'abc',
            'age':55,
        },
    }
    
    print(info.items())
    
    #例子:循环字典1,建议用这种,效率高
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'key3':{
            'name':'abc',
            'age':55,
        },
    }
    for i in info:
        print(i,info.get(i))
        
    #例子:循环字典2,效率低,有个把字典转为元组的过程
    info={
        'stu1':'刘德华',
        'stu2':'张学友',
        'key3':{
            'name':'abc',
            'age':55,
        },
    }
    for k,v in info.items():
        print(k,v)
    
    #例子字典的排序
    d={
        2:11,
        6:8,
        -4:3
    }
    print(sorted(d.items()))  #按key排序
    print(sorted(d.items(),key=lambda x:x[1])) #按值排序
    
    '''

     例子集合

    #描述:集合是无序的
    a = t | s          # t 和 s的并集
    b = t & s          # t 和 s的交集
    c = t – s          # 求差集(项在t中,但不在s中)
    d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)
    
    #创建集合
    set_1=set([0,1,2,3,0])
    print(set_1,type(set_1))
    
    #循环集合
    set_1=set([0,1,2,3,0])
    print(set_1,type(set_1))
    for item in set_1:
        print(item)
    
    #交集。取出两个集合中相同的
    set_1=set([1,2,3,4,5])
    set_2=set([4,5,6,7,8,9])
    same_set=set_1.intersection(set_2)
    print(same_set)
    
    #并集,去掉两个集合中相同的
    set_1=set([1,2,3,4,5])
    set_2=set([4,5,6,7,8,9])
    union_set=set_1.union(set_2)
    print(union_set)
    
    #差集 求出 in list_1 but not in list_2
    set_1=set([1,2,3,4,5])
    set_2=set([4,5,6,7,8,9])
    diff_set=set_1.difference(set_2)
    print(diff_set)
    
    #判断是否是子集。
    set_1=set([1,2,3,4,5])
    set_2=set([1,2,3,4,5,6,7,8,9])
    print(set_1.issubset(set_2))  #set_1里的值,set_2是否都有
    
    #判断是否是父集
    set_1=set([1,2,3,4,5])
    set_2=set([1,2,3,4,5,6,7,8,9])
    print(set_2.issuperset(set_1))  #set_2 是否包含set_1
    
    #对称差集,就是把列表1比列表2多的,列表2比列表1多的  都取出来
    set_1=set([1,2,3,4,5,0,10])
    set_2=set([1,2,3,4,5,6,7,8,9])
    print(set_2.symmetric_difference(set_1))
    
    #判断是否有交集,没有交集返回true
    set_1=set([1,2,3])
    set_2=set([6,7,8,9])
    print(set_1.isdisjoint(set_2))
    
    #例子添加一项
    set_1=set([1,2,3])
    set_1.add(4)
    print(set_1)
    
    #例子添加多项
    set_1=set([1,2,3])
    set_1.update([4,5,6])
    print(set_1)
    
    #例子删除1,此方法删除不存在的会报错
    set_1=set([1,2,3])
    set_1.remove(1)
    set_1.
    print(set_1)
    
    #例子删除2,删除不存在的不会报错
    set_1=set([1,2,3])
    set_1.discard(1)
    print(set_1)
    
    #随机删除一项
    set_1=set([1,2,3])
    print(set_1.pop())  #返回的是删除项
    print(set_1)
    
    #求长度
    set_1=set([1,2,3])
    print(len(set_1))
    
    #测试 item 是否是set的成员,取返是not in
    set_1=set([1,2,3])
    print(3 in set_1)
    
    #浅复制
    set_1=set([1,2,3])
    set_2=set_1.copy()
    print(set_2)

    常用模块

    sys模块(python ceshi.py  1  2   3  程序传参)

    '''
    #!usr/bin/python
    # -*- coding: utf-8 -*- 
    
    '''
    Created on 2017年5月9日
    @author: Administrator
    '''
    
    import sys
    print(sys.argv)           #命令行参数List,第一个元素是程序本身路径(例子, python ceshi.py  arg1  arg2)
    sys.exit(n)        退出程序,正常退出时exit(0)
    print(sys.version)        获取Python解释程序的版本信息
    print(sys.maxint)         最大的Int值
    print(sys.path)           返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
    print(sys.platform)       返回操作系统平台名称
    '''
  • 相关阅读:
    如何彻底卸载Oracle11g
    Oracle 11g的安装
    python 循环队列的实现
    numpy模块学习笔记
    Python 进程之间共享数据
    python异步加协程获取比特币市场信息
    MySQL中, 如何查询某一天, 某一月, 某一年的数据.
    js获取时间
    nodejs爬虫笔记(五)---利用nightmare模拟点击下一页
    nodejs爬虫笔记(四)---利用nightmare解决加载更多问题
  • 原文地址:https://www.cnblogs.com/hanxiaohui/p/9854491.html
Copyright © 2011-2022 走看看