1.解释 / 编译补充

  • 编译型:代码写完后,编译器将其变成成另外一个文件,然后交给计算机执行。
  • 解释型:写完代码交给解释器,解释器会从上到下一行行代码执行:边解释边执行。 【实时翻译】

2.字符串功能补充

字符串特有功能

  • startswith / endswith

    • 判断是否以什么为开头或结尾
    name = 'alex'
    
    # 判断是否以al开头
    """
    # 方式一:
    flag = name.startswith('al')
    print(flag)
    """
    """
    # 方式二:
    val = name[0:2]
    if val == 'al':
        print('是以al开头')
    else:
        print('不是')
    """
  • format

    • 格式化输出
    name = "我叫{0},年龄:{1}".format('老男孩',73)
    print(name)
  • encode

    • 以什么编码格式存入
    name = '李杰' # 解释器读取到内存后,按照unicode编码存储:8个字节。
    v1 = name.encode('utf-8')
    print(v1)
    v2 = name.encode('gbk')
    print(v2)
  • join

    • 以特定字符连接字符串
    name = 'alex' # a_l_e_x
    result = "**".join(name) # 循环每个元素,并在元素和元素之间加入连接符。
    print(result)

公共功能

  • 步长

    • 正数表示从左到右,负数表示从右到左
    name = 'alex'
    
    # val = name[0:-1:2]
    # val = name[1:-1:2]
    # val = name[1::2]
    # val = name[::2]
    # val = name[-1:0:-2]
    # print(val)
    
    # 笔试题:请将字符串反转。
    val = name[::-1]
    print(val)
  • for 循环

    name = 'alex'
    for item in name:
        print(item)
    
    name = 'alex'
    for item in name:
        print(item)
        break
        print('123')
    name = 'alex'
    for item in name:
        print(item)
        continue
        print('123')
    # 练习题
    
    # 1. for循环打印 “alex” 的每个元素: for > while
    
    # 2. 请打印: 1 - 10
    """
     for i in range(1,11): # [1,2,3,4,5,6,7,8,9,10,11,12,14]  "12345678910"
         print(i)
    """
    
    # 3. 请打印: 1 2 3 4 5 6 8 9 10
    """
    for i in range(1,11):
        if i == 7:
            pass
        else:
            print(i)
    """

    注意:for和while的应用场景:有穷尽优先使用for,无穷尽用while

3.列表

如果想要表示两个同学 users = "李邵,李奇航...".

以后想要表示多个”事物“,可以使用列表。

users = ["李邵奇","奇航",99]

公共功能

  • len

    users = ["李邵奇","奇航",99]
    val = len(users)
    print(val) # 3
  • 索引

    users = ["李邵奇","奇航",99]
    val = users[0]
    print(val)
  • 切片

    users = ["李邵奇","奇航",99]
    
    val = users[0:2]
  • 删除(数字/布尔/字符串除外)

    users = ["李邵奇","奇航",99]
    # 方式一
    users.pop(1)
    print(users)
    
    # 方式二:
    del users[1]
    print(users)

    注意:

    • 字符串本身不能修改或删除【不可变类型】 v1 = "alex".upper()
    • 列表是可变类型。
  • 修改(字符串/数字/布尔除外)

    users = ["李邵奇","奇航",99]
    users[2] = 66
    
    users[0] = '李杰'
    users[0][1]
  • 步长

    users = ["李邵奇","奇航",99]
    
    val = users[0:2:2]
  • 练习题

    """
    实现一个整数加法计算器(两个数相加):
    
    如:content = input("请输入内容:") 用户输入:5+9或5+ 9或5 + 9(含空白),然后进行分割转换最终进行整数的计算得到结果。
    """
    
    # 思路一:
    """
    content = input('请输入:') # [5+9]  或 [5 +9]  或者 [ 5 + 9 ]
    content = content.strip() # [5+9]  或 [5 +9]  或者 [5 + 9]
    v1 = int(content[0])
    v2 = int(content[-1])
    v3 = v1 + v2
    """
    
    # 思路二:
    """
    content = input('请输入:') # [5+9]  或 [5 +9]  或者 [ 5 + 9 ]
    content_len = len(content)
    index = 0
    total = 0
    while True:
        char = content[index]
        if char.isdigit():
            total += int(char)
        index += 1
        if index == content_len:
            break
    print(total)
    """
    
    # 思路三:
    """
    content = input('请输入:') # [5+9]  或 [5 +9]  或者 [ 5 + 9 ]
    result = content.split('+')
    # print(result) # ['55 ', ' 99 ']
    v1 = int(result[0]) # "55"
    v2 = int(result[1]) # " 99 "
    v3 = v1 + v2
    print(v3)
    """
  • for循环

    """
    users = ['李邵奇','利奇航','张三丰','李子森']
    for i in users:
        print(i)
    """
    """
    users = ['李邵奇','利奇航','张三丰','李子森']
    for i in users:
        # 第一次循环:i=“李邵奇”
        print(i)
        for ele in i:
            print(ele)
    """
    
    # 练习题:请通过for循环和数字计数器实现:users = ['李邵奇','利奇航','张三丰','李子森']
    """
        0 李邵奇
        1 利奇航
        2 张三丰
        3 李子森
    """
    """
    # 方式一
    users = ['李邵奇','利奇航','张三丰','李子森']
    count = 0
    for i in users:
        print(count,i)
        count += 1
    """
    """
    # 方式二
    users = ['李邵奇','利奇航','张三丰','李子森']
    users_len = len(users) # 4
    for index in range(0,users_len): # [0,1,2,3]
        print(index,users[index])
    """

独有功能

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

    users = []
    users.append('alex')
    print(users)
    """
    示例一:
    users = []
    while True:
        name = input('请输入姓名:')
        users.append(name)
        print(users)
    """
    """
    示例二:
    # 录入用户和密码
    users = []
    for i in range(0,3):
        name = input('请输入用户名和密码:')
        users.append(name)
    print(users) # ['alex,123', 'oldboy,888', 'lishaoqi,123']
    
    # 用户和密码校验
    username = input('请输入要登陆用户名:')
    password = input('请输入要登陆密码:')
    for item in users:
        result = item.split(',') # ['alex','123']
        user = result[0]
        pwd = result[1]
        if user == username and pwd == password:
            print('登陆成功')
            break
    
    """
  • insert

  • remove

  • pop

  • clear

列表总结:

  • 增:

    • append / insert
  • 删:

    • remove / pop / clear / del users[2]
  • 改:

    • users[3] = "新值"
  • 查:

    • 索引/切片
  • 列表嵌套

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

4.元组

  1. 元组书写规范

    users = [11,22,33,"老男孩"] # 列表(可变)
    
    users = (11,22,33,"老男孩") # 元组(不可变)
  2. 公共功能

    1. 索引(排除:int/bool)

      users = (11,22,33,"老男孩")
      
      print(users[0])
      print(users[-1])
    2. 切片(排除:int/bool)

      users = (11,22,33,"老男孩")
      print(users[0:2])
    3. 步长(排除:int/bool)

      users = (11,22,33,"老男孩")
      print(users[0:2:2])
    4. 删除(排除:tuple/str/int/bool)

    5. 修改(排除:tuple/str/int/bool)

    6. for循环(排除:int/bool)

      users = (11,22,33,"老男孩")
      for item in users:
          print(item)
    7. len(排除:int/bool)

      users = (11,22,33,"老男孩")
      print(len(users))
  3. 独有功能(无)

  4. 特殊:元组中的元素(儿子)不可被修改/删除。

    # 示例一:
    v1 = (11,22,33)
    v1[1] = 999 # 错误
    v1 = 999  # 正确
    
    # 示例二:可以嵌套
    v1 = (11,22,33,(44,55,66),(11,2,(99,88,),3))
    
    # 示例三:嵌套
    v2 = [11,22,33,(11,22,33)]
    v2[-1][1] = 99 # 错误
    v2[-1] = 123 # 正确
    
    # 示例四:嵌套
    v3 = (11,[1,2,3],22,33)
    v3[1] = 666 # 错误
    v3[1][2] = 123

系统学习python第四天学习笔记的更多相关文章

  1. Python学习---Python下[元组]的学习

    元组是不可变的, 用小括号()定义,而且一旦定义 ,不可变[类型是tuple] [元组看做一个整体,不可拆分,不可赋值,但可以全部重新赋值] 通过圆括号,用逗号分隔,常用在使语句或用户定义的函数能够安 ...

  2. 学习Python不得不关注和学习的国外大神博客

    注意 : 本文收集于网路 . 由于常常更新 , 有些链接打不开, 请自备梯子 在学习Python过程中,总会遇到各种各样的坑, 虽然Python是一门优美而简单易学的语言 . 但当学习后 , 总想着更 ...

  3. 系统学习python第三天学习笔记

    day02补充 运算符补充 in value = "我是中国人" # 判断'中国'是否在value所代指的字符串中. "中国"是否是value所代指的字符串的子 ...

  4. 系统学习python第七天学习笔记

    1.get方法用法补充 info = {'name':'王刚蛋','hobby':'铁锤'} while True: data = input('请输入:') val = info.get(data, ...

  5. 系统学习python第五天学习笔记

    1.列表补充 extend() li = ["alex", "WuSir", "ritian", "barry", &q ...

  6. python 第四阶段 学习记录之----异步

    异步: 知识情况: 1.多线程, 多线程使用场景 1.IO操作不占CPU,读写数据(网络中.系统中) 2.计算占CPU, 3.上下文切换不占CPU.它消耗资源 python多线程 不适合CPU密集型的 ...

  7. 【Python】Java程序员学习Python(四)— 内置方法和内置变量

    <假如爱有天意> 当天边那颗星出现,你可知我又开始想念,有多少爱恋只能遥遥相望,就像月光洒向海面,年少的我们曾以为,相爱的人就能到永远,当我们相信情到深处在一起,听不见风中的叹息,谁知道爱 ...

  8. 学习python第四天——Oracle查询

    3.子查询(难): 当进行查询的时候,发现需要的数据信息不明确,需要先通过另一个查询得到, 此查询称为子查询: 执行顺序:先执行子查询得到结果以后返回给主查询 组成部分: 1).主查询部分 2).子查 ...

  9. 学习python,第四篇:Python 3中bytes/string的区别

    原文:http://eli.thegreenplace.net/2012/01/30/the-bytesstr-dichotomy-in-python-3 python 3中最重要的新特性可能就是将文 ...

随机推荐

  1. linux下安装redis,按照redis官网安装不成功需要提前安装c++环境(安装成功并可以测试)

    这个安装是一种便捷的安装,没有几句,但是完全按照官网上的来没有安装成功,有前提条件的 打开linux root登录 然后在usr下面建文件夹redis,进入 在该文件加下,直接按照官网的指导进行安装即 ...

  2. apache启动错误:Could not reliably determine the server's fully qualified domain name

    启动apache遇到错误:httpd: Could not reliably determine the server's fully qualified domain name [root@serv ...

  3. 2.14 Java web 复习总结

    1.空指针异常原因(NullPointerExceptio)之一: 在Dao层里边 声明 Connection conn = DBUtil.getConn(); //不能少 Statement sta ...

  4. OLAP(On-Line Analytical Processing)

    自20世纪80年代开始,许多企业利用关系型数据库来存储和管理业务数据,并建立相应的应用系统来支持日常的业务运作.这种应用以支持业务处理为主要目的,被称为联机事务处理(On line Transacti ...

  5. torch.utils.data.DataLoader 将数据按批次分成很多组,每次抛出一个小组

    torch.utils.data.DataLoader 数据加载器,结合了数据集和取样器在训练模型时使用到此函数,用来把训练数据分成多个小组,此函数每次抛出一组数据.直至把所有的数据都抛出.就是做一个 ...

  6. C#如何编写短信接口,以及接口的调用,包括C#.net访问web,并处理返回值的简例。

    在系统的开发中我们经常会用到接口,下面给大家介绍一种短信接口的编写与调用. 我们常调用接口来完成一些信息的通知或者发送验证码,那么这些操作是如何完成的呢?来看一下详细的介绍吧! 首先呢,我们需要有一个 ...

  7. oracle函数创建与调用

    函数的定义: CREATE OR REPLACE FUNCTION FUNCTION_TEST(PARAMER1 IN VARCHAR, -- 参数的类型不写长度 PARAMER2 OUT VARCH ...

  8. App_显示图表内容

    今天在之前记账本的基础上增加了图标的显示功能,在本次课程中它以折线图为例讲述.但是课程中给出了多有图的代码案例. https://github.com/lecho/hellocharts-androi ...

  9. JS ~ Promise.reject()

    概述: Promise.reject(reason)方法返回一个带有拒绝原因reason参数的Promise对象. 语法 Promise.reject(reason); reason :  表示Pro ...

  10. h5-360_introduce页面案例

    整个网页的html 首先,忽略我的网页比较丑,主要是ps功底不太好, 其次这个网页是利用了全屏插件:jquery.fullPage.js.需要事先导入相应的js文件 js文件下载地址:http://w ...