zoukankan      html  css  js  c++  java
  • python全栈-Day 3

    一、索引和切片

    l = [0,1,2,3,4,'a','b',[123,456],'d','e']
    s = 'abcdefghijklmn'
    
    # 索引,序列中的所有元素都是有编号的,从0开始递增,使用负数索引的时候,会从右边开始,也就是最后一个元素开始计数
    # 序列包含:str(字符串)、len(列表)、tup(元组)
    print(s[0],s[7],s[8],s[-2])
    print(l[0],l[7],l[8],l[-2])
    
    # 分片是用来访问一定范围内的元素,分片通过冒号来实现,print(a[m:n]),顾头不顾尾,适用于 序列
    print('步长区别')
    print(s[0:6:2],s[6:0:-2])  #s[首:尾:步长],无步长则默认步长为1
    
    print('步数为正数的时候可输出值:')
    print(s[1:5], s[5:-2], s[-5:-2])
    print('步数为正数的时候则打印空:')
    print(s[5:1],s[-2:-5],s[-2:5],s[0:0],l[0:0])
    
    print('步数为负数的时候可输出值:')
    print(s[4:0:-1],s[-4:0:-1])
    print('步数为负数的时候打印空行')
    print(s[0:4:-1],s[0:-4:-1])
    
    
    print('首/尾为空')
    print(s[0:],s[-3:])
    print(s[:-1],s[:])
    print(s[4::-1],s[-4::-1],s[:4:-1],s[:-4:-1],s[::-1])  #步长为负数,可倒序输出,此时首尾指的是 倒序结果的首尾

    二、字符串str的方法

    str是只读的序列,可使用各种方法生成新的str,其本身是不支持修改的

    #str的增----无
    
    #str的删
    print(s.split('#'))  #将字符串按照规定的字符为中心拆分成列表,且删除被分割的元素
    
    
    #str的改(str的改,会生成一个新的字符串)
    s = 'zxc vbQW ERTAas dfg'
    print(s.replace('d','哈哈',1))    #字符串的部分替换,可控制替换的次数,默认替换全部
    #字母大小写处理
    s = 'zxc vbQW ERTAas dfg'
    print(s.capitalize())   #首字母大写,字母以外的不处理
    print(s.upper())  #字母全部变成大写,字母以外的不处理
    print(s.lower())  #字母全部变成小写,字母以外的不处理
    print(s.swapcase())  #大小写翻转
    print(s.title())  #每个非字母隔开的单词,首字母都大写
    #输出格式变统一
    print(s.center(20))  #字符串在某个总长度上居中,空白默认空格补足
    print(s.center(20,'='))  #def center(self, width, fillchar=None)
    #处理特殊字符
    s = '    123sdksdkfk  jb二哥   '
    print(s.strip())  #默认去掉开头结尾的空格
    s = '   ##e#l fnrefnn#%'
    print(s.strip('#% '))  #可输入一个参数,以参数的每个元素为单位,去掉开头结尾的每个元素
    print(s.rstrip('#% '))  #只处理结尾
    print(s.lstrip('#% '))  #只处理开头
    
    
    #str的查
    print(s.find('d'))  #通过元素找索引:在字符串中寻找某个元素,找到就返回第一个符合的索引,找不到返回-1
    print(s.index('d'))  #通过元素找索引:在字符串中寻找某个元素,找到就返回第一个符合的索引,找不到报错
    
    
    #公共方法
    a = 'sdfsdgdfga1	seff'
    print(a.expandtabs())  #字符串的	去掉,将前面的单词补足到8位/8的倍数位
    s = '123sdksdkfkjb二哥'
    print(len(s))  #打印字符串的字符长度(中文等于一个字符)
    s = 'dk nkfjsddk'
    print(s.count('dk'))  #计算字符串中某个字符串的个数
    print(s.count(s[1:2]))
    
    print(s.startswith(''))  #def startswith(self, prefix, start=None, end=None):
    print(s.startswith('sd'))  #判断字符串某一段的开头是否为字符串,默认对比整个字符串,输出结果为bool,
    print(s.startswith('sd',3,5))
    print(s.endswith('哥'))  #判断字符串某一段的结尾是否为字符串
    
    s = 'sfsdfnslk354'
    print(s.isalnum())   #字符串由字母或数字组成
    print(s.isalpha())   #字符串由字母组成
    print(s.isdigit())   #字符串由数字组成
    
    #format的格式化输出
    s = '我叫{},今年{},爱好{},再说一下我叫{}'
    print(s.format('王静',18,'boy','王静'))
    
    s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'
    print(s.format('太白',18,'boy'))
    
    s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'
    print(s.format(age = 18,name = '太白',hobby = 'boy'))
    
    
    for i in s:    #遍历字符串中的每个元素
        print(i)
    
    if '#' not in s:
        print(True)
    

    三、数据类型整体分析

    1、int:1,2,3用于计算。将其他数据类型转换为int:int(x),x必须为数字

    i = 5
    print(i.bit_length())  #把数字转换成二进制的最少位数

    2、bool:True、False,用于判断。将其他数据类型转换为bool:bool(x),若x == 0/[]/()/{}/空字符串/无参数/空格/None/False/,则输出结果为False,除了以上值,全部输出结果为True

    3、str:'dsfds3545完井',存储少量数据,进行操作。将其他数据类型转换为str:str(x),x没有要求

    4、list:['142',1,'dfg','王静',[1,2,3]],存储大量数据。将其他数据类型转换为list:list(x),x没有要求

    5、tup:元组,是一个只读序列

    6、dic:字典,{'name':'王静','age':18,'other':['haha',1,2,3]},存储大量的关系型数据

    7、集合:{1,2,34,'sdfs','王静'},用的较少

  • 相关阅读:
    刷题笔记
    布隆过滤器
    单例模式,堆,BST,AVL树,红黑树
    B树、B-树、B+树、B*树【转】,mysql索引
    数据结构与算法80道
    海量数据处理【转】
    volcanol的工控博客
    volcanol的工控博客
    volcanol的工控博客
    volcanol的工控博客
  • 原文地址:https://www.cnblogs.com/txbbkk/p/9296351.html
Copyright © 2011-2022 走看看