美文网首页
流程控制语句与字符串

流程控制语句与字符串

作者: 互联网中的一个咸鱼 | 来源:发表于2019-08-21 19:38 被阅读0次

    判断

    if  条件语句:             #注意一定要加上冒号
        执行语句
    elif  1==1:             
        执行语句
    else:
        执行语句
    

    循环

    while True:
        if n==1:
            break
        elif n==2:
            continue
    
    
    for  i  in  'hello  world':
        print(i)
    

    range

    range(开始索引号:结束索引号:步长)
    range(0,10) 代表0到9十个数字

    字符串

    • 创建
    s1 = 'shark'
    s2 = "shark"
    s3 = """hello shark"""
    s4 = '''hello shark'''
    s5 = """hello
    shark
    """
    
    • 拼接
    print("hello"  + "world")
    注意:不能将字符串与非字符串类型的对象进行拼接
    
    • *复制
    print("*" * 20 )     输出20个*号
    print("sadfdsa"  *  0)   字符串和0相乘,会得到一个空字符串
    

    字符串的进阶

    Python中第一个数据结构 序列类型

    • 存放的数据,在其内是有序的,内部的数据是可以通过在其
      内部所处的位置进行访问等操作。

    • 字符串型就是 python 序列类型的数据结构中的一种,本质是
      字符序列

    序列类型的特点
    • 序列里的每个数据被称为序列的一个元素

    • 元素在序列里都是有个自己的位置的,这个位置被称为索引或
      者叫偏移量,也有叫下标的

    • 下标偏移量从 0 开始到序列整个元素的个数减去1结束
      序列中的每一个元素可以通过这个元素的偏移量(索引)来获取到
      而多个元素需要用切片的操作来获取到

    1.获取元素
    • 获取单个元素
    s='shark'
    s[0]  获取单个元素
    s[-1]  获取最后一个元素
    
    • 切片
    [开始索引号:结束索引号:步长]
    s1[0:2]   获取字符串索引为0和1的内容
    s1[::2]   获取字符串内容,隔两个输出一个
    len(s1)    求出字符串的长度
    s1[::-1]   步长为负的代表从右往左开始读取数据
    
    • 字符串对象的方法
    • split
    url='www.baidu.com'
    url.split('.')              输出为['www','baidu','com']
    url.split('.',2)           对前两个.进行切割
    

    • rsplit 从右向左进行切割
      和split类似

    • replace

    url='www.baidu.com'
    url.replace('old','new')          将旧的字符替换为新的字符
    
    • strip 去除两端的空格
    s='     sadf   '
    s.strip()                  结果为s='sadf'
    inp = input(">:").strip()    确保用户输入的内容没有空格
    
    • startswith endswith 判断字符串以什么开头,结尾
    • index 获取一个元素在字符串内的索引
    s='hello world'
    s.index(e)          输出1
    s.index(o)       输出4,找到第一个o就会输出
    
    • title 单词首字母大写
    s='hello  world'
    s.title()              结果为'Hello World'
    
    • upper lower
    s='Hello World'
    s.upper()          结果为'HELLO  WORLD'
    s.lower()        结果为'hello  world'
    s="  i'm shark"
    s.upper()       结果为"I'M  Shark "   输出结果会出问题
    

    扩展

    import  string     导入string包
    string.capwords(s)       结果为"  I'm Shark  "
    string.ascii_lowercase   输出所有小写字母
    string.ascii_uppercase   输出所有大写字母
    string.ascii_letters      输出所有大小写字母
    string.digits               输出所有数字0-9
    
    import   random  导入random包
    random.randint(a,b)   随机生成a到b的值,不包括b
    random.sample(a,n)    在a内随机选n个内容
    random.shuffle(list(a))   打乱列表内的内容顺序
    
    for  ...:
        函数体
    else:
        函数体
    - 只有当循环正常执行完毕时,才会执行一次else的内容
    - 如果程序中途break,就不会执行
    例子:
    n=0
    for i in  range(5):
        n+=1
        if i==3:
            print("中途执行失败")
            break
    else:
        print("正常执行完毕")
    
    #这个循环会输出 “中途执行失败”,因为当i为3的时候,会满足if条件,break推出
    

    all and 与 not

    all([1,0])    会输出False,   判断列表内的所有值,所有都为真的话输出True,由于列表内有一个0,所以会输出False
    all([])       会输出True,与正常理解有所差异
    
    any[1,0]   会输出True
    

    相关文章

      网友评论

          本文标题:流程控制语句与字符串

          本文链接:https://www.haomeiwen.com/subject/ypmmsctx.html