zoukankan      html  css  js  c++  java
  • 基础数据类型

    一. 今日内容大刚

     1. 基础数类型总览
    1. int

    2. bool

    3. str

      • 索引,切片

      • 常用操作方法

    4. for 循环

    二. 昨日内容以及作业讲解

    1. pycharm 简单使用

    2. while 循环

      1. 结构

      2. pass

    3. 格式化输出:str :让字符串的某些位置变成动态可变的,可传入的。

      1. % s str d digit i int r

      2. %%

    4. 编码的初识:

      1. 编码:密码本:二进制 与 文字的对应关系。

        • ASCII:最早的密码本:二进制与 英文字母,数字,特殊字符的对应关系

          01100001 a

          01100010 b

        'abc' : 01100001 01100010 01100011 : 3个字节

        • GBK 国标: 英文.... 1个字节 中文 2个字节

          • 英文字母,数字,特殊字符 ASCII

          • 中文自己编写的。

        'ab太白' :6个字节

        • Unicode: 万国码。(兼容性高,他与任何的密码本都有映射关系)

          01100001 01100001 01100001 01100001 a

          01100001 01100001 01100101 01100001

        • UTF-8:

          01100001 a 使用的ASCII

          01100001 01100001 欧洲..

          01100001 01100101 01100001

        'ab太白' 8个字节

         

         

         

    三. 具体内容:

    1. 基础数类型总览

      • 10203 123 3340 int +- * / 等等

      • '今天吃了没?' str 存储少量的数据,+ *int 切片, 其他操作方法

      • True False bool 判断真假

      • [12, True, 'alex', [1,2,3 ]] list 存储大量的数据。

      • (12, True, 'alex', [1,2,3 ]) tuple 存储大量的数据,不可改变里面的元素。

      • {'name': '太白金星'} dict 存储大量的关联型的数据,查询速度非常快。

      • set 交集,并集差集。。。

    2. int

      • 十进制二进制转换

      •  
         1 '''
         2  二进制转换成十进制
         3  0001 1010     ------> ?  26
         4  '''
         5  b = 1 * 2**4 + 1 * 2**3 + 0 * 2**2 + 1 * 2**1 + 0 * 2**0
         6  # print(b)  # 26
         7  8  '''
         9  42  -----> 0010 1010
        10  '''
      • bit_lenth 十进制转化成二进制的有效长度

        1  # bit_lenth 有效的二进制的长度
        2  i = 4
        3  print(i.bit_length())  # 3
        4  i = 5
        5  print(i.bit_length())  # 3
        6  i = 42
        7  print(i.bit_length())  # 4

         

    3. bool

      • bool str int 三者之间的转换

         1  # bool str int
         2  # bool  <---> int
         3  '''
         4  True    1   False     0
         5  非零即True    0 是 False
         6  '''
         7  8  # str   <--->   int  ***
         9  '''
        10  s1 = 10     int(s1)  : 必须是数字组成
        11  i = 100     str(i)  
        12  '''
        13  # str  bool  ***
        14  # 非空即True
        15  s1 = ' '
        16  print(bool(s1))
        17 18  s1 = ''  # 空字符串
        19  print(bool(s1))
        20  # bool  ---> str  无意义
        21  print(str(True))
      • 应用:

        1  s = input('输入内容')
        2  if s:
        3      print('有内容')
        4  else:
        5      print('没有输入任何内容')
        6  
    4. str

      • 索引切片步长

         s1 = 'python全栈22期'
         # 对字符串进行索引,切片出来的数据都是字符串类型。
         # 按照索引取值
         # 从左至右有顺序,下标,索引。
         s2 = s1[0]
         print(s2,type(s2))
         s3 = s1[2]
         print(s3)
         s4 = s1[-1]
         print(s4)
         ​
         # 按照切片取值。
         # 顾头不顾腚
         s5 = s1[0:6]
         s5 = s1[:6]
         print(s5)
         s6 = s1[6:]
         print(s6)
         ​
         # 切片步长
         s7 = s1[:5:2]
         print(s7)
         print(s1[:])
         # 倒序:
         s8 = s1[-1:-6:-1]
         print(s8)
         ​
         # 按索引:s1[index]
         # 按照切片: s1[start_index: end_index+1]
         # 按照切片步长: s1[start_index: end_index+1:2]
         # 反向按照切片步长: s1[start_index: end_index后延一位:2]
         # 思考题:倒序全部取出来?
      • 练习题

        1  2.有字符串s = "123a4b5c"
        2 3  通过对s切片形成新的字符串s1,s1 = "123"
        4  通过对s切片形成新的字符串s2,s2 = "a4b"
        5  通过对s切片形成新的字符串s3,s3 = "1345"
        6  通过对s切片形成字符串s4,s4 = "2ab"
        7  通过对s切片形成字符串s5,s5 = "c"
        8  通过对s切片形成字符串s6,s6 = "ba2"
      • 常用操作方法

         1  # upper lower
         2  # s1 = s.upper()
         3  # # s1 = s.lower()
         4  # print(s1,type(s1))
         5  6  # 应用:
         7  username = input('用户名')
         8  password = input('密码')
         9  code = 'QweA'
        10  print(code)
        11  your_code = input('请输入验证码:不区分大小写')
        12  if your_code.upper() == code.upper():
        13      if username == '太白' and password == '123':
        14          print('登录成功')
        15      else:
        16          print('用户名密码错误')
        17  else:
        18      print('验证码错误')

         

    四. 今日总结

    1. bool str int 三者之间的转换 ***

    2. str索引切片,常用操作方法

    3. for循环(大量的练习题)

    五. 预习内容

    1. 列表

      • 初识

      • 增删改查

      • 嵌套

    2. 元组tuple 5分钟

    3. range

    4.  

  • 相关阅读:
    BNUOJ 12756 Social Holidaying(二分匹配)
    HDU 1114 Piggy-Bank(完全背包)
    HDU 2844 Coins (多重背包)
    HDU 2602 Bone Collector(01背包)
    HDU 1171 Big Event in HDU(01背包)
    HDU 2571 命运 (入门dp)
    HDU 1069 Monkey and Banana(最长递减子序列)
    HDU 1160 FatMouse's Speed (最长上升子序列)
    HDU 2594 KMP
    POJ 3783 Balls --扔鸡蛋问题 经典DP
  • 原文地址:https://www.cnblogs.com/zhangxiangning/p/10199269.html
Copyright © 2011-2022 走看看