Python全栈day 05

一、数据类型补充

1. int

  • py2和py3的2种区别

    1. py2有int和long,int的取值范围为-231~231-1,超出范围自动转为long,长整型。
    2. py2的整型除法只保留整数,py3保留所有。
    3. 强制转换:只有''和0转为bool值时为False,其余为True。

2. bool

  • 强制转换

    bool(int), 0转换为False

    bool(str),''转换为False

    bool(list) , []转换为False

    bool(tuple),()转换为False

3. str

  • 独有方法:

    t = " naME "
    t.lower() t.upper() #大小写
    t.split() t.lstrip() t.rstrip() #俩端去空格,左端去空格,右端去空格
    t.replace('','',n) #替换
    t.isdigit() #是否能转为数字
    t.strip() t.rsplit() #分割
    t.startswith('') t.endswith('') #是否以''开头,结尾
    t.format() #字符串格式化
    t.encode() #以制定的编码格式编码字符串 较为重要
    '-5-'.join(t) #循环t的每个字符,把'-5-'当做分割符加入到里面,得到新的字符串
  • 公共功能

    索引/长度len/切片/步长/for循环/删除(无此功能)/修改(无此功能) # str是不可变类型

  • 强制转换:

    print(type(str(["唐开发",'李忠伟'])))    #str   ["唐开发",'李忠伟'],看着像list,其实是字符串
    print(type(["唐开发",'李忠伟'])) #list ["唐开发",'李忠伟']

4. list

  • 独有方法

    t = [11,22,33,44,55,33,66]
    t.append(77) # 在列表后添加上77,列表[11,22,33,44,55,33,66,77]
    t.insert(0,'-11') # 在列表索引位置0,添加'-11'
    t.remove('-11') # 从左到右,删除第一个'-11'
    t.pop(1) # 删除索引位置1的元素,不填默认最后一个元素
    t.clear() #清除列表所有元素
    t.extend([99,88,77,12,23]) # 把[99,88,77,12,23]的元素循环添加到列表t中,也可以是str-
  • 公共功能

    索引/长度len/切片/步长/for循环/删除/修改

    • 删除del

      t = [11,22,33,44,55,33,66]
      del t[0:2] #删除列表t索引0-1的元素,注意,仅仅是删除
      t.pop(2) #可以得到别删除的数据
      deteled = t.pop(2) # 33
    • 修改,通过赋值即可修改,list是可变类型。

  • 强制转换

    t = list('998877456dengyixin')  str
    print(t) # ['9', '9', '8', '8', '7', '7', '4', ······]
    m = ('9', '9', '8', '8', '7') tuple
    print(list(m)) # ['9', '9', '8', '8', '7']

5. tuple

元组tuple是不可变类型,没有独有方法

  • 公共功能

    索引/长度len/切片/步长/for循环/删除(无此功能)/修改(无此功能) # tuple是不可变类型

  • 元组和列表可混合嵌套

  • 强制转换

    t = tuple('998877456dengyixin')  #   str
    m = ['9', '9', '8', '8', '7']
    print(Tuple(m)) # ('9', '9', '8', '8', '7')

6. 转换的重要类型

  • int 和 str 的相互转换

  • 列表和元组的转换,直接转换.list(tuple) tuple(list)

  • bool转换的内容

    只有0 '' [] () {} set() 转换为bool值时为False.

二、新内容

1. Dictionary(字典)

  • 字典是一种可变容器模型,且可存储任意类型对象 ,帮助用户去表示一个事物的信息。各种属性。

  • {}表示,如

    d = {key1 : value1, key2 : value2,键:值 }    #  键值对
    # 键一般是唯一的,如果重复最后的一个键值对会替换前面的。
    # 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组,键不可以是列表和字典。
  • 独有方法

    dict = {'Name': 'deng', 'Age':18, 'Class': 'First'}
    print(dict.keys()) #获取dict中所有键
    print(dict.values()) ##获取dict中所有值
    print(dict.items()) #获取dict中所有键值对
  • 公共功能

    索引/长度len /for循环/删除/修改 # dict是无序的,不能切片和步长

    dict = {'Name': 'deng', 'Age':18, 'Class': 'First'}  # 修改
    dict['Name'] = 'wang' # 改值
    dict['gender'] = '男' # 添加键值对,如果要修改键值对,得先删除键值对,删除后再添加键值对
    del dict['Name'] # 删除键值对
    dict['New_Name'] = 'mao'
    len(dict) #键值对的个数
    dict['Age'] # 18

Python全栈day 05的更多相关文章

  1. Python全栈开发【模块】

    Python全栈开发[模块] 本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser loggin ...

  2. python 全栈开发之路 day1

    python 全栈开发之路 day1   本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...

  3. python全栈开发中级班全程笔记(第二模块、第四章(三、re 正则表达式))

    python全栈开发笔记第二模块   第四章 :常用模块(第三部分) 一.正则表达式的作用与方法 正则表达式是什么呢?一个问题带来正则表达式的重要性和作用      有一个需求 : 从文件中读取所有联 ...

  4. python 全栈开发,Day99(作业讲解,DRF版本,DRF分页,DRF序列化进阶)

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...

  5. python 全栈开发,Day98(路飞学城背景,django ContentType组件,表结构讲解)

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...

  6. 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】

    点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...

  7. Python全栈

    Python基础 Python基础01 Hello World! Python基础02 基本数据类型 Python基础03 序列 Python基础04 运算 Python基础05 缩进和选择 Pyth ...

  8. python 全栈之路

    目录 Python 全栈之路 一. Python 1. Python基础知识部分 2. Python -函数 3. Python - 模块 4. Python - 面对对象 5. Python - 文 ...

  9. Python全栈【Socket网络编程】

    Python全栈[socket网络编程] 本章内容: Socket 基于TCP的套接字 基于UDP的套接字 TCP粘包 SocketServer 模块(ThreadingTCPServer源码剖析) ...

随机推荐

  1. LotusScript_导出数据库路径和名称

    对服务器有些数据库需要建立复本,新建拷贝,修改权限(ACL),或是修改数据库标识符(ID)需要找到这些数据库.这个方法是导出指定服务器上所有数据库的路径,数据库名,标识符等信息,导出后对Excel表格 ...

  2. Cocos2d-x v3.1项目创建(三)

    Cocos2d-x v3.1项目创建(三) Cocos2d-x官方为我们提供了用于创建.编译.运行和部署的一套命令行的工具集,也就是上篇文章中我们所提到的Cocos2d-Console,它位于我们的引 ...

  3. xcode import pod 文件不提示

    在使用第三方类库时,使用cocoaPods是非常方便的,具体使用方法可以参考:CocoaPods安装和使用教程 的安装使用方法.今天讨论的问题是,我在使用的时候遇到了一些问题:用cocoaPod si ...

  4. pure-ftp 修改用户信息

    1.修改用户test的密码 [root@localhost bin]# ./pure-pw passwd test #修改密码 Password: Enter it again: [root@loca ...

  5. 在sql中如何把一列的值拆分成多列

  6. Python基础学习-列表的常用方法

    列表方法 = Python 3.5.2 (default, Sep 14 2016, 11:27:58) [GCC 6.2.1 20160901 (Red Hat 6.2.1-1)] on linux ...

  7. Js 数据类型 Number()转型函数

    alert(Number(true)); //转换为1,如果为false为0 alert(Number()); //25,数值型直接返回 alert(Number(null)); //0,空对象返回0 ...

  8. S7-1500 读取V90/S120/S210/G120的常用驱动参数

    S7-1500 读取V90/S120的常用驱动参数 此程序已更新,可以下载例子程序 https://files.cnblogs.com/files/lion-zheng/PLC_async_drive ...

  9. 屏蔽各类弹窗广告(WPS、智能云输入法)

    托盘中的广告“领取双11红包,最高1111元”的罪魁祸首是“智能云输入法” 广告在托盘中闪动: 结束SCSkinInst.exe后,托盘中的广告消失: 智能云输入法的安装路径可参考: C:\Progr ...

  10. Poj(2240),Floyd求汇率是不是赚钱

    题目链接:http://poj.org/problem?id=2240. Floyd算法修改一下,我要最大路径(通过转汇率变到最大)改成max. #include <iostream> # ...