美文网首页
千锋的第三天

千锋的第三天

作者: 堪怜咏絮才 | 来源:发表于2018-07-18 21:39 被阅读140次

    一、字符串

      (1)认识字符串

    a.用单引号或者双引号括起来的字符集就是字符串
    b.引号中单独的符号、数字、字母等叫字符
    c.转义字符:可以用来表示一些有特殊功能或者是特殊意义的字符(通过在固定的字符前加)
    '--->' 、\--->\ 、\n---->换行 、\t----->制表符 、"----->"
    在计算字符串长度的时候,转义字符代表一个字符

    str='可叹停机德,\'堪怜咏絮才'
    print(str)
    ab=ord('王')
    print(ab)
    print(chr(200000))
    abc='\''
    print(abc)
    str1='jhsjchj'
    str2="hjchdjhsd"
    print(str1)
    print(str2)
    str3='\''
    print(str3)
    str4='\\'
    print(str4)
    str5='\n'
    print(str5)
    str6='\t'
    print(str6)
    str7='\"'     #str7='\"'
    print(str7)
    str8=r'\''
    print(str8)
    运行结果:可叹停机德,'堪怜咏絮才
    29579
    𰵀
    '
    jhsjchj
    hjchdjhsd
    '
    \
    
    
        
    "
    \'
    

      (2)阻止转义

    Python中可以通过在字符串前面加r或者R来阻止转义字符转义

    str1=r'\\'
    print(str1)
    运行结果:\\
    

      (3)Python中字符串中的字符是Unicode编码

    • Unicode码是十六位的对一个字符,一般是八位对一个字符
    • Unicode码包含了ASSCII码,可以表示所有的语言
    • 用ord()函数获取一个字符的Unicode码
    ord1=ord('a')   #先提取出字符a的unicode码,再赋值给变量ord1
    print(ord1,bin(ord1),oct(ord1),hex(ord1))
    运行结果:97 0b1100001 0o141 0x61
    
    • 用chr()函数将Unicode码转换成字符
      **注意:chr()函数括号中必须是十进制、八进制、二进制、十六进制的数字,不能是其他东西,否则会报错。
    print(chr(0x45))
    运行结果:E
    

    二、获取字符串的字符

      1、字符串的长度

    字符是一个有序的字符序列,可以同过len()函数来获取字符串的长度(字符串的长度实质是字符串的个数)

    str1='adhdj\nkds'
    print(len(str1))
    运行结果:9  
    

      2、通过下标获取字符串中的某一个字符

    格式:字符[下标]
    a.顺序获取

    str1='abcd'
    print(str1[2])  #获取第三个字符c,因为python从0开始计数
    运行结果:c
    

    **注意:Python从0开始计数
    b.逆序获取

    str1='abcd'
    print(str1[-1]) #获取最后一个字符,逆序从-1开始
    运行结果:d
    

    c、获取片段(切片)
    格式:字符串[开始下标:结束下标]----->包含开始下标,不包含结束下标

    • a.要求:开始下标对应的字符一定要在结束下标对应的字符前面(步进是正数)
    str1='wang gang'
    print(str1[1:6])
    结果:ang g
    
    • b.开始下标省略:从字符串的最前面取到结束下标前
    str1='wang gang'
    print(str1[:6])
    结果:wang g
    
    • c.结束下标省略:从开始的位置取到字符串结束
    str1='wang gang'
    print(str1[1:])
    结果:ang gang
    
    • d.两个都省略:获取字符串的整个内容
    str1='wang gang'
    print(str1[:])
    结果:wang gang
    
    • e.步进的长度代表每几个取一个字符,默认为1
    str1='wang gang'
    print(str1[::2])
    结果:wn ag
    
    • f.步进是复数的时候,开始下标和结束下标的性质相反,步进为复数是倒着取回来
    str1='wang gang'
    print(str1[5:1:-1])
    结果:g gn
    

    三、字符串的运算

      1.+ :字符串拼接

    格式:字符串1+字符串2

    str1='wang gang'+'zhang min'
    print(str1)
    结果:wang gangzhang min
    

    *注意:+ 两边要么都是数字,要么都是字符串,不能是一个数字一个字符串

      2.* :让字符串重复

    格式:字符串*正数

    str1='wang gang'*5
    print(str1)
    结果:wang gangwang gangwang gangwang gangwang gang
    

      3.in

    格式:字符串1 in 字符串2
    功能是判断字符串1是否在字符串2中---->在就是True,不在就是False

    result='wang' in 'wang gang'
    print(result)
    结果:True
    

      4.not in

    格式:字符串1 not in 字符串2
    功能是判断字符串1是否不在字符串2中---->不在就是True,在就是False

    result='zhang' not in 'wang gang'
    print(result)
    结果:True
    

      5.格式字符串

    %s--->字符串占位符(格式符)

    str1='abcf%ssjfh' %('wang')
    print(str1)
    结果:abcfwangsjfh
    

    %d--->整数占位符(格式符)

    str1='马云爸爸的财产:%d亿元'   %(1000)
    print(str1)
    结果:马云爸爸的财产:1000亿元
    

    %f--->浮点数占位符(格式符)

    str1='π的值是%f'   %(3.141592)
    print(str1)
    结果:π的值是3.141592
    

    %c--->长度是1的字符串占位符(字符占位符)

    str1='我爱我%c'  %('家')
    print(str1)
    结果:我爱我家
    

    补充:%.nf :使用n值限制小数点后面的小数的位数(默认六位小数)

    str1='π的数值是%.1f'   %(3.1415926)
    print(str1)
    结果:π的数值是3.1
    

      6.格式化输出

    name1='李雷'
    name2='韩梅梅'
    time=10000
    print('%s love %s %d年'   %(name1,name2,time))
    结果:李雷 love 韩梅梅 10000年
    

    四、if语句

      1.

    if条件语句:
          条件语句结果为True执行的代码块
    执行过程:先判断条件语句是否为True,如果为True就执行if语句后:后面对应的一个缩进的所有的代码块;如果为False,就不执行冒号后面一个缩进中的代码块,直接执行后续的其他语句

    score=99
    if score>98:
        print('100分才是你的归宿')
    print(score)
    结果:100分才是你的归宿
    99
    

      2.

    if条件语句:
          语句块1
    else:
          语句块2
    执行过程:先判断条件语句是否为True,如果是True就执行语句块1,否则执行语句块2

    score=59
    if score>=60:
        print('一颗棒棒糖')
    else:
        print('请家长')
    print(score)
    结果:请家长
    59
    

    作业:

    2-3 个性化消息: 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消息应非常简单,如“Hello Eric, would you like to learn some Python today?”。

    name='Eric'
    print('Hello'+' '+name+','+' '+'would you like to learn some Python today?')
    结果:Hello Eric, would you like to learn some Python today?
    

    2-4 调整名字的大小写: 将一个人名存储到一个变量中,再以小写、大写和首字母大写的方式显示这个人名。

    name='victory'
    name1=name.lower()
    print(name1)
    name2=name.swapcase()
    print(name2)
    name3=name.capitalize()
    print(name3)
    结果:victory
    VICTORY
    Victory
    

    2-5 名言: 找一句你钦佩的名人说的名言,将这个名人的姓名和他的名言打印出来。输出应类似于下面这样(包括引号):
    Albert Einstein once said, “A person who never made a mistake never tried anything new.”

    name='R.M.Nixon'
    aphorism='\"Our destiny offers not the cup of despair, but the chalice of opportunity. So let us seize it, not in fear, but in gladness.\"'
    print('%s once said,%s'  %(name,aphorism))
    结果:R.M.Nixon once said,"Our destiny offers not the cup of despair, but the chalice of opportunity. So let us seize it, not in fear, but in gladness."
    

    2-6 名言2: 重复练习2-5,但将名人的姓名存储在变量famous_person 中,再创建要显示的消息,并将其存储在变量message 中,然后打印这条消息。

    famous_person='R.M.Nixon'
    message='%s once said,\"Our destiny offers not the cup of despair, but the chalice of opportunity. So let us seize it, not in fear, but in gladness.\"'   %(famous_person)
    print(message)
    结果:R.M.Nixon once said,"Our destiny offers not the cup of despair, but the chalice of opportunity. So let us seize it, not in fear, but in gladness."
    

    2-7 剔除人名中的空白: 存储一个人名,并在其开头和末尾都包含一些空白字符。务必至少使用字符组合"\t" 和"\n" 各一次。 打印这个人名,以显示其开头和末尾的空白。然后,分别使用剔除函数lstrip() 、rstrip() 和strip() 对人名进行处理,并将结果打印出来。

    name='\tAlbert Einstein\n'
    print(name)
    name1=name.lstrip()
    print(name1)
    name2=name.rstrip()
    print(name2)
    name3=name.strip()
    print(name3)
    结果:Albert Einstein
    
    Albert Einstein
    
        Albert Einstein
    Albert Einstein
    

    相关文章

      网友评论

          本文标题:千锋的第三天

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