zoukankan      html  css  js  c++  java
  • DAY02

    字符串

    定义:在单引号双引号三引号内,由一串字符组成

    name='PatHoo' #本质为 name=str('PatHoo')

    常用方法:

    索引

    1 name='PatHoo'
    2 print(name[0])
    >>> P
    3 print(name[1000])
    >>> #IndexError: string index out of range

    移除(默认移除空格)

    1 name=input('username: ').strip()
    2 print(name)
    3 
    4 name='***PatHoo********'
    5 print(name.strip('*'))
    >>> PatHoo
    6 print(name.lstrip('*'))
    >>>
    PatHoo********
    7 print(name.rstrip('*'))
    >>> ***PatHoo

    切分(默认按空格切分)

    1 user_info='root:x:0:0::/root:/bin/bash'
    2 print(user_info.split(':')[5])
    >>> /root
    3 cmd_info='get|a.txt|333333333'
    4 print(cmd_info.split('|')[0])
    >>> get
    5 print(cmd_info.split('|',1)) #切分一次 >>> ['get', 'a.txt|333333333']
    6 msg='name PatHoo age 18'
    7 print(msg.split())
    >>> ['name', 'PatHoo', 'age', '18']

    取长度

    1 name='PatHoo'
    2 print(name.__len__())
    >>> 6
    3 print(len(name)) #name.__len__()
    >>> 6

    切出子字符串

    1 name='hello world'
    2 print(name[1])  #下标从0开始
    >>> e
    3 print(name[1:7]) #不包含末尾的下标
    >>> ello w
    4 print(name[1:7:3]) #每隔2个字符
    >>> eo

    字符的其他方法(掌握)

    1 name='Patrick Hoo'
    2 print(name.endswith('oo'))
    >>> True
    3 print(name.startswith('P'))
    >>> True
    1 name='PatHoo say: i have a dream, my name is PatHoo.'
    2 print(name.replace('PatHoo','VIMMER',1))
    >>> VIMMER say: i have a dream, my name is PatHoo.
    1 print('{} {} {}'.format('PatHoo',18,'male'))
    >>> PatHoo 18 male
    2 print('{0} {1} {0}'.format('PatHoo',18,'male'))
    >>> PatHoo 18 PatHoo
    3 print('NAME:{name} AGE:{age} SEX:{sex}'.format(age=18,sex='male',name='PatHoo'))
    >>> NAME:PatHoo AGE:18 SEX:male
    1 num='123'
    2 print(num.isdigit())
    >>> True
    1 while True:
    2     age=input('>>: ').strip()
    3     if len(age) == 0:continue
    4     if age.isdigit():
    5         age=int(age)
    6         print(age,type(age))

    字符其他需要了解的方法

    1 name='PatHoo hello'
    2 print(name.find('o')) #找到则显示第一个字符的下标
    >>> 4
    3 print(name.find('x')) #没找到显示-1, 不报错
    >>> -1
    4 print(name.find('l',8,11)) #按范围查找 >>> 9 5 print(name.index('o')) #找到则显示第一个字符的下标
    >>> 4
    6 print(name.index('x')) #没找到报错
    >>> ValueError: substring not found
    1 name='PatHoo hello'
    2 print(name.count('o',3,6))
    >>> 2
    1 L=['PatHoo','say','hello','world'] #用join方法拼接, 列表内容必须都是字符串
    2 print(':'.join(L))
    >>> PatHoo:say:hello:world
    1 name='PatHoo'
    2 print(name.center(30,'*'))
    >>> ************PatHoo************
    3 print(name.ljust(30,'*'))
    >>> PatHoo************************
    4 print(name.rjust(30,'*'))
    >>> ************************PatHoo
    5 print(name.zfill(30))
    >>> 000000000000000000000000PatHoo
    1 name='PatHoo	hello'
    2 print(name)
    >>> PatHoo hello
    3 print(name.expandtabs(1)) #TAB键用1个空格表示
    >>> PatHoo hello
    1 name='PatHoo'
    2 print(name.lower())
    >>> pathoo
    3 name='PatHoo' 4 print(name.upper())
    >>> PATHOO
    1 name='PatHoo say'
    2 print(name.capitalize()) #首字母大写
    >>> PatHoo say
    3 print(name.swapcase()) #大小写翻转
    >>> pAThOO SAY
    4 msg='PatHoo say hi' 5 print(msg.title()) #每个单词的首字母大写
    >>> PatHoo Say Hi
    6 name='PatHoo123' 7 print(name.isalnum()) #字符串由字母和数字组成
    >>> True
    8 name='PatHoo' 9 print(name.isalpha()) #字符串只由字母组成
    >>> True
     1 num1=b'4' #Bytes
     2 num2=u'4' #unicode,python3中无需加u就是unicode
     3 num3='' #中文数字
     4 num4='' #罗马数字
     5 
     6 #bytes,unicode
     7 print(num1.isdigit())
    >>> True
    8 print(num2.isdigit())
    >>> True
    9 print(num3.isdigit())
    >>> False
    10 print(num4.isdigit())
    >>> False
    11 12 13 #isdecimal:unicode 14 print(num2.isdecimal())
    >>> True
    15 print(num3.isdecimal())
    >>> False
    16 print(num4.isdecimal())
    >>> False
    17 18 19 #isnumberic:unicode,汉字,罗马 20 print(num2.isnumeric())
    >>> True
    21 print(num3.isnumeric())
    >>> True
    22 print(num4.isnumeric())
    >>> True
  • 相关阅读:
    输出1-100 , 奇数偶数分别添加标识(for循环语句嵌套if-else语句)
    输出 1-100 内的奇数和偶数,并对其分别求和(while嵌套if-else循环)
    1至100累加求和问题
    淡旺季机票的价格问题(switch语句与if-else语句嵌套)
    (折扣计算)需求说明:普通顾客购物满100元打9折;会员购物打8折;会员购物满200元打7.5折(判断语句if-else和switch语句的嵌套结
    随机产生1-12的整数 , 根据产生整数输出一下该月份的季节信息(Math.random()和if语句的应用)
    在Hibernate单向一对多关联关系中的org.hibernate.StaleStateException 异常。
    关于Hibernate的报错org.hibernate.MappingException: Unknown entity
    Hibernate多对一关联关系
    关于映射异常org.hibernate.MappingException: An association from the table DUTY_INFO refers to an unmapped class: com.pms.entities.other.Department的原因。
  • 原文地址:https://www.cnblogs.com/hugengfeng/p/7291967.html
Copyright © 2011-2022 走看看