zoukankan      html  css  js  c++  java
  • Python字符串

    从编码和常用字符串函数两方面进行总结

    1. 编码

      计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等。

      unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换成unicode编码,然后转化成子编码,例如utf8可以转成unicode,再转gbk,但不能直接从utf8转gbk

      所以,python中就有两个方法用来解码(decode)与编码(encode),解码是子编码转unicode,编码就是unicode转子编码

      #encoding:UTF-8

      从Python3.0以后,只要没有带前缀的字符串都是Unicode,将字符串对象编码为字节序列的方法有两种:

      1. str.encode(encoding, errors)

      2. bytes(source, encoding,errors)

    2. 字符串格式化

      字符串格式化和C++一样使用%,但在使用上有区别

    #使用%对字符串进行格式化
    msg = "hello"
    print("%s:%s" %(msg,"world"))
    # 若要显示百分号,必须使用%%
    print("%%%d" %(50))

    (1)字符宽度和精度

      “%10.2f” %pi   #字符宽10,精度2

      可以使用*(星号)作为字符宽度或者精度(或者两者都使用*)

      import math
      print("%0*.*f" %(7,3,math.pi))

      >>> 003.142

    (2)符号、对齐和0填充

      在字符宽度和精度之前还可以放置一个标志,该标志可以是零、加号、减号或空格

      减号(-)用来左对齐数值

      空格(“ ”)在正数前加上空格 

    print("% 5d" %(10) +'
    '+"% 5d" %(-10))

      

      加号(+)表示不管是证书还是附属都标示出符号

    print("%+5d" %(10) +'
    '+"%+5d" %(-10))

      

    3. 字符串方法

      lower()#大写转小写

      upper() #小写转大写

      swapcase() #大小写互换

      capitalize() #首字母大写

      ljust rjust center zfill expandtabs #字符串输出对齐

      find rfind #字符串查找

      index rindex #字符索引

      count #字符出现的次数

      replce strip lstrip rstrip #字符串替换

      split rsplit lsplit

      join(seq) #把seq代表的序列--字符串序列,用字符串S链接起来

      startswith endswith #注意别写错

      isalnum #是否全是字母和数字,并至少有一个字符

      isalpha #是否全是字母,并至少有一个字符

      isdigit #是否全是数字

      isspace islower isupper istitle 

    #coding=utf-8
    
    '''
        字符串基本操作
        split
        join
        strip
                '''
    
    str1 = "you are a super man"
    print (str1.split(" ", 2))
    
    str2 = ["a", "b", "c"]
    print (("-").join(str2))
    
    str3 = "8888888strip888888"
    print (str3.strip("8"))
    print (str3.lstrip("8"))
    print (str3.rstrip("8"))
    
    #str.replace(old, new[, max])
    str4 = "aa bb aa cc aa dd aa"
    print (str4.replace("aa", "---", 3))

    >>> ['you', 'are', 'a super man']
    >>> a-b-c
    >>> strip
    >>> strip888888
    >>> 8888888strip
    >>> --- bb --- cc --- dd aa

     strip()说明

    (1)当rm为空时,默认删除空白符(包括' ', ' ', ' ',  ' ')

    (2)这里的rm删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。

    join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串

  • 相关阅读:
    背景大图隔几秒切换(非轮播,淡入淡出)--变形金刚joy007 项目总结
    call(京基填小票拍照片)
    加载图片、倒计时--Columbia项目总结
    kellogg项目总结
    js 跨域
    js 继承inheritance/extends
    一号店分享会
    日历,类似旅行网站的酒店入住
    js 数组的判断
    Building a Non-blocking TCP server using OTP principles
  • 原文地址:https://www.cnblogs.com/xiaobingqianrui/p/8287592.html
Copyright © 2011-2022 走看看