• 字符串基本操作,数据类型介绍与基本使用


    今天的主要内容有:

    1.数字类型

    2.字符串类型和字符串类型的常规操作

    3.字符串的重要操作方法

    4.列表类型和列表类型的常规操作

    数字类型

    1.整形 int                a = 123456

    2.浮点型 float         b = 1.23456

    3.布尔类型 bool     c = True

    4.复数 complex      d =  complex(5, 4) # 5 + 4j

              print(num + (4 + 5j))

    字符串类型

    使用 

    一个单引号或者一个双引号开头以及结尾 

     a = ' 123 '     或者 a = '' 123'' 

    三个单引号或者三个双引号开头以及结尾 

     a = ''' 123 '''  或者 a = """ 123 """

    也可以通过引号的嵌套,使内部不同的引号在不转义的情况下直接输出

    s3 = """我是"好学生",三好'学生' """
    print(s3)

    字符串的常规操作

    1.字符串的索引取值:字符串[index]

    正向取值从0编号,反向取值从-1编号

    正向取值
    s1 = '123abc@#'
    print(s1[2],s1[6])
    反向取值
    s1 = '123abc@#'
    print(s1[-1],s1[-3])

    2.字符串拼接

    s1 = '我好'
    s2 = '帅'
    print(s1 + s2 )
    如果需要拼接其他类型
    a = 10
    b = "20"
    c = True
    res = '%s%s%s'%(a,b,c)
    print(res) #格式化操作
    或者
    a = 10
    b = "20"
    c = True
    res = str(a) + str (b) +str(c)
    print(res) # 转换类型输出

    3.字符串长度

    a = '我好帅'
    print(len(a))

    4.字符串切片

    s1 = '123wer@#$'
    print(s1[1:5:]) #切片,设定起始与结束
    s1 = '123wer@#$'
    print(s1[1:5:2]) # 可以设定步长

    5.成员运算

    s1 = '123wer@#$'
    print('123'in s1)
    print('123' not in s1) # 可以判断字符串在不在字符串中

    6.字符串循环

    s1 = '123wer@#$'
    for i in s1:
    print(i) # 使用for循环迭代器,依次循环字符串中的每个字符

    重要方法

    1.索引(目标字符串的索引位置)

    s1 = '123'
    print(s1[1]) # 按照索引来取值

    2.去留白(默认去两端留白,也可以添加指定字符)

    s1 = '  qwe   '
    print(s1.strip()) # 去留白
    s1 = '***qwe***'
    print(s1.strip('*')) # 去除指定的任意字符
    s1 = '***qwe***'
    print(s1.lstrip('*'))# 去除左边字符或留白
    print(s1.rstrip('*'))# 去除右边字符或留白

    3.计算子字符串个数

    s1 = '123123qwe'
    print(s1.count('123')) # 计算子字符串‘123’在字符串中的个数

    4.判断字符串是否为数字:只能判断正整数

    s1 = '123123'
    print(s1.isdigit()) #判断字符串是否为正整数组成,返回结果是bool类型

    5.大小写转换

    s1 = 'Abcd'
    print(s1.upper()) # 全部转换为大写
    s1 = 'Abcd'
    print(s1.lower()) # 全部转换为小写
    s1 = 'abcd efg'
    print(s1.capitalize())# 字符串首字母大写 此处输出结果为 ' Abcd efg '
    s1 = 'abcd efg'
    print(s1.title()) # 单词首字符大写 此处输出结果为 ' Abcd Efg '
    s1 = 'AbcD eFg'
    print(s1.swapcase()) # 字符串大小写反转,大写变小写,小写变大写 此处输出结果为 aBCd EfG
    
    

    6.以什么开头或结尾

    s1 = 'abcd efg'
    print(s1.startswith('ab')) # 判断是否以 'ab' 开头,返回值是bool类型
    s1 = 'abcd efg'
    print(s1.endswith('fg')) # 判断是否以 ' fg' 结尾 返回值是bool类型

    7.替换

    s1 = "我是好‘学森’,还是三好'学森'"
    print(s1.replace('学森','学生')) # 只能替换一个相同字符,默认替换全部相同字符
    s1 = "我是好‘学森’,还是三好'学森'"
    print(s1.replace('学森','学生',1))#也可以指定替换字符的个数,后面的数字是几个就会替换几个

    8.格式化

    user = 'name :{} ,age : {} '
    print(user.format('liguo','123')) #格式化,默认是按从左至右按顺序格式化
    user = 'name :{1} ,age : {0} ,'
    print('name :{1} ,age : {0} ,'.format(18,'liguo'))# 可以按索引(0开始)标注位置,一个值可以多次利用
    user = 'name :{1} ,age : {0} ,'
    print('name :{a} ,age : {b} ,'.format(a='liguo',b=18))# 也可以指名道姓的添加

    需要了解的操作:
    1. find | rfind:查找子字符串索引,无结果返回-1
    2. lstrip:去左留白
    3. rstrip:去右留白
    4. center | ljust | rjust | zfill:按位填充
    语法:center(所占位数, '填充符号')
    5. expandtabs:规定 所占空格数
    6. captialize | title | swapcase:首字母大写 | 单词首字母大写 | 大小写反转
    7. isdigit | isdecimal | isnumeric:数字判断
    8. isalnum | isalpha:是否由字母数字组成 | 由字母组成
    9. isidentifier:是否是合法标识符
    10. islower | isupper:是否全小 | 大写
    11. isspace:是否是空白字符
    12. istitle:是否为单词首字母大写格式

    列表类型

    定义:1.list中可以存放多个值,可以存放所有数据类型

               2.list中有序的,可以通过索引取值

    常规操作

    1.索引取值:列表名[index]

    a = ['a','b','c','d','e','f']
    print(a[1])

    2.列表运算:得到的新的list

    a = ['a','b','c']
    b = ['d','e','f']
    print(a+b)
    print(a*b)

    3.list的长度

    a = ['a','b','c','d','e','f']
    print(len(a))

    4.切片

    a = ['a','b','c','d','e','f']
    print(a[0:4:2])

    5.成员运算

    a = ['a','b','c','d','e','f']
    print('a' in a)
    print('a' not in a)

    6.循环

    a = ['a','b','c','d','e','f']
    for i in a:
    print(i)

    增删改查

    增:

    a = ['a','b','c','d','e','f']
    a.append('我是菜鸟')
    print(a)

    删:

    a = ['a','b','c','d','e','f']
    a.remove('c')
    print(a) # 用remove 指定删除某个值

    a = ['a','b','c','d','e','f']
    a.pop(2)
    print(a) # 用pop按索引(index)删除某个值

    a = ['a','b','c','d','e','f']
    del a[b] #可以删除列表中的指定值
    del a # 也可以直接删除列表,删除后没有返还值

    a = ['a','b','c','d','e','f']
    a.clear()
    print(a) # 清空列表,返回一个空列表

    改:

    a = ['a','b','c','d','e','f']
    a[2] = 666
    print(a) #按索引改值

     

    查:

    a = ['a','b','c','d','e','f']
    print(a[4]) #按索引查值

    列表的增删改查

    需要了解的方法

    1.排序  只能针对同等类型的值

    a = ['a','c','e','b','d','f']
    b = [7,5,2,8,3,4,9,]
    a.sort()
    b.sort()
    print(a,b) # 默认是正向排序
    a = ['a','c','e','b','d','f']
    a.sort(reverse=True)
    print(a) # 使用reverse来反向排序

    2.反转

    a = ['a','c','e','b','d','f']
    a.reverse()
    print(a) # 按存储的顺序来反转,也就是倒序存储

    3.计算值的个数

    a = ['a','c','c','b','d','c']
    print(a.count('c')) #计算元素 ‘ c '在列表中的个数

     

    需要知道的方法

    1.整体增加,默认添加到末尾

    a = [1,2,3]
    a.extend('abbb')
    print(a) # 会把字符串拆分为一个个字符,添加到列表,添加到末尾

    a = [1,2,3]
    a.extend([1,2,3,'123'])
    print(a) # 也可以添加列表到列表内,列表内可以为一个或多个值

    2.目标的索引位置,可以规定查找区间

    ls = [1,2,3,1,2,3,1,2,3]
    a = ls.index(1,2,6) # (1(是需要查询的值),2(是查询的起始位置),6(是查询的结束位置,但不包括结束位置))
    print(a) # 返还的值是第一次出现查询的值的位置在哪个索引
  • 相关阅读:
    求大神回答这个管理系统不知道为啥不成功急!
    这个函数到底什么意思如何调用
    判断浮点数是否为零的问题
    字符串与列表的 常用方法
    变量名命名规范 运算符 流程控制
    ACM C++
    struts s:iterator循环遍历数据 自动生成序号
    JAVA将一个EXCEL多行订单产品字符串分解成一个个子订单 +连接符连接
    JS在HTML中获取到所有选中的checkbox的值
    自己做的java-WEB项目。希望360浏览器能够默认使用极速模式打开
  • 原文地址:https://www.cnblogs.com/liguodeboke/p/10726139.html
Copyright © 2020-2023  润新知