python笔记1

课堂笔记
    标准库无需安装,直接import就可用的库,Python自带
    第三方库,需要下载并且安装才能使用
模块初识
    1、sys模块
        import sys
        print(sys.path)#打印环境变量
        导入模块时,先在当前目录进行查找,再到site-package查找,
        再去全局环境变量查找,如果都没有导入的模块名称,则报错
        print(sys.argv)#打印脚本相对路径
        print(sys.argv[2])#获取用户传入的第三个参数
        
    2、os模块
        import os
        os.system("dir")#执行命令不保存结果
        cmd_res=os.popen("dir").read()#执行命令后可以保存结果
        os.mkdir("test_dir")#创建目录
    3、.pyc是个什么东东
        Python是一门先编译后解释的语言,执行时先查找pyc文件,存在直接调用,
        不存在则将编译结果保存到内存中,程序运行结束后,保存到pyc文件中
    4、数据类型
        4-1数字
            整型、长整型、浮点型、complex复数
            长整型:Python的长整型没有指定位宽,但也不是无限大
            科学计数法:50000=5E4=5*10**4
        4-2布尔值
            1或者0
            True或者False
        4-3字符串
        4-4bytes数据类型
            编码转换(string<-->bytes)
            encode('utf-8')编码成2进制,编码之前为utf-8
            decode('utf-8')用utf-8解码
            for example:
                编码:'aa'.encode('utf-8')
                    b'\xe2\....'
                解码:b'\xe2\....'.decode('utf-8')
                    'aa'
    5、三元运算符
    6、进制
        16进制表示方法,后缀H或者前缀ox
    7、列表
        name=['aa','bb','cc','dd']
        name[-2:]#从倒数第二个取出所有
        name[:2]#从第一个取到下标为2所有元素
        增加
            name.append("ee") #追加
            name.insert(2,"ff") #将ff插入到下标为1的后面
        修改
            name[2]='gg'
        删除
            name.remove('gg')#直接删除指定元素
            del name[1]#按下标删除
            name.pop()#不指定参数弹出最后一个
            name.pop(1)#弹出下标为1的元素
        查找元素位置
            name.index('aa')
        清空列表
            name.clear()
        排序
            name.sort()#默认ASCII排序
            name.extend(列表)#合并列表
        import copy
            浅copy(copy内存地址)与深copy(完全独立copy一份)
            copy.copy()与copy.deepcopy()
        列表循环
            for i in list:
                print(i)
        步长切片        
            print(name[0:-1:2])#跳着切片,步长2
        
    8、元组
        list=['a','b','c']
        for i in enumerate(list):
            print(i)
        #打印列表和下标值
            (0,a)
            (1,b)
            (2,c)
    9、字符串
        name='colby'
        name.capitalize#首字母大写
            >>Colby
        name.center(50,'-')#打印50个字符,长度不够两端用'-'补齐
        name.ljust(50,'-')#打印50个字符,长度不够左边用'-'补齐
        name.rjust(50,'-')#打印50个字符,长度不够右边用'-'补齐
            >>---colby---
        name.endwith('by')#判断字符以什么结尾
            >>True
        name.expand()#tab键转成多少个字符
        name.find('y')#返回字符所在索引
            >>4
        name.rfind('c')#找到最右边的指定字符
        >>name='colby{name},{age}'
            name.format(name='colby',age=22)
            name.format_map({'name':'colby','age':22})
            传入的值会默认带到name变量中去
        name.isalnum()#判断是否为阿拉伯数字和字符
        name.isalpha()#判断是否为纯英文字符
        name.isdecimal()#判断是十进制
        name.isdigit()#判断是否为整数
        name.isidentifier()#判断是否是一个合法的标识符变量
        name.islower()#判断是否为小写
        name.isupper()#判断是否为大写
        name.isnumeric()#判断是否为整数
        join的用法
            print(','.join(['a','b','c'])
            >>a,b,c  #将列表转成字符,以逗号分隔
        name.lower()#转成小写
        name.upper()#转成大写
        name.strip()#去掉两端换行符
        name.lstrip()#去掉左边换行符
        name.rstrip()#去掉右边换行符
        随机密码-加密解密(可以给一串乱七八糟的字符用于加密)
        p=str.maketrans('abcdefg','1234567')#将abcdefg映射成1234567
            print('colby'.translate(p)
            >>3ol2y
        name.replace('c','C')#字符串替换
        name.split(',')#字符串按照指定字符分隔成列表
        name.splitlines()#按换行符分隔,Linux与windows方法一样
        name.swapcase()#大小写互换
        name.title()#驼峰
        name.zfill()#用0补齐
    10、字典
        增加
            info['age']=10
        删除
            del info.get("name")#安全删除
        修改
            info['age']=10
        查找
            info.get("name")#存在返回,不存在为None
            info['name']
        合并更新
            b={'name':'colby','age':'29','height':'75Kg'}
            info.update()#存在就更新,不存在就新增
        info.values()#打印所有值
        info.keys()#打印所键
        info.setdefault('name','age')#存在就显示,不存在就新增一个值
        多级字典嵌套操作
            info['person']['age'][1]=90
        info.item()#将字段转成列表
        initDict=dict.fromkeys([6,7,8],[1,{"name":"colby"},444])
            #字典初始化
            #值引用的同一个内存地址,注意,修改一个等于修改All
        字典的循环
            #高效的写法,建议使用
            for i in info:
                print(i,info[i])
            #效率低,不建议使用
            for k,v in info.items():
                print(k,v)
    11、集合set
        交集 & intersection 返回集合
        并集 | union 返回集合
        差集 - difference 返回集合
        对称差集 ^ symmetric_difference 不同时存在两个集合中
        子集issubset True或者False
        父集isupperset True或者False
        集合添加一个元素 add
        集合添加多个元素 update
        集合删除元素 remove
            字符串、列表、字典、集合判断字符是否存在里边
            for in str/list/set/dict:
                print(i)
        
            
            
            
            
            
        

 

posted @ 2018-03-25 23:55  道生一_三生万物  阅读(186)  评论(0编辑  收藏  举报
returnTop $(function(){ $('#returnTop').click(function () { $('html,body').animate({ scrollTop: '0px' }, 800); returnfalse; }); });