• Python基础知识从hello world 开始(第三天)


    昨天休息了一天。 今天继续学习


     一.字典类型操作

    这里python的字典其实就是java的map集合。只是换了一个名字。

    用于保存键值对的数据也就是(key-value)


     1.1 语法

    1. # 字典类型
    2. zidian = {'name':'代码人','age':'19'}
    3. #空字典
    4. zidian2 = {}
    5. dict3 = dict()

    1.2使用 添加

    1. # 字典类型
    2. zidian = {'name':'代码人','age':'19'}
    3. print(zidian)
    4. # 如果有就替换值
    5. zidian['name'] = 'lanlan'
    6. print(zidian)
    7. # 新增一个键值对
    8. zidian['id'] = '1'
    9. print(zidian)


     1.3删除

    1. # 字典
    2. dels = {'name':'代码人','age':'19'}
    3. # 删除指定键
    4. del dels['name']
    5. print(dels)
    6. # 清空字典
    7. dels.clear()
    8. print(dels)


     1.4修改

    这里有一点刚刚的新增语法和这个一样,语法

    字典name[key]=值

    如果有key修改没有新增一个

    1. # 字典
    2. dels = {'name':'代码人','age':'19'}
    3. # 修改指定键
    4. dels['name']='lamlamddaimar'
    5. print(dels)


    1.5各样查询

    1. # 字典
    2. dels2 = {'name':'代码人','age':'19'}
    3. # 查找指定键
    4. print(dels['name'])
    5. # 查找不存在的key报错
    6. # print(dels2['id'])
    7. print(dels2.get('name'))
    8. print(dels2.get('id',120))
    9. # 获取所有的key
    10. print(dels2.keys())
    11. # 获取所有value
    12. print(dels2.values())
    13. # 将你的键值对分成元组
    14. print(dels2.items())


     1.6循环遍历键值

          键

    1. # 字典
    2. dels2 = {'name':'代码人','age':'19'}
    3. for key in dels2.keys():
    4. print(key)

     值

    1. # 字典
    2. dels2 = {'name':'代码人','age':'19'}
    3. for key in dels2.values():
    4. print(key)

     

    键和值

    1. # 字典
    2. dels2 = {'name':'代码人','age':'19'}
    3. for key in dels2.items():
    4. print(key)

     拆包

    1. # 字典
    2. dels = {'name':'代码人','age':'19'}
    3. for key, va in dels2.items():
    4. print(f'键{key}{va}')


    二.集合

    集合有去重功能,所以相同的在一起只显示一个

    而且顺序还很迷

    2.1创建集合

    1. # 创建集合
    2. s1 = {1,2,3,4,5,6}
    3. print(s1)
    4. s2 = {1,3,2,4,5,6}
    5. print(s1)
    6. s3 = set('ABCDERF')
    7. print(s3)
    8. #创建空集合
    9. s4=set()

     


     2.2 添加

    这里有两个添加,一个是add

    一个是update使用方法如下,update两个一个会拆开放进去,一个直接放进去

    1. s2 = {1,3,2,4,5,6}
    2. s2.add(12)
    3. s2.update('lui')
    4. s2.update([123],[567])
    5. print(


     2.3删除

    两个删除如果集合里面没有值remove报错

    discard不报错

    1. s3 = {1,3,2,4,5,6}
    2. s3.remove(2)
    3. s3.discard(2)
    4. print(s3)


     2.4集合查找

    很简单in在

    not in 不在 返回布尔值

    1. s3 = {1,3,2,4,5,6}
    2. s3.remove(2)
    3. s3.discard(2)
    4. print(2 in s3)
    5. print(2 not in s3)


     三.公共操作

    什么是公共操作就是前面哪一些数据类型都支持的操作

     3.1运算符

     加号+合并

    1. str1 = 'aa'
    2. str2 = 'nn'
    3. list1 = [1,2]
    4. list2 = [10,20]
    5. t1 = (1,2)
    6. t2 = (10,20)
    7. dict1 = {'name':'python'}
    8. dict2 = {'age':19}
    9. # *合并
    10. print(str1 +str2)
    11. print(list1 +list2)
    12. print(t1+t2)

     

     *复制

    1. str1 = 'aa'
    2. str2 = 'nn'
    3. list1 = [1,2]
    4. list2 = [10,20]
    5. t1 = (1,2)
    6. t2 = (10,20)
    7. dict1 = {'name':'python'}
    8. dict2 = {'age':19}
    9. print(str1 * 5)
    10. print(list1 *5 )
    11. print(t2 * 5)

     

     in and not in

    字典就是在画面加那两个函数

    1. str1 = 'aa'
    2. str2 = 'nn'
    3. list1 = [1,2]
    4. list2 = [10,20]
    5. t1 = (1,2)
    6. t2 = (10,20)
    7. dict1 = {'name':'python'}
    8. dict2 = {'age':19}
    9. print('a' in str1)
    10. print(100 not in list2)
    11. print('name' in dict1)
    12. print('name' in dict1.values() )


     3.2公共方法

    一些类型都可以使用的方法

     

     len 统计下标 都差不多我这里只写一个

    1. str1 = '123123123'
    2. print(len(str1))

     删除 del /del()  删除之后为空输出所以报错

    1. str1 = '123123123'
    2. del str1
    3. print(str1)

     

     查看元素里面最大值最小值

    1. str1 = '123123123'
    2. print(min(str1))
    3. print(max(str1))

     

     range生成几到几之间的数提供循环遍历

    1. for i in range(1,10):
    2. print(i)

     

    enumerate感觉嘎嘎好用

    1. list = ['a','s','c','e']
    2. for i,char in enumerate(list):
    3. print(f'下标{i},值{char}')


     四.数据类型转换

    三个函数

    1 tuple() 将一个序列转换成元组

    2list()将一个序列转换成列表

    3set()将序列转换成集合


     4.1tuple

    1. list1 = [10,20,30]
    2. s1 = {100,200,300}
    3. print(tuple(list1))
    4. print(tuple(s1))

     


    4.2list

    1. t1 = ('a','b','c')
    2. s1 = {100,200,300}
    3. print(list(t1))
    4. print(list(s1))


     4.3set

    1. t1 = ('a','b','c')
    2. s1 = [100,200,300]
    3. print(set(t1))
    4. print(set(s1))

     


     五.推导式/生成式

    string没有推导式

    就是简化代码使用的分为三个

    • 列表推导式
    • 字典推导式
    • 集合推导式

     5.1列表推导式

    用一个表达式创建一个有规律的列表

    列表里面的数据时有规律的

     创建一个0-10的列表)(老方法) 

     

     推导式

    1. list1 = [i for i in range(10)]
    2. print(list1)

     


     5.2带if的写法(基数偶数)

    1. list1 = [i for i in range(0,10,2)]
    2. print(list1)

     


     5.3多重for循环推导式

    1. list1 = [(i,j) for i in range(0,10,2) for j in range(3)]
    2. print(list1)

     


     5.4字典推导式

    如下字典推导式就是将两个list合成一个字典

     

    1. list1 = {(i,i**2) for i in range(0,10,2)}
    2. print(list1)

     


     

     合并两个list变成一个字典

    1. list1 =['name','age','gender']
    2. list2= ['tpm','12','man']
    3. dict1 = {list1[i] : list2[i] for i in range(len(list1))}
    4. print(dict1)


     5.5提取目标数

    感觉用处不打不详细敲了

     

     


    5.6集合推导式

     没有用看一下


     六函数

    有java基础比较简单

    1. def diyig1(int):
    2. print(int)
    3. diyig1(123)

     


     6.1函数传值

    1. def tishi(q,d):
    2. print(f'输入{q+d}')
    3. tishi(1,4)

     


     6.2返回值

    1. def tishi(q,d):
    2. print(f'输入{q+d}')
    3. return '返回值'
    4. print(tishi(1,5))

     


     6.3函数帮助文档

    1. def tishi(q,d):
    2. """我是函数帮助文档
    3. 参数一
    4. """
    5. print(f'输入{q+d}')
    6. return '返回值'
    7. help(tishi)

     

     


    6.4函数调用

    这里和java差不多不难

     

    1. def tishi(q,d):
    2. """我是函数帮助文档
    3. 参数一
    4. """
    5. print(f'输入{q+d}')
    6. return '返回值'
    7. def this2():
    8. print('嵌套使用')
    9. tishi(1,3)
    10. this2()

     

                                 ·                                今天就到这里了

                                                             ---------------完结 ----------------

     

  • 相关阅读:
    蓝屏page_fault_in_nonpaged_area的解决办法
    python基础(Python高级特性(切片、列表生成式)、字符串的正则表达式、函数、模块、Python常用内置函数、错误处理)培训讲义
    泛型(工作能用到的)
    拆分文字后再分组去重
    包 package
    第六章 图 四、图的广度优先遍历(BFS算法、广度优先生成树、广度优先生成森林)
    Python基础入门篇【32】--面向对象:装饰器与类的常用装饰器
    vue大型电商项目尚品汇(后台篇)day03
    LVGL库入门教程 - 动画
    【Java】医院智能导诊系统源码:解决患者盲目就诊问题、降低患者挂错号比例
  • 原文地址:https://blog.csdn.net/weixin_65451442/article/details/125582507