Python入门到精通自学笔记1

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)

猜你喜欢

转载自blog.csdn.net/zxcv321zxcv/article/details/112797254