s21day04 python笔记

一、上周知识回顾及补充

  1. 回顾

  2. 补充

    • 编译型语言和解释性语言

      • 编译型:代码写完后,编译器将其变成成另外一个文件,然后交给计算机执行
      • 常见的编译型语言:C,C++,Java,C#,Go等
      • 解释型:写完代码交给解释器,解释器会从上到下一行行代码执行:边解释边执行
      • 常见的解释型语言:Python,PHP,ruby等
    • 字符串功能补充

      • 字符串是不可变类型

      • 字符串独有功能

        • startswith/endswith

          • startswith:判断是否已什么开头
          • endswith:判断是否已什么结尾
        • format:字符串格式化

          • 和占位符(%s.%d)的作用一样
          • 使用方式
          name = '我叫{0},年龄:{1}'.format('老男孩',73)
          print(name)
        • encode:将unicode转换成其他编码存储

          • .encode(utf-8):将unicode转换成utf-8存储
          • .encode(gbk):将unicode转换成gbk存储
        • join:循环每个元素,并在元素与元素之间加入连接符

          • ''_".join():循环每个元素,并在元素与元素之间加入下划线
      • 公共功能

        • 步长

          • 使用格式:v1 = v[0:3:2]

          • 前面的两个数0:3按切片理解
          • 后面的一个数2代表隔一个数取一个数
          • 后面的那个数正数代表从左到右取,负数代表从右到左取,不写就是默认为1

          笔试题:请将字符串反转

          name = 'alex'
          val = name[::-1]
          print(val)  #xela
        • for循环

          • 使用方式
          name = 'alex'
          for item in name:
              print(item)
          • 注意

            • 用循环打印字符串的每个元素:for > while
            • 死循环:while > for
            • for和while的应用场景:有穷尽优先用for,无穷尽用while
          • for循环 + range

            示例:打印1 - 10

            # range(0,10):[1,2,3,4,5,6,7,8,9]
            for i in range(0,11):
                print(i)
    • git(面试相关)

      • 写出你常用的git命令
      • 你们公司是怎么用git做开发的

二、列表(可变类型)

  1. 想要表示多个事物,可以用列表

  2. 使用格式

    users = ['张三','李四',99]
  3. 列表是可变类型

  4. 列表独有功能

    • append:在列表的最后追加一个元素

      • 使用格式:users.append('王五')
      • 代表在列表的最后追加一个元素('王五')
    • insert:插入
      • 使用格式:users.insert(0,'王五')
      • 数字代表在第几位插入,后面的代表插入一个元素('王五')
    • remove:删除
      • 使用格式:users.remove('李四')
      • 代表删除列表中的一个元素('李四')
    • pop:删除
      • 使用格式:users.pop(1)
      • 数字代表删除列表第几位的元素
    • clear:删除
      • 使用格式:users.clear()
      • 代表删除列表中的所有元素
  5. 公共功能

    • 长度:len

      • 使用格式:len(users) #3
    • 索引

      • 使用格式:users[0] #张三
    • 切片

      • 使用格式:users[0:2] #张三,李四
    • 步长

      • 使用格式:users[0:2:2] #张三
    • for循环

      • 使用格式
      #第一种
      for i in users:
          print(i)   #张三,李四,99
      #第二种
      for i in users:
          for ele in i:
              print(ele)   #张,三,李,四,9,9
    • 删除:del (数字/布尔/字符串除外)
      • 使用格式:del users[1]
      • 数字代表删除列表第几位的元素
    • 修改 (数字/布尔/字符串除外)
      • 使用格式:users[2] = 66
      • 数字代表修改列表第几位的元素,等号后面的代表修改成什么
  6. 注意

    • 字符串/数字/布尔是不可变类型,本身不能修改和删除
    • 列表是可变类型,可以直接修改
  7. 总结

    • 功能(增删改查)

      • 增:append/insert
      • 删:remove/pop/clear/del
      • 改:修改 users[0] = '王五'
      • 查:索引/切片
    • 列表嵌套

      示例

      users = ['alex',0,True,[11,22,33,'老男孩']]
      users[3]   #[11,22,33,'老男孩']
      users[3][-1]   #'老男孩'
      users[3][-1][2]   #'男'

三、元组(不可变类型)

  1. 使用格式

    users = ('张三','李四',99,)
  2. 元组是不可变类型

  3. 元组只有公共功能,没有独有功能

    • 公共功能

      • 长度:len

        • 使用格式:len(users) #3
      • 索引

        • 使用格式:users[0] #张三
      • 切片

        • 使用格式:users[0:2] #张三,李四
      • 步长

        • 使用格式:users[0:2:2] #张三
      • for循环

        • 使用格式
        for i in users:
            print(i)   #张三,李四,99
    • 独有功能(无)

  4. 特殊

    • 元组是不可变类型,里面的元素不可被修改和删除

      v = (11,22,33,)
      v[1] = 99   #错误
      v = 99   #正确
    • 元组可以嵌套

      v1 = (11,22,33,(44,55,66,),)
    • 列表和元组嵌套

      #例1
      v2 = [11,22,33,(11,22,33,)]
      v2[-1][1] = 99   #错误
      v2[-1] = 99   #正确
      #例2
      v3 = (11,[1,2,3],22,33,)
      v3[1] = 99   #错误
      v3[1][2] = 99   #正确
    • 总结:列表中元素可以被修改和删除,元组中元素不可被修改和删除

s21day04 python笔记的更多相关文章

  1. Python笔记之不可不练

    如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...

  2. boost.python笔记

    boost.python笔记 标签: boost.python,python, C++ 简介 Boost.python是什么? 它是boost库的一部分,随boost一起安装,用来实现C++和Pyth ...

  3. 20.Python笔记之SqlAlchemy使用

    Date:2016-03-27 Title:20.Python笔记之SqlAlchemy使用 Tags:python Category:Python 作者:刘耀 博客:www.liuyao.me 一. ...

  4. Python笔记——类定义

    Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  5. 13.python笔记之pyyaml模块

    Date:2016-03-25 Title:13.Python笔记之Pyymal模块使用 Tags:Python Category:Python 博客地址:www.liuyao.me 作者:刘耀 YA ...

  6. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  7. python笔记 - day8

    python笔记 - day8 参考: http://www.cnblogs.com/wupeiqi/p/4766801.html http://www.cnblogs.com/wupeiqi/art ...

  8. python笔记 - day7-1 之面向对象编程

    python笔记 - day7-1 之面向对象编程 什么时候用面向对象: 多个函数的参数相同: 当某一些函数具有相同参数时,可以使用面向对象的方式,将参数值一次性的封装到对象,以后去对象中取值即可: ...

  9. python笔记 - day7

    python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...

随机推荐

  1. redis sentinel哨兵模式集群搭建教程

    1.环境说明 我们将使用192.168.220.128.192.168.220.129两台机器搭建sentinel交叉主从为例 当前我们已在192.168.220.128上按redis安装教程安装了r ...

  2. [转]perftools查看堆外内存并解决hbase内存溢出

    最近线上运行的hbase发现分配了16g内存,但是实际使用了22g,堆外内存达到6g.感觉非常诡异.堆外内存用一般的工具很难查看,可以通过google-perftools来跟踪: http://cod ...

  3. sql server 中进行除法运算时,如何得到结果是小数形式呢?

    我们正常进行除法运算时,sql默认是返回一个四舍五入的数 比如12除以5,17除以3 --算法1:返回结果:2 需要的是2.40 ) as 结果1 --算法2:返回结果:5 需要的是5.67 ) as ...

  4. laravel中db获取某个数据的具体字段值:

    $helpfriend = DB::connection('luckyrecord')->table($luckyrecord)->where('id', $luckyrecordid)- ...

  5. Win10系列:JavaScript综合实例2

    在项目中添加一个名为pages的文件夹,并在pages文件夹里面再添加一个名为mainPage的文件夹,接着在mainPage文件夹里添加一个"页面控制"项,命名为mainPage ...

  6. Vue + Element UI 实现权限管理系统 (管理应用状态)

    使用 Vuex 管理应用状态 1. 引入背景 像先前我们是有导航菜单栏收缩和展开功能的,但是因为组件封装的原因,隐藏按钮在头部组件,而导航菜单在导航菜单组件,这样就涉及到了组件收缩状态的共享问题.收缩 ...

  7. js评分

    js评分    原理:给ele挂载一个自定义属性保存选中的星星数,鼠标经过时,显示所在星数的评价内容,以及给他星星亮起来,鼠标移开时显示的星星数时选择的星星数,没选的话是默认星星数,点击时,将选中的星 ...

  8. http协商缓存VS强缓存

    之前一直对浏览器缓存只能描述一个大概,深层次的原理不能描述上来:终于在前端的两次面试过程中被问倒下,为了泄恨,查阅一些资料最终对其有了一个更深入的理解,废话不多说,赶紧来看看浏览器缓存的那些事吧,有不 ...

  9. windows上dubbo-admin的安装

    dubbo-admin的安装 (1)先下载好zookeeper包,因为启动dubbo-admin时需要先启动zookeeper zookeeper:dubbo的注册中心(自己下载 ,找到bin目录下的 ...

  10. jenkins部署java项目在本地(三)

    (1)新建maven构建的java项目 pom.xml的配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...