第 2 课 字符串和数据结构

第 2 课 字符串和数据结构

不会的东西可以在群里提问、或搜索查看标准库文档入门教程。( Ctrl + F )

课程纲要和笔记

  1. 数据结构
    • 复习变量
      • 变量是内存的名字,赋值过程就是名字的重新绑定。例子:a = 1 a = a + 1
    • 复习数据类型
      • int, float: + - * \ \\ %
      • str: + == replace() split() format() strip() notice:*
      • bool: or and not
      • str(), float(), int():特定的类型有特定的运算,所以需要进行类型转换。
  • 数据结构是什么以及意义是?
    • 上述数据类型是最基本的、不可分割的数据结构。例子:学生信息表:学号、身份证、姓名。
    • 由于内存的性质,我们需要把现实世界的数据用线性的结构表示。数据结构,要考虑其结构操作
  • list 列表
    • 数据:本质上是表格,线性排列,可以是任何类型,
    • 操作:
    • append() [] * n +
    • pop() pop(i)
    • array[i] = n
    • fruits.index(x)
    • 更多特性
  • tuple 不可变列表
  1. 字符串和文件读写
  • f = open(file_name, 'w', encoding="utf-8") f.close()
    • 如何存储文件?文件读写
    • 需要 close 因为操作系统的规定。
    • f.read() , f.readline()
    • f.write()
  1. 简要复习上一课的内容,解答作业
    1. 编写一个程序:能顺序地输入两个数,回车后,程序将在在屏幕上打印两个数分别加减乘除的结果,程序代码应该包括你的注释
    2. 编写一个程序:能先输入字符串 s,然后输入一个整数 n,程序将把 n 个字符串拼接打印出来。

课后作业

  1. 编程作业,程序满足:自定义一个list里面包含一些整数,自行对其进行增删改查操作,转换成str类型,按照utf-8编码输出为txt文件。

  2. 复制下列代码,并利用它在屏幕上打印出Google likes Python

L = [
    ['Apple', 'Google', 'Microsoft'],
    ['Java', 'Python', 'Ruby', 'PHP'],
    ['likes', 'dislikes', 'own']
]

附录

  • 注意:上课的时候突然卡壳了!readline() 在遇到行尾的时候返回空白字符串,转成bool型是False,正确的按行读取并且加载到数组中应该是这样:

    array = []
    with open("test.txt", "r", encoding="utf-8") as f:
      text = f.readline()
      array.append(text)
      while text:
          text = f.readline()
          array.append(text)
    print(array)
  • 上课代码

    if __name__ == '__main__':
      print("hello")
      a = 1
      a = a + 1
      a = "test"
    
      print(a.capitalize())
      print(a == b)
      user = input()
      age = input()
      welcome = "hello, {0}, {1}".format(user, age)
      print(welcome)
      b = "hello"
      n = int(input())
      #   integer
      #   int(n) * str(b)   --> str
      print(n * b)
      flag = True
      # not
      # not True = False
      # or
      # (bool) and (bool)
      print(flag and False)
    
      #   原子
      #   学生表 :学号(str or int)、身份证(str)、姓名(str)。
      #   学生表 : x1 学号身份证姓名
      #   学生表 : x2 学号身份证姓名
      #   图 1-256
      array = [2, "s", 1.16 ]
      a = [1, 9, 3]
      b = [2, 2,2]
      matrix = [
          a ,
          b ,
          [  2,3,5  ]
      ]
    
      array.append("hello")
      array = ["s"] * 9
    
      new_list = array + matrix
      print(new_list)
      new_list.pop(3)
    
      new_list[0] = "T"
    
      new_list.clear()
      print(new_list)
    
      print(new_list.index("s"))
      # (list) .index( )
    
      t1 = tuple([1, 2, 4, 5, 8])
    
      table = tuple(["monday", "tuesday"])
      print(table[0])
    
      string = "s12255122sw"
      #   []
      print(string[1:-2])
      print(string[-2:])
      #   gbk
      #   utf-8
      #   01010 -->  a
      #   01010 -->  b
      #
      f = open("test.txt", "w", encoding="utf-8")
      # r: read w:write
      f.write(string * 10)
      f.close()
    
      # array = []
      #
      with open("test.txt", "r", encoding="utf-8") as f:
          text = "2"
          while text:
              text = f.readline()
              array.append(text)
    
      print(array)
    
      a = float(input())
      b = float(input())
      print(a * b, a + b , a / b)
    
      s = input()
      n = int(input())
      print(n * s)
订阅评论
提醒
guest
1 评论
最旧
最新 最多投票
内联反馈
查看所有评论
trackback

[…] 2 课 字符串和数据结构 Github | 博客 | […]