您的位置:首页 > 其它

Day 02 字符串

2018-01-18 16:38 239 查看

 1.字符串的定义:单引号,双引号,三引号都可以定义字符串。

        a=’aaa’;
        b=”bbb”;
        c=’’’ccc’’’;
 2.转义字符:\t制表符  \n换行符
字符串截取:切片[]  [:]  [::]
例如:str=”984011772@qq.com”
      print(str[0]);    获取单个字符,0为第一位,从0开始
print(str[len(str)-1]);    用数组长度函数方法获取字符串最后一位
      print(str[-1]);    获取区间字符,包括前一个不包括后面的数字。     
  print(str[1:5]);    截取1到5-1小标的字符串
print(str[:5]);     截取1到5-1小标的字符串
print(str[:]);       打印所有
print(str[5:]);     从5开始到最后
print(str[-5:]);    从-5开始到最后
print(str[::2]);    每隔2个打印一个字符
print(str[-1:0:-1]);    倒序
print(str[::-1]);    倒序
注:[x:y:z] 从x到y-1,z是步长,z默认是1,z=x+y,当xy均为负数时,z 也必须是负数。
 3.字符串的一些用法
in:判断是否在这些字符串中存在,返回bool布尔类型,true和   false
        email=”984011772@qq.com”;
print(“at” in email);       判断”at”在不在email中,返回false
not in: 判断是否不在这些字符串中存在,返回bool布尔类型,true和 false
print(“qq” not in email);       判断”qq”在不在email中,返回true
r/R:原样输出字符串,如一些特殊字符串”\n”,”\t”,R的使用不区分大小写
print(r”\t 代表一个制表符 \n 换行符”);
 4.字符串格式化
(1) %s字符   %d整数   %f 浮点数  %.xf保留x位小数,四舍五入
      print(‘name:%s’%’tom’);    输出name:tom
       print(‘name:%s  age:%d  money:%.2f’%(’tom’,20,90.456))
    输出为name:tom  age:20  money:90.45
          注:当参数为两个的时候要加小括号
(2) 格式化.format()
    print(‘{}’.format(“hello”));
    print(“姓名:{name},年龄:{age}”.format(name=”张三,age=20”));
    print(“姓名:{0},年龄:{1}”.format(“张三”,20));
 5.字符串的内置操作函数
        mystr=”hello”;
 6.字符串长度: len( )
    print(len(mystr));    输出为5
 7.找区间内某字符出现的次数:count( )
    print(mystr.count(sub,start=0,end=len(mystr)));
  参数sub为要寻找的元素,参数start=0时即从0开始,即通过下标寻找,参数end为到哪结束
  8.将字符串的第一个字符转换成大写:capitalize( )
    print(mystr.capitalize());   输出为Hello   #没有参数
  9.将每天一个单词首字母大写:title( )
    str=”hello world”;
    print(str.title()); 输出为Hello World,注意单词之间要有空格   #没有参数
  10.找字符串,返回找到字符串的下标,返回的是第一次出现的位置:find( )
    print(mystr.find(sub,start=0,end=len(str)));
  参数sub为要寻找的元素,参数start=0为从哪开始找,从0开始,即通过下标寻找,参数end为从哪结束
        注:能找到返回值为非负数,不能找到返回值是-1
  11.从右开始找:rfind( )
    print(mystr.rfind(sub,start=0,end=len(str)));  参数同上
  12.找字符串,返回找到字符串的下标:index( )
    print(mystr.index(sub,start=0,end=len(str)));
  参数sub为要寻找的元素,参数start=0为从哪开始找,从0开始,即通过下标寻找,参数end为从哪结束
        注:能找到返回值为非负数,不能找到抛异常
  13.从右开始找:rindex( )
    print(mystr.rindex(sub,start=0,end=len(str)));  参数同上
  14.替换:replace( )
    print(mystr.replace(“hello”,”nihao”));
  把hello替换成nihao,但是原字符串不会被改变。
15.拆分:split( )
    print(mystr.split(x,y)); 
    以x为分割,分割y次
      1.x会被去除;
      2.如果y超过能分割的次数,会执行能分割的最大次数
         注:如果split()没有参数,就是通过\t和空格进行拆分,并返回数组
16.从xx开始:startswith( )
      print(mystr.startswith(x,y,z));     判断是不是以x开头,在区间y到z中间找,并返回true或false
17.从xx结尾:endswith( )
      print(mystr.endswith(x,y,z));     判断是不是以x结束,在区间y到z中间找,并返回true或false
18.忽略大小写:lower() 转化为小写   upper() 转化为大写
      print(mystr.lower());    #转化为小写
      Print(mystr.upper());    #转化为大写
19.对齐:ljust 左对齐   rjust 右对齐  center 居中对齐
      print(mystr.ljust(x,y));     左对齐
      print(mystr.rjust(x,y));     右对齐
      print(mystr.center(x,y));    居中对齐
注:一共有x个字符,没有字符的地方用y代替
20.去除所有空格:strip( )
      print(mystr.strip());
21.去除左侧空格:lstrip( )
      print(mystr.lstrip());
22.去除右侧空格:rstrip( )
      print(mystr.rstrip());
23.以字符为节点进行拆分:partition( )
    print(mystr.partition(x));  以x为节点进行拆分,返回头部、分隔符x,尾部三部分,返回三个元组,以第一个分隔符进行分割
24.按照换行符进行拆分:splitlines( )
    print(mystr.splitlines());
注:如果字符串中包含\n,结果默认为false,返回值不包含\n,如果想保留\n,则需要设置true。
        例如:print(mystr.splitlines(true))
25.判断字符串是不是字母或文字,返回true或false:isalpha( )
      print(mystr.isalpha());
26.判断字符串是不是数字,返回true或false:isdigit( )
      print(mystr.isdigit());
27.判断字符串是不是数字、字母或文字,返回true或false:isalnum( )
      print(mystr.isalnum());
28.将列表组成新的字符串:join( )
      print(mystr.join());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: