zoukankan      html  css  js  c++  java
  • python 基础_字符串9

     凡是重要的#

    字符串的创建,字符串可以是单引号创建也可以是双引号创建

    str1 = 'hello world'  #当你要输出的是单引号的时候,你括起字符串的必须是双引号。当你输出的是双引号的时候,你括起字符串的必须是单引号。

    str2 = "hello world"

    #重复输出字符串

    其相对应的操作

    print ("hello"*2)

    #通过索引获取字符串,这里和列表的切片操作是相同的,如下

    print ("luotianyi"[2:])  #这里把字符串看做是列表,而后面跟着的就是对前面列表的操作

    输出结果

    otianyi

    # in成员运算符,如果字符串中包含指定字符就返回True,用法如下

    print ('tian' in 'luotianyi' )  #tian这个字符串是不是包括在luotianyi这个字符串中,如果是就返回个True.不是的话就返回个Flase

    print (123 in [123.456.789])  #也可以来判断某一个元素是否在列表中,返回值和上面的说明是一样的

    # 格式字符串 

    print ("week is %s" % (2) )  #小括号里面可以对其做复杂的运算也可以直接赋予字符串,最后的输出结果是:week is 2

    #字符串的拼接的2种方式

    1.第一种就是开辟第三个内存空间,来存放前2个内存空间中的值。这种方法有重复性,会浪费。所以效率不高

    a = “123”

    b = “abc”

    c = a + b  #开辟第三个内存空间,存放前2个空间中的值

    print (c)   #输出的结果是123abc

    2 ‘ ’jion([ ])  一种字符串的拼接方法。

    解释运用方法:  变量 = ‘多个字符串拼接的时候通过什么来拼接’. jion ([要拼接的变量名])  #要拼接的变量名要用列表括起来。如下所示。

    a = '123'

    b = 'abc'

    c ='----'.join([a.b])

    print (c)   #输出的结果是:123----abc

    #数字符串中特定字符串出现了多少次。字符串的变量名.count('特定字符串')

    a ="luotianyi"

    print (a.count(('i')))

    输出的结果:2

    #字符串的首字符大写,

    a = 'luo tian yi’

    print (zimu.capitalize())

    输出结果:

    Luo tian yi

    #打印特殊字符,并把指定的字符串居中

    zimu = 'luo tian yi'

    print(zimu.center(20,'-'))    #这里center就是变量名,center后面括号里的数是指,从左往右输出特殊符号加上变量的值是占多少序列。当数字小于前面变量的值的序列的话就输出变量的值,大于的话就用特殊符号填充在其值的左右边

    输出结果

    ----luo tian yi-----

    #把字符串放在左边,其余的以规定的字符串填充

    print ('Luo Tian Yi 爱 549'.ljust(18,'-'))  #这里ljuset前面的就是字符串,后面括号里的数字是指,从第一个字符串往右数到第几个开始输出规定的字符串填充。如果数字小于前面的字符串的序列就不输出,只输出字符串。大于的话就在大于后面输出特殊字符串的填充。

    输出的结果

    Luo Tian Yi 爱 549-

    #把字符串放在右边,其余的以规定的字符串填充

    print ('Luo Tian Yi 爱 549'.rjust(18,'-'))  #这里rjuset前面的就是字符串,后面括号里的数字是指,从第一个序列开始输出填充字符。如果数字小于前面的字符串的序列就不输出,只输出字符串。大于的话就在大于前面输出特殊字符串的填充。

    输出的结果

    -Luo Tian Yi 爱 549

    #查看字符串是不是以某个内容结尾,是的话返回True否则的话返回Flase

    zimu = 'luo tian yi'

    print(zimu.endswith('i'))

    输出结果

    True

    #查看字符串是不是以某个内容开头,是的话返回True否则的话返回Flase

    zimu = 'luo tian yi'

    print(zimu.startswith('l'))

    输出结果

    True

    #在规定的位置打印tab

    zimu = 'luo t ian yi'    # 指定某个插入tab的位置

    print(zimu.expandtabs(tabsize=20))  #指定插入tab是有多少个空格,tabsize是expandtabs的一个类

    #查找某个字符串在在指定字符串的位置,只返回第一个的位置.当找不到的时候返回一个-1

    zimu = 'luo tian yi'

    print(zimu.find('t'))

    输出结果

    4

    #查找某个字符串在指定字符串从右往左数的第一个的位置,只返回第一个的位置.当找不到的时候返回一个-1。注意:这里返回的位置依旧是从左往右的位置

    zimu = 'luo tian yi'

    print (zimu.rfind('n'))

    输出结果

    7

    #格式化输出format()

    a = '洛天依的老公{name}is{age}'  #定义一个name,用{ }括起来

    print (a.format(name='wushaojian'),age='18')  #为name赋值

    输出结果

    洛天依的老公wushaojianis18

    #格式化输出format_map()

    a =   '洛天依的老公{name}'  #定义一个name,用{ }括起来

    print (a.format_map(name = {‘name’: wsj}))  #利用的字典进行赋值

    输出结果

    洛天依的老公wsj

    #查找特定的字符串是否在指定的字符串当中

    a = '洛天依的老公{name}'

    print (a.index('wushaojian'))

    输出结果

    其与find的区别就是,find找不到的时候会显示-1,index找不到的时候会直接报错

    #识别变量或字符串中所储存的值有没有数字,字母或是汉字以外的特殊符号或是标点符号。有的话输出Flase没有的话输出True

    a = '洛天依的老公{name}'

    print (a.isalnum())  #因为上面变量a中有{}这种特殊字符,所以会显示Flase

    输出结果

    Flase

    #识别变量或字符串中的值是不是十进制,是的话返回True否则的话返回一个Flase.

    a = '123450'

    print((a.isdecimal()))

    输出结果

    True

    #识别变量或字符串中的是不是整数。是整形的话返回一个True,否则的话返回一个Flase,浮点也是Flase,是Boolean的话直接报错

    a = '12.55'

    print (a.isdigit())

    输出结果

    Flase

    #检验变量名是不是一个非法变量名。是非法变量名的话返回一个Flase,否则的话返回一个True.非法变量名是指数字开头,变量名有空格,有特殊字符等

    print ('变量名'.isidentifier())  #变量值没有错误的话显示True,否则显示Flase

    #识别变量或字符串中的值是不是全部是小写的字母,是的话返回True,否则的话返回Flase.,其他的也返回Flase.

    print ('as'.islower())

    输出结果

    True

    #识别变量或字符串中的值是不是全部是大写的字母,是的话返回True,否则的话返回Flase.,其他的也返回Flase.

    print ('ASCCI'.isupper())

    输出结果

    True

    #识别识别变量或字符串中的值是不是全部是空格,是的话返回True,否则的话返回Flase,其他的也返回Flase

    print (' '.isspace())

    输出结果

    True

    #识别字符串是不是标题。是的话返回一个True,否则的话返回一个Flase。标题指的是用空格分隔开的每一个首字母都要大写。

    print ('Luo Tian Yi'.istitle())

    输出结果

    True

    #把字符串所有的大写字母都以小写的方式输出。当字符串有其他的汉字或是字符串的时候,其他的汉字与字符串不会改。

    print ('Luo Tian Yi 爱549'.lower())

    输出结果

    luo tian yi 爱549

    #把字符串所有的小写字母都以大写的方式输出。当字符串有其他的汉字或是字符串的时候,其他的汉字与字符串不会改。

    print ('Luo Tian Yi 爱549'.upper())

    输出结果

    LUO TIAN YI 爱549

    #反转,把字符串中的所有小写变成大写,所有的大写变成小写。当字符串有其他的汉字或是字符串的时候,其他的汉字与字符串不会改。

    print ('Luo Tian Yi 爱 549'.swapcase())

    输出结果

    lUO tIAN yI 爱 549

    #去除字符串中的,开头和结尾的多余空格以及换行符( )制表符( )。

    print('  hello world             '.strip())

    输出结果

    hello  world

    #去除字符串中的,左边的多余空格以及换行符( )制表符( )

    print(' hello world '.lstrip())

    输出结果

    hello  world      

    #去除字符串中的,右边的多余空格以及换行符( )制表符( )。

    print(' hello world        '.rstrip())

    输出结果

            hello  world

    #字符串里面值的替换,字符串或变量.replace(原本的值,新值,替换几次)  

    print ('hello monkey monkey'.replace('monkey','world',1))  #这里原本的值可以是一个单词也可以是字母

    输出结果

    hello world world

    #字符串的分割。字符串或变量名.split('分割的基准',分割次数)  #这里的分割的基准是指,在字符串中以字符串中的什么为分割线。当字符串作为分割线的时候就不会被打印出来。分割次数指分割几次

    a = 'luo tian yi '

    print (a.split(' '))  #这里我们分割a变量中的值,以值中的空格为分割线分割

    输出结果

    ['luo', 'tian', 'yi']  #最后会以列表的形式存放每一个分割后的值,使其变成列表中的元素

    #字符串的分割,以右边的为准。字符串或变量名.rsplit('分割的基准',分割次数)  #这里的分割的基准是指,在字符串中以字符串中的什么为分割线。当字符串作为分割线的时候就不会被打印出来。分割次数指分割几次。

    print ('luotianyi'.rsplit('i',3))  #这里的rsplit是从右边分割。括号里的I是分割线,后面的数是要分割几次。多余的分割次数会分割出括号

    输出结果

    ['luot', 'any', ' ']  #最后会以列表的形式存放每一个分割后的值,使其变成列表中的元素。而这个括号就是多余的分割次数

  • 相关阅读:
    大数据学习day31------spark11-------1. Redis的安装和启动,2 redis客户端 3.Redis的数据类型 4. kafka(安装和常用命令)5.kafka java客户端
    大数据学习day29-----spark09-------1. 练习: 统计店铺按月份的销售额和累计到该月的总销售额(SQL, DSL,RDD) 2. 分组topN的实现(row_number(), rank(), dense_rank()方法的区别)3. spark自定义函数-UDF
    大数据学习day28-----hive03------1. null值处理,子串,拼接,类型转换 2.行转列,列转行 3. 窗口函数(over,lead,lag等函数) 4.rank(行号函数)5. json解析函数 6.jdbc连接hive,企业级调优
    大数据学习----day27----hive02------1. 分桶表以及分桶抽样查询 2. 导出数据 3.Hive数据类型 4 逐行运算查询基本语法(group by用法,原理补充) 5.case when(练习题,多表关联)6 排序
    大数据学习day26----hive01----1hive的简介 2 hive的安装(hive的两种连接方式,后台启动,标准输出,错误输出)3. 数据库的基本操作 4. 建表(内部表和外部表的创建以及应用场景,数据导入,学生、分数sql练习)5.分区表 6加载数据的方式
    大数据学习day25------spark08-----1. 读取数据库的形式创建DataFrame 2. Parquet格式的数据源 3. Orc格式的数据源 4.spark_sql整合hive 5.在IDEA中编写spark程序(用来操作hive) 6. SQL风格和DSL风格以及RDD的形式计算连续登陆三天的用户
    大数据学习day24-------spark07-----1. sortBy是Transformation算子,为什么会触发Action 2. SparkSQL 3. DataFrame的创建 4. DSL风格API语法 5 两种风格(SQL、DSL)计算workcount案例
    大数据学习day23-----spark06--------1. Spark执行流程(知识补充:RDD的依赖关系)2. Repartition和coalesce算子的区别 3.触发多次actions时,速度不一样 4. RDD的深入理解(错误例子,RDD数据是如何获取的)5 购物的相关计算
    大数据学习day22------spark05------1. 学科最受欢迎老师解法补充 2. 自定义排序 3. spark任务执行过程 4. SparkTask的分类 5. Task的序列化 6. Task的多线程问题
    [POJ] 1325 Machine Schedule(最小点覆盖)
  • 原文地址:https://www.cnblogs.com/luotianyi520/p/8315722.html
Copyright © 2011-2022 走看看