• day03


    1. 编码

    1. 最早的计算机编码是ASCII, 美国人创建的. 包含了英文字母(大写字母,小写字母) 数字, 标点等特殊字符!@#$%
      128个码位 2**7 在此基础上加了一位 2**8  最前面一位是0
      8位  1个字节(byte)
    2. GBK 国标码:  16位 2个字节(双字节字符)
    3. unicode 万国码:  32位 4个字节
                     usc-2 16位 2个字节
    usc-4 32位 4个字节
    ascii: 01100001
    gbk: 00000000 01100001
    unicode: 00000000 00000000 00000000 01100001
    4. utf-8: 英文      8 bit  1个字节
             欧洲文字   16bit   2个字节
              中文      24bit   3个字节
      
      二进制的一位,就叫做 1 bit。
      8 bit => 1byte(1个字节)   1024 byte => 1kb   1024kb => 1mb   1024mb => 1GB   1024GB => 1TB   1024TB => 1PB

    2. 基本数据类型概述

    int 整数
    str 字符串, 存储少量的数据
    bool 布尔
    list 列表, ["大阳哥","东阳哥"]
    tuple 元组. 只读列表, 不能改
    dict 字典: 一对一对的存储数据. key:value ["赵阳":"大阳哥","jay":"周杰伦"]
    set 集合: 存储不重复的内容

    4. int, bool, str

    1. int 方法操作:
            bit_length() 求二进制长度
    a = 3
    print(a.bit_length())   # 二进制长度
       
    2. bool: 布尔类型
        1. 你想转换成什么,就用什么把目标包裹起来
            
            # 字符串转换成数字
            s = "128"
            i = int(s)
            print(type(i))
            #数字转换成字符串
            ss = str(i)
            print(type(ss))
            
            # bool类型转换成数字 Trur: 1   False: 0
            b = False
            c = int(b)
            print(c)
            #int 转换成bool   零: False    非零: True
            a = 0
            b = bool(a)
            print(b)
    
        2. 带空的是Flase, 不带空的True 
            s = ""  # ""空字符串表示False, 非空字符串表示:True
            if s:
                print("哈哈")
            else:
                print("呵呵")
    
        注意:空的东西都是False, 非空的东西都是True
    
        # 连空气都不如. 真空, False
        m = None    
        if m :
            print("a")
        else:
            print("b")
    3. 字符串(str)
      1. str 索引和切片
            
            索引: 起始下标是0(从左到右),-1(从右到左).
            索引: 正着从0开始编号   倒着从-1开始编号
            s = "我爱你"
            print(s[0])    # 我
            s = "我爱你"
            print(s[-1])    # 你
            
            切片: s[起始位置:结束位置:步长]
            *特点:顾头不顾尾    
            s = "该从何说起"
            print(s[0:2])    # 该从
            print(s[0:3:2])    # 该何
    
            s = 'alex和wusir经常在一起搞基'
            s1 = s[5:10]
            print(s1)
            s2 = s[0:4]+s[5:10]
            print(s2)
            s3 = s[5:]  # 默认到结尾
            print(s3)
            s4 = s[:10]   # 从头开始
            print(s4)
            s5 = s[:]     # 从头到尾都切出来
            print(s5)
            
            总结: 通过索引获取到的内容, 还是一个字符串
                    切片可以对字符串进行截取
                    语法 s[起始位置: 结束位置]
                    特点:顾头不顾腚(头可以取到,尾取不到)
    

      

          步长
          语法: s[起始位置:结束位置:步长]
          s = "我是梅西,我很慌"
          s1 = s[1:5:2]    # 从1开始, 到5结束, 每2个取1个
          print(s1)    # 是西
          s2 = s[1::3]
          print(s2)    # 是,慌
    
          s3 = s[6:2:-1]     # -表示反着, 每1个取1个
          print(s3)    # 很我,西
    
          s = "这个标点符号很蛋疼"
          s1 = s[7::-2]    # -表示反着, 每2个取1个
          print(s1)    # 蛋号点个    
      2. 字符串的常用操作: 常用方法        
        字符串不可变
         1. upper() # 全部换成大写     
           lower() # 全部换成小写      
           swapcase() # 大小写转换      
           s = "AbCd" 
          
           print(s.upper()) # ABCD
          
           print(s.lower()) # abcd
           
           print(s.swapcase()) # aBcD


         2. strip() # 去掉空格 .strip("xx")也可以去掉左右两端的xx,中间的不行
          
           s = " 我爱 "
          
           print(s.strip()) # 我爱
           s = "**我爱**"
           print(s.strip("*")) # 我爱

         3. replace('a','b',2) # 替换 把a替换成b,替换2个       s = "aelx wusir aelx taibai"
           s1 = s.repalce('alex','taibai',2)  # 把alex替换成sb,替换2个
           print(s1) # sb wusir sb taibai

         4. split() # 字符串切割,用a切割就损失掉a,切边会产生空字符 # 切完放在列表里
           s = "我_爱_你"
           s1 = s.split("_")
           print(s1) # ['我','爱','你']

    5. format() # 格式化输出
           print("我叫{},今年{}岁了,喜欢{}".format("sylar",18,"打篮球")) # 我叫sylar,今年18岁,喜欢打篮球
    6. startswith() # 判断是否以xxx开头
           s = "从何说起"
           print(s.startswith("从")) # Ture
    endswith() # 判断是否以xxx结尾
           s = "abcd"
           print(s.endswith(c)) # False
    8. count("a") # 判断a出现的次数,(不能用于字典dict)
           s = "我真的好爱你,你呢?"
           print(s.count('你')) # 2
            
    9. find() # 查找索引位置. 找不到返回-1.(只能用于字符串)
           s = "你我他"
           print(s.find("你")) # 0
           s = "你我他"
           print(s.find(她)) # -1
           s = "小明的老婆喜欢别人"
           print(s.find("老婆",3)) # 3(每三个算一个,切片找)
    10. index() # 求索引位置(不能用于字典). 注意: 如果找不到索引(index中的内容如果不存在).直接报错
           s = "小明的老婆喜欢别人"
           print(s.index("老婆")) # 3
           print(s.index("我"))  # 找不到,报错
    11. isdigit() # 判断字符串是否由数字组成 12. isalpha() # 是否由字母组成, 不包括小数点 13. isalnum() # 是否由字母和数字组成
           s = "abc123"
           print(s.isdigit())
           print(s.isalpha())
           print(s.isdis)
    14. len() # 内置函数. 直接使用, 不要点操作(通用求str,list,tuple,dict长度)
           s = "我爱你"
           print(len(s)) # 3

         15. center(width,"fillchar") # 把字符串放在20长度的fillchar填充字符(单字符)中间位置
           s = "我爱你"
           print(s.center(9,"*")) # ***我爱你***

    5. 迭代

    for 变量 in 可迭代对象:
    循环体
    else:   #循环完了执行else
    
    # for...else用法:
        # 当迭代对象完成所有迭代后且此时的迭代对象为空时,如果存在else子句则执行else子句,没有则继续执行后续代码;
        # 如果迭代对象因为某种原因(如带有break关键字)提前退出迭代,则else子句不会被执行,程序将会    直接跳过else子句继续执行后续代码
    
    # in有两种⽤法:
        # 1. 在for中. 是把每⼀个元素获取到赋值给前⾯的变量.
            s = "我爱你"
            for i in s:
                print(i) 
        # 2. 不在for中. 判断xxx是否出现在str中.
            s = "我爱你"
            if "" in s:
                print("存在")
  • 相关阅读:
    一些名词的解释
    开源代码从哪里获取
    Joomla软件及其类似物
    js常用随手记
    常用且难记的一些css
    阿里云ecs使用补充说明
    那些年踩过的坑之移动端
    一个题目引发的闭包、函数声明以及作用域的简单思考
    浅析toString()和toLocaleString()的区别
    由[]==![]说开去
  • 原文地址:https://www.cnblogs.com/kangqi452/p/11259042.html
Copyright © 2020-2023  润新知