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

    ---恢复内容开始---

    一、编码知识的回顾:1)ascii: 最开始是简单的密码本,一个字符八个字节,最左边都是0;                                                                   

                                                     (2)万国码,unicode,目前两个版本,两个字节(16位)表示一个字符,四个字节(32位)表示一个字符。

                                                     (3)unicode 的升级  ——utf-8:用最少的位数(字节)表示一个字符,英文字符:

                                                              一个字节,欧洲有些语言用两个字节表示,亚洲等国家用三个字节来表示;

                                                      (4)gbk :中国特有的:两个字节表示一个字符。        

     二、  例题: "李洁”用utf-8表示有6个字节。gbk:四个字节                                                                                                                    

                                 字符串与数字之间的转换的条件是什么? int(True)==1    int(False)==0

     面试题:

    print(int(True))    # 1
    print(int(False))   #0
    print(bool(1))  #True
    print(bool(0))  #False

     优先级:

    ()>not>and>or

    print(1 or 1>4)     #1
    print(1>1 or 2)     #2
    print(3 and 0)      #0
    print(2>1 or 3>4 and 5)     #True
    print(1 or 3 or 3>4 and 5)      #1

     三、数据的基本类型

    1、int. 数字,运算。1、2、3、。。

    2、bool  判断真假:True     False

    3、str简单少量的储存数据,并进行相应的操作

    4、tupe   元组  (2,“sdsf”)

    5、list   列表:大量数据储存 [1,"sdsfew",True,["fdss]

    6、dict:  字典{“name”:"hao","age":18}

    7、set 集合

    (1)首字母大写 其余小写

    ret="asdDDse"
    ret1=ret.capitalize()
    print(ret1)     # Asdddse

    (2)   upper     lower   全部变成大写或者小写

    ret="asdDDse"
    ret2=ret.upper()
    print(ret2)                 #ASDDDSE
    ret3=ret.lower()
    print(ret3)                #asdddse 

    例子 验证码的输入

    name="LiuYahong".upper()
    name1=input("请您输入验证码,不区分大小写").upper()
    if  name1==name:
        print("验证码正确!")
    else:print("验证码错误,请您重新输入")

    (3)swapcase  大小写字母翻转

    ret="asd,dDse"
    ret4=ret.swapcase()
    print(ret4)       #ASD,DdSE

    (4)center      居中    (重要)

    ret="asddDse"
    ret5=ret.center(20)
    ret6=ret.center(20,"*")
    print(ret5)                      #      asddDse       
    print(ret6)                      #******asddDse*******

    (5)startswith    endswith     切片 查找元素返回bool值

    ret="asddDse"
    ret7=ret.startswith("a")
    ret8=ret.startswith("b")
    print(ret7)                          #True
    print(ret8)                           #False
    ret9=ret.endswith("e")
    print(ret9)                           #True
    ret10=ret.startswith("d",2,5)         (切片)
    print(ret10)                          #True

    (6)count   计算某元素的数量 可以切片

    ret="asddDse"
    ret12=ret.count("d")
    print(ret12)                        #2
    ret14=ret.count("w")
    print(ret14)                           #0
    ret13=ret.count("d",1,4)       (切片)
    print(ret13)                          #2

    (7)exspantabs  默认将第一个tab键变成8个空格,如果tab前不足8个则补全,如果tab键前面的字符超过八个则按八的倍数补全

    ret="asddDs333333e	"
    ret15=ret.expandtabs()       
    print(ret15)                           #asddDs333333e  
    print(len(ret15))                      #16

    (8)find   index   *find 通过元素查找索引(找到第一个元素),找不到则返回-1   

                                  index通过元素查找索引 ,找不到则报错

    ret="asddDse"
    ret16=ret.find("a")
    print(ret16)                       #0
    ret17=ret.find("f",0,5)          (可切片)
    print(ret17)                       #-1

    (9)strip 两端消除空格(可以去掉指定的字符在两端的,不允许有空格)  lstrip左端消除  rstrip右端消除

    可以删除指定元素

    ret="   asddDse    "
    print(ret.strip())           #asddDse
    print(ret.rstrip())          #   asddDse
    print(ret.lstrip())          #asddDse   
    ret="asddDse    "
    print(ret.strip("a")) #asddDse
     
    print(name.lstrip("al"))     #2)移除name变量左边的’al’并输出处理结果
    print(name.rstrip("Nb")) #3)移除name变量右面的’Nb’,并输出处理结果
    print(name.strip("ab")) #4)移除name变量开头的a’与最后的’b’,并输出处理结果
     

     (10)split  将字符串分割成列表(以空格 指定字母为界限  可以指定步长)

    ret="as   ddD  se222222222222"
    print(ret.split())           #['as', 'ddD', 'se222222222222']
    print(ret.split("s"))      #['a', '   ddD  ', 'e222222222222']
    print(ret.split("s",1))   #['a', '   ddD  se222222222222']

    (11)replace  替换元素(可以设置替换次数)

    ret="asddDse"
    print(ret.replace("a","f"))       #fsddDse
    print(ret.replace("d","w",1))      #aswdDse

    (12)format  格式化输出

    第一种方法:
    ret18="name:{},add:{},age:{}".format("liu","china",24) print(ret18) #name:liu,add:china,age:24
    第二种方法
    ret19="name:{0},add:{1},age:{2},name:{0}".format("liu","china",24)
    print(ret19)
               #name:liu,add:china,age:24,name:liu
    第三种方法:键值对
    ret20="name:{name},add:{add},age:{sge}".format(name="liu",add="china",sge=24)
    print(ret20)
                #name:liu,add:china,age:24

    (13)isalnum    isdigit    isalpha    判断字符串的组成返回bool值

    ret21="123fdsfvg31"
    print(ret21.isalnum())      #字符串由字母或者数字组成  True  
    print(ret21.isdigit())      #字符串只由数字组成             False  
    print(ret21.isalpha())      #字符串只由字母组成             False

    (14)例子:打印字符串 利用while循环 或者if 条件语句

    1、改变条件

    ret="123fdsfvg31"
    index=0
    while index<len(ret):
        print(ret[index])
        index+=1

    2、break 结束

    ret="123fdsfvg31"
    index=0
    while  True:
        #if index !=len(ret):
            print(ret[index])
            index+=1
        #else:
            if index ==len(ret):
                break

    15、for 循环   for 变量 in可迭代对象

    (接上个打印字符串的例子)第三种方法

    ret="123fdsfvg31"
    for i in ret:
        print(i)

    例子:计算字符串中的数字数量(利用for循环)

    ret="123fdsfvg31"
    count=0
    for i in ret:
        if i.isdigit():
            count+=1
        else:continue
    print(count)            #5

     16、bit_length()    int(数字类型)查看数字所占的二进制的位数

    v = 16
    data = v.bit_length()
    prin数字t(data)           #4

    17、bool与 str 之间的转换      bool   = True(1)  False(0)   

         非空字符串转换成bool值是True     空字符串转换成bool值是False

    bool ——str
    print(str(True),type(str(True)))          #True <class 'str'>
    print(str(False))                               #False
    
    int——bool                                        #True
    print(bool(1))
    print(bool(0),type(bool(0)))            #False <class 'bool'>
    
    bool——int
    print(int(True),type(int(True)))         #1 <class 'int'>
    print(int(False))                               #0

    18、例子 空字符串

    name="  "                表示空格代表的是True
    if name:
        print("输入正确内容")
    else:
        print("请重新输入")            
    
    
    #输入正确内容

    19、索引和切片

    索引和切片[起始位置:结束位置;步长]

    name="我爱中华,我爱中国"
    print(name[0:1])                     #
    print(name[1:6:2])                 #爱华我
    print(name[:7])                    #我爱中华,我爱
    print(name[2:-1])                   #中华,我爱中
    print(name[:])                      #我爱中华,我爱中国
    print(name[::-3]) #国我中

      

     

  • 相关阅读:
    C#之枚举
    C#之判断字母大小、字母转ACII码
    C#之BF算法
    md5如何实现encodePassword加密方法
    基本配置及安全级别security-level
    js中“原生”map
    web.xml讲解
    java application指的是什么
    .conf、.bak是什么格式
    Maven系列--web.xml 配置详解
  • 原文地址:https://www.cnblogs.com/number1994/p/7854360.html
Copyright © 2011-2022 走看看