前面学习的变量数据类型(整型,浮点数,布尔),序列(字符串,列表,元祖,字典,集合)

,可以看做是数据的组织方式。数据可以看做是“砖块”

流程控制语句是代码的组织方式,可以看做是“混凝土

一个完整的程序,离不开“砖块”,也离不开“混凝土”他们的组合,才能让我们创建从小到“一个方法”
大到“操作系统”,这样各种的“软件”

第三十二节  列表-特点-内存分析

      常用的序列结构有:

      字符串,列表,元祖,字典,集合

      一个字符串是一个字符序列,一个列表是任何元素的序列

第三十三节  创建列表

      这里的range(开始,结束,步长)这里的range是用逗号隔开的

      四种方法  创建   列表推导式    range放在list中会自己迭代

      好像都会自己迭代喔,list

      list()  这不就是转成列表吗  转成列表对象

第三十四节   插入的时候,会涉及大量的拷贝  效率太低了  所以

       一般我们在尾部添加   五中添加方法  append,insert,extend,乘法

       运算符

第三十五节  元素删除的三种方式,本质是数组拷贝

      del a[1] 无返回值  pop(可以选择索引)返回删除元素  默认最后一个

      a.remove(20)删除首次出现的,不存在抛出异常

      删除和增加都是一样的道理的  都是拷贝移动位置的

第三十六节    元素访问   下标  次数统计  成员资格判断   in     count也可以的

       超过索引范围会报错的  a.index(20,3,5)

       a.count()   len()

第三十七节    切片slice操作

      怎么记住切片的负数呢,一样的只是从后面开始数,他是从负一开始的的

      数到第一个参数,然后又往回数第二个参数,还是不要包含第二个参数 

      只有步长为负数的时候,结果才是倒序的  -2怎么办   就是倒序的步长为2

      起始小于终止时会返回空[]

第三十八  列表排序 逆序    max min  sum

     id打印内存地址    Node 就是没有返回值呀

     sorted()是有返回值的    三种修改原列表,不新建列表的排序

     random.shuffle   a.sort(reverse = True)  是没有返回值的

     不修改的有  sorted  reversed

第三十九  二维列表    表格数据的存储和读取

     用于表格的多吧      到此列表字符串看完  有了点低了  这应该比以前更有印象了

第四十节   创建的两种方式

     元祖与数组的差别:

列表属亍可发序列,可以仸意修改列表中癿元素。元组属亍丌可发序列,丌能修改元组中癿
元素。因此,元组没有增加元素、修改元素、初除元素相兰癿方法。我们叧需要学习元组癿创建和初除,元组中元素癿讵问和计数即可

      元祖建好之后就不能动了,插入什么的都不行

      创建方法  a =()   a = tuple("a,b,c")

      和数组一样的,都是可以传入可迭代对象,然后会迭代出来,生成元祖

      删除元祖  del a

第四十一节   元素访问,计数  切片   

      访问和切片跟列表是一样的   都是[]    排序这个不论你sorted()传的是列表还是

      元祖   都会生成一个新的列表    zip  压缩

第四十二节    生成器推导式创建元祖

       使用的是小括号   推导生成的是一个生成器对象

       通过这个转化成列表或者元祖   生成器对象的__next__()

       只能遍历一次   用__next__()挨个去移动指针   for  in  就是指针的移动

       整型,字符串也是不可变的

第四十三节    字典

      键值对,应该要注意和json的关系   还是一样字符串一定要记得“”

      然后键和值是通过  :  这个隔开的

      列表,元祖,字典,最基础的创建方式 { }   a = dict()这是括号

      是括号的  因为要调用方法   底层也是数组   到底是逗号,分号还是等于号

      有意思啊  字典的创建有这么多

第四十四节  元素的访问,键 值访问

      不存在,会抛异常,  而a.get('sex','yigeren')  就比较灵活

      所有键值对,值,键,的表示   遍历字典  a.items()

      检测键是否在字典中

第四十五节   元素的添加,修改,删除

      字典无序可变序列,因此没有第一元素和最后元素的概念

       a.update(b)     del(a['name'])  a.pop('age')  返回值的

      存在好像都会覆盖的    a.clear

第四十六节   序列解包用于列表元祖字典

      序列解包可以用于元祖,列表,字典。序列解包可以让我们

      方便的对多个变量赋值     序列解包    键值对输出也可以这样

      a[0] a[1]

第四十七节   列表和字典综合嵌套

      任何数据都可以用表格来表示

      

第四十八节   核心底层原理  内存分析  存储键值对过程

      

字典对象的核心是散列表   散列表是一个稀疏数组

      bucket  表元  桶     如何把一个k对应成一个索引数字

      用bin(hash("name"))  求散列值  以此去最右边的三个数的十进制

      数字中有值之后就下一个三个数  这是假设字典创建的之后数组为八

      还会自动扩容大于三分之二时

第四十九节   ------------------------ ---------- -查找对象过程

第五十节    集合创建删除,交集并集差集运算

     集合是无序可变,元素不能重复,实际山底层是字典实现,集合的所有元素

     都是字典中的“键对象”,因此不能重复的且唯一的

      

2019.4.14 python基础30的更多相关文章

  1. 2019.04.13 python基础

    第一节    主要讲python背景  没什么要注意的  了解记住概念就好 python官网  python.org  自带shell  可以运行python代码 在IDLE中怎么运行代码 新建文本  ...

  2. 2019.04.16 python基础50

    第五十一节  pycharm安装 https://www.jetbrains.com/pycharm/download/#section=windows 这是另一个叫jetbrains公司开发的 默认 ...

  3. 2019/1/15 python基础学习

    一.列表切片a.快捷方式:spam[:3] ----表示从列表开始到3位置结束:拿到的内容是0,1,2没有3位置上的数字.spam[3:]b.列表的拼接.复制: 拼接:使用 + [1,2,3]+['A ...

  4. 1.14 Python基础知识 - 文件操作

    应用程序往往需要从磁盘文件中读取数据,或者把数据存储到磁盘中文件里,以持久的保存数据.文件可以看作是数据的集合,文件的输入与输出通过流来实现.流有5种基本的操作:打开.读取.写入.改变当前位置和关闭. ...

  5. python基础(30):黏包、socket的其他方法

    1. 黏包 1.1 黏包现象 让我们基于tcp先制作一个远程执行命令的程序(命令ls -l ; lllllll ; pwd) 同时执行多条命令之后,得到的结果很可能只有一部分,在执行其他命令的时候又接 ...

  6. 十四. Python基础(14)--递归

    十四. Python基础(14)--递归 1 ● 递归(recursion) 概念: recursive functions-functions that call themselves either ...

  7. 【2019.5.19】接口测试及python基础(一)

      一.接口 1.什么是接口: 简单的说,接口就是从数据库获取数据. 2.前端和后端: 2.1前端client: 对于web来说,打开的网页,我们所看到的就是前端,前端语言包括html.JS.CSS: ...

  8. Python基础教程【读书笔记】 - 2016/7/14

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第六波:第2章  列表和元组 [总览]  数据结构,是通过某种方式组织在一起的数据元素的集合,数据元素可以使数字或字符串 ...

  9. python基础(14)-反射&类的内置函数

    反射 几个反射相关的函数可参考python基础(10)-匿名函数&内置函数中2.2.4反射相关 类的一些内置函数 __str__()&__repr__() 重写__str__()函数类 ...

随机推荐

  1. springboot集成mybatis源码分析-mybatis的mapper执行查询时的流程(三)

    例: package com.example.demo.service; import com.example.demo.dao.UserDao; import com.example.demo.do ...

  2. 使用Selenium+ChromeDriver登录微博并且获取cookie

    using OpenQA.Selenium;using OpenQA.Selenium.Chrome; public class GetSinaCookie { private static stri ...

  3. django 第四天

    简单的一对多的页面 实现的页面结果如下 利用正则匹配 1.x系列和2.x系列django的用法不同,....他x的. 关于正则匹配 我一直没能实现,再试试吧 路由分发,尤其是在多个页面的时候 app0 ...

  4. Java Spring Boot VS .NetCore (九) Spring Security vs .NetCore Security

    Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...

  5. OpenSSL 提取 pfx 数字证书公钥与私钥

    由于之前生产环境已经使用了 Identityserver4 用来做授权与认证的服务,而新项目采用 Spring Cloud 微服务体系,一方面 Spring Cloud 官方暂时只支持 OAuth2. ...

  6. OpenCV绘制图像中RGB三个通道的直方图

    一开始是看<OpenCV计算机视觉编程攻略(第2版)>这本书学做直方图,但是书本里说直方图的部分只详细说了黑白图像(单通道)的直方图绘制方法,RGB图像的直方图只说了如何计算,没有说计算完 ...

  7. mysql安装运行(centos)

    http://repo.mysql.com寻找需要的版本 wget -P /opt/downloads http://repo.mysql.com/mysql57-community-release- ...

  8. 编译linux内核前用make menuconfig设置时 Unable to find the ncurses ibraries的解决办法

    今天在更新CentOS或者Ubuntu的内核时,执行make menuconfig可能看如这样的错误: *** Unable to find the ncurses libraries or the ...

  9. python 试题

    1.现有两元祖 (('a'),('b'),('c'),('d') ) ,请使用Python中的匿名函数生成列表 [ {'a':'c'},{'c':'d'}] 答案:v = list(map(lambd ...

  10. 译:Dataiku 白皮书之《在银行和保险行业应用数据科学》

    原文链接:Data Science For Banking & Insurance 如果不能正常访问,请点击备份获取. 在银行和保险行业应用数据科学 互联网巨头和金融技术创业时代的求生和发展 ...