第二篇 python进阶

一 数字类型内置方法

类型内置方法(int):
  1. 定义: 可以使用int()方法将纯数字的字符串转换为十进制的整型
  2. 常用操作+内置方法:算术运算+比较运算.
  3. 可变or不可变定义: id不变值可变,即在原值的基础上修改,则为可变数据类型; 值变id也变,即重新申请一个空间放入新值,则为不可变数据类型.
  4. 可变or不可变: 可变数据类型.
浮点型内置方法(float):
  1. 定义: 可以使用float()方法将纯数字的字符串转为浮点型数字.
  2. 常用操作 + 内置方法:算术运算+比较运算.
  3. 存一个值or多个值: 一个值.
  4. 有序or无序: 无有序or无序一说.
  5. 可变or不可变: 不可变数据类型.

二 字符串类型内置方法

  1. 定义: 使用'' '''' """"""包裹的一串字符.

  2. 常用操作+内置方法: 常用操作和内置方法分为优先掌握,需要掌握,其他操作
  3. 优先掌握:

    1.1按索引取值(只可取,不可改变)

    1.2切片(顾头不顾尾,步长)

    1.3长度len

    1.4成员运算in /not in

    1.5移除空白strip(移除用户手抖输入的空格)

    1.6切分split(左边开始切分)

    1.7循环

  4. 需要掌握:

    1.1 lstrip()和rstrip() #去除左边or右边的空格

    1.2 lower()和upper() #小写or 大写

    1.3 startswith()和endswith() #以指定的字符串开始or结束

    1.4 rsplit() #右边开始切分

    1.5 join() #拼接

    1.6 replace() #替换

    1.7 isdigit() #判断是否是数字

  5. 其他操作(**)

    1.1 find|rfind|index|rindex|count
    1.2 center|ljust|rjust|zfill
    1.3 expandtabs
    1.4 captalize|swapcase|title
    1.5 is系列

  6. 可变or不可变:不可变数据类型

三 列表类型内置方法(list)

  1. 定义:[]内可以有多个任意类型的值,逗号分割元素

  2. 常用操作+内置方法: 常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)、其他操作
  3. 优先掌握:

    1.1 按照索引取值(正向取值+反向取值),即可存也可取

    1.2 切片

    1.3 长度len

    1,4 成员运算in和not in

    1.5 追加append

    1.6 删除del

    1.7 循环

  4. 需要掌握:

    1.1 insert #插入,可以按照索引序号选择为准插入

    1.2 pop #默认删除最后一个元素

    1.3 remove #指定删除某一个元素

    1.4 count #计数(计算列表里有多少个相同的)

    1.5 index #索引计数(当前字符在索引里属于第几个)

    1.6 clear #清空列表里的所有元素

    1.7 copy #复制

    1.8 extend #列表末尾追加另一个列表中的多个值

    1.9 reverse #排列顺序倒转

    1.10 sort #使用时列表的元素必须是同类型的,按照ascll码排序

  5. 存一个值or多个值: 多个值

  6. 有序or无序: 有序

  7. 可变or不可变:可变数据类型

四 元组类型内置方法(tuple)

定义:

在()内可以有多个任意类型的值,逗号分割元素;

元组时不可变的列表,即元组的值不可更改,因此元组一般只用于只存不取的需求.因此元组可以被列表取代掉,所以元组相比较列表使用的很少.

常用操作+内置方法:
  1. 优先掌握:

    1.1索引取值

    1.2切片(顾头不顾尾,步长)

    1.3长度len

    1.4成员运算in 和 not in

    1.5循环

    1.6 count

    1.7 index

  2. 存一个值or多个值:多个值

  3. 有序or无序:有序

  4. 可变or不可变:不可变数据类型

元组和列表的区别:

列表可变的原因是: 索引所对应的值的内存地址是可以改变的;

元组不可变得原因是: 索引所对应的值的内存地址是不可改变的,

或则反过来说,只要索引对应值的内存地址没有改变,那么元组始终没有改变的.

五 字典内置方法

定义:{}内用逗号分隔开多个元素,每一个元素都是key:value的形式,value可以是任意数据类型,而key通常应该是字符串类型,但是key必须为不可变类型.
  1. 字典内置方法(dict):

    优先掌握:

    1.1 按key存取值:可存可取

    1.2 长度len

    1.3 成员运算in 和 not in

    1.4 删除del

    1.5 键key(s),值values(),键值对items()

    # dic之键keys()、值values()、键值对items(),python2中取出的是列表(鸡蛋);python3中取出的是元组(鸡)
    dic = {'a': 1, 'b': 2}
    
    print(f"dic.keys(): {dic.keys()}")
    print(f"dic.values(): {dic.values()}")
    print(f"dic.items(): {dic.items()}")
    
    dic.keys(): dict_keys(['a', 'b'])
    dic.values(): dict_values([1, 2])
    dic.items(): dict_items([('a', 1), ('b', 2)])

    1.6 循环

  2. 需要掌握:

    2.1 get(按key获取指定值)

    2.2 update(更新,添加)

    2.3 fromkeys

    2.4 setdfault

  3. 存多个值or 一个值:多个值,值可以是多个类型,key必须是不可变类型,通常应该是不可变类型中的字符串类型.

  4. 有序or无序: 无序

  5. 可变or不可变:可变数据类型

六 集合类型内置方法(self)

定义:{}内用逗号分隔开多个元素,每个元素必须是不可变类型
用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序.
常用操作+内置方法:
  1. 优先掌握

    1.1 长度len

    1.2 成员运算in 和not in

    1.3 | 并集,union

    1.4 & 交集,intersetion

    1.5 - 差集 ,difference

    1.6 ^ 对称差集,symmetric_difference

    1.7 ==

    1.8 父集: >, >= ,issuperset

    1.9 子集: <, <=, issubset

  2. 需要掌握

    2.1 add

    2.2 remove

    2.3 dofference_update

    2.4 discard(丢弃,即使集合里面没有也不会报错,而remove会报错)

    2.5 isdisjoint(集合灭有共同的部分返回true,否则返回false)

  3. 存一个值or多个值:多个值,且值为不可变类型.

  4. 有序or无序:无序

  5. 可变or不可变:不可变数据类型

七 数据类型分类

按存值个数区分

单个值: 数字;字符串

多个值: 列表,元组,字典,集合

按可变不可变区分

可变: 列表,字典,集合

不可变: 数字,字符串,元组

有序无序区分

有序(可按索引取值): 字符串,列表,元组

无序: 字典,集合

按访问类型区分

直接访问: 数字

顺序访问: 字符串,列表,元组

key值访问(映射类型): 字典

第二篇 python进阶的更多相关文章

  1. 第五篇python进阶之深浅拷贝

    目录 第五篇python进阶之深浅拷贝 一.引言 1.1可变 和不可变 二.拷贝(只针对可变数据类型) 三.浅拷贝 四.深拷贝 第五篇python进阶之深浅拷贝 一.引言 1.1可变 和不可变 id不 ...

  2. 第五篇.python进阶

    目录 第五篇.python进阶 1. 异常处理 2. 数字类型内置方法 2.定义: 3.常用操作+内置方法: 4.存一个值or多个值: 5.有序or无序: 6.可变和不可变 1.用途: 2.定义: 3 ...

  3. [转帖]虚拟内存探究 -- 第二篇:Python 字节

    虚拟内存探究 -- 第二篇:Python 字节 http://blog.coderhuo.tech/2017/10/15/Virtual_Memory_python_bytes/ 是真看不懂哦     ...

  4. 第二篇 Python运算符

    1.算术运算符 运算符 描述  +  两个值相加  -  两个值相减  *  两个值相乘  /  两个值相除  %  得到两个数相除的余数  **  x**y得到x的y次幂  //  返回两个数相除商 ...

  5. 第二篇 Python图片处理模块PIL(pillow)

    本篇包含:16.Point    17.Putalpha    18.Putdata    19.Putpalette    20.Putpixel      21.Quantize     22.R ...

  6. 接口测试框架——第二篇-python读取excel文件内容

    今天完善excel_module.py文件,上代码: # coding: utf-8 import xlrd class ReadExcel(): def __init__(self, file_na ...

  7. .Net高阶异常处理第二篇~~ dump进阶之MiniDumpWriter

    dump文件相信有些朋友已经很熟悉了,dump文件的作用在于保存进程运行时的堆栈信息,方便日后排查软件故障,提升软件质量.关于dump分析工具windbg.adplus的文章更多了,如果您还不知道怎么 ...

  8. 第二篇 Python初识别及变量名定义规范

    第一个Python程序 可以打开notepad或者其他文本编辑器,输入:print("Hello Python!"),将文件保存到任意盘符下,后缀名是  .py 两种python程 ...

  9. 【9k字+】第二篇:进阶:掌握 Redis 的一些进阶操作(Linux环境)

    九 Redis 常用配置文件详解 能够合理的查看,以及理解修改配置文件,能帮助我们更好的使用 Redis,下面按照 Redis 配置文件的顺序依次往下讲 1k 和 1kb,1m 和 1mb .1g 和 ...

随机推荐

  1. 【Offer】[59-1] 【滑动窗口的最大值】

    题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 给定一个数组和滑动窗口的大小,请找出所有滑动窗口里的最大值.例如,如果输入数组{2,3,4,2,6,2, 5,1}及滑动窗口的大小3,那 ...

  2. 【LeetCode】435-无重叠区间

    题目描述 给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠. 注意: 可以认为区间的终点总是大于它的起点. 区间 [1,2] 和 [2,3] 的边界相互"接触", ...

  3. 【LeetCode】34-在排序数组中查找元素的第一个和最后一个位置

    题目描述 给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n) 级别. 如果数组中不存在目标值 ...

  4. Django之FBV和CBV的用法

    FBV FBV,即 func base views,函数视图,在视图里使用函数处理请求. 以用户注册代码为例, 使用两个函数完成注册 初级注册代码 def register(request): &qu ...

  5. go 学习笔记之学习函数式编程前不要忘了函数基础

    在编程世界中向来就没有一家独大的编程风格,至少目前还是百家争鸣的春秋战国,除了众所周知的面向对象编程还有日渐流行的函数式编程,当然这也是本系列文章的重点. 越来越多的主流语言在设计的时候几乎无一例外都 ...

  6. Linux 笔记 - 第六章 Linux 磁盘管理

    博客地址:http://www.moonxy.com 一.前言 1.1 硬盘 硬盘一般分为 IDE 硬盘.SCSI 硬盘和 SATA 硬盘.在 Linux 中,IDE 接口的设备被称为 hd,SCSI ...

  7. 快速开始使用spark

    1.版本说明 在spark2.0版本以前,spakr编程接口是RDD(Resilient Distributed Dataset,弹性分布式数据集),spark2.0版本即以上,RDD被Dataset ...

  8. [scikit-learn] 特征二值化

    1.首先造一个测试数据集 #coding:utf-8 import numpy import pandas as pd from sklearn.preprocessing import OneHot ...

  9. mysql重新设置递增值

    alter table table_name AUTO_INCREMENT=value;

  10. Codeforces New Year and Buggy Bot 题解

    主要思路:全排列,然后按输入的字符串走并且判断是否撞墙 注:这样不会TLE,全排列最多24种 Code(C++): #include<bits/stdc++.h> using namesp ...