找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手

python中字符串,列表,元组对应的内置函数

[复制链接]
字符串函数:
str:函数方法,给字符串提供服务的函数方法


# 首字母大写的方法.capitalize
# str1 = "username"
# print(str1.capitalize())          # Username

# title 首字母大写的方法,碰到下划线或者空格那么会将字符串当中
# 的内容转换成驼峰式命名
# print(str1.title())               # Username
# str1 = "user_name"
# print(str1.title())               # User_Name

# 字符串分割的方法,split : 返回到list列表当中
# str1 = "user name"
# a = str1.split(" ")               # 通过空格分割完成后将结果赋值给a
# print(a)                          # ['user', 'name']
# print(type(a))                    # <class 'list'>
# a = str1.split("s")
# print(a)                          # ['u', 'er name']

# join函数:拼接字符串:
#     1.对象:list,将多个字符串合并成一个内容
# list1 = ["user", "name:", "wuhan"]
# print("".join(list1))             # username:wuhan
#     2.操作字符串
# str1 = "username"
# print("_".join(str1))             # u_s_e_r_n_a_m_e

# count() : 统计内容出现的次数
# str1 = "username"
# print(str1.count("u"))            # 1

# len() 函数,统计序列的长度,不属于str类独有的函数,所以不能通过str来调用
# print(len(str1))                  # 8
# ctrl + 鼠标左键 可以查看函数所在的位置和类型

# 分割函数:strip() 删除,不给删除的值默认删除左右两边的空格
# 默认从两边一起删除
# str1 = "        user name        "
# print(str1)                     #         user name
# print(str1.strip())             # user name

# str1 = "aq user name qa"
# print(str1)                     # aq user name qa
# print(str1.strip("aq"))         #  user name

# lstrip:默认是从左边开始删除,默认删除空格
# rstrip:默认是从右边开始删除,默认删除空格
# str1 = "aq user name qa"
# print(str1.lstrip("aq"))        #  user name qa
# print(str1.rstrip("aq"))        # aq user name

# startswith : 用于判断当前的字符串是以什么开头,返回的是布尔值
# str1 = "file.txt"
# print(str1.startswith("1"))     # False
# print(str1.startswith("f"))     # True

# 判断当前的用户是不是vip用户
# name = input("请输入你的用户名:")       # 请输入你的用户名:vip3
# if name.startswith("vip"):
#     print("尊贵的vip用户")               # 尊贵的vip用户
# else:
#     print("普通用户")

# endswith : 用于判断当前的字符串是以什么结尾,返回的是布尔值
# str1 = "file.txt"
# print(str1.endswith("txt"))       # True
# print(str1.endswith("file"))      # False

输入上传一个文件,需要判断当前的文件是不是txt或者是xls文件/png/git
# file = input("请输入你上传的文件名称:")
# if file.endswith("txt") or file.endswith("xls") \
#         or file.endswith("png") or file.endswith("git"):
#     print("该文件符合类型")
# else:
#     print("该文件不能上传")

index :查看对应字符串的索引位置
# str1 = "12345678901"
# print(str1.index("0"))                  # 9
# 当对应的字符在str中有多个时,默认显示的是最小的索引位置值
# print(str1.index("1"))                  # 0
# 当所查找的字符在str中不存在时,报错
# print(str1.index("a"))                  # 报错

find 方法:查看对应字符串的索引位置,默认从左往右开始查找
# 当所查看的字符在str中不存在时,返回-1
# print(str1.find("a"))                   # -1

rfind : 从右边开始查找
# print(str1.rfind("1"))                  # 10
# print(str1.rfind("0"))                  # 9

replace :替换当前字符串当中的值
    1.第一个参数:替换前的值
    2.第二个参数:被替换后的值
    3.第三个参数:替换的次数
注意:replace替换不会修改字符串原来的值

# str1 = "username"
# a = str1.replace("u", "U").replace("n", "N")
# print(a)                                # UserName

# str1 = "hhhhuuuu"
# print(str1.replace("h", "H", 1))        #Hhhhuuuu

upper :将所有的字母改为大写
# str1 = "abcd"
# print(str1.upper())                     #ABCD

lower :将所有的字母改为小写
# str1 = "aGGGGd"
# print(str1.lower())                     #aggggb

islower :判断当前的值,是否全部为小写
# str1 = "abcd"
# print(str1.islower())                   # True

"isupper :判断当前的值,是否全部为大写
# str1 = "ABCDe"
# print(str1.isupper())                   # False

isdigit :判断当前字符串的内容是否全部为数值
# str1 = "123456789"
# print(str1.isdigit())                   # True

isalpha :判断当前字符串是否全部为字母汉字
# str1 = "abcd混合"
# print(str1.isalpha())                     # True
# print("中国".encode("utf-8").isalpha())   # False
# print("中国".isalpha())                   # True

istitle :判断当前字符串的首字母是否为大写,其他的是否为小写
# str1 = "USer"
# print(str1.istitle())                     # False
# str1 = "User"
# print(str1.title())                       # True

isalnum :判断当前的字符串是否为字母数值汉字的组合
# str1 = "aaa2222汉字"
# print(str1.isalnum())                     # True

字符串相加的功能:
相加的功能 支持 + 法运算:
                * 重复输出


# str1 = "hello"
# str2 = "word"
# print(str1 + str2)                      #helloword
# print(str1 * 3)                         #hellohellohello


python当中的序列:list 列表 表达式:[]

list 也支持索引和切片功能

# 定义一个list
# list1 = [11, 11.1, "abc", "武汉多测师"]
# print(list1)                            # [11, 11.1, 'abc', '武汉多测师']
# print(type(list1))                      # <class 'list'>

# 索引取值
# list1 = [11, 11.1, "abc", "武汉多测师"]
# print(list1[3])                         # 武汉多测师
# print(type(list1[3]))                   # <class 'str'>
# print(type(list1[0]))                   # <class 'int'>
# print(type(list1[1]))                   # <class 'float'>

# 切片:
# print(list1[2:])                        # ['abc', '武汉多测师']

# list 可以通过索引位置进行赋值/修改值
# list1 = [11, 11.1, "abc", "武汉多测师"]
# list2 = ["武汉", "湖北", "上海"]
# list1[0] = "多测师"                # 将索引为0的值重新赋值
# print(list1)                       # ['多测师', 11.1, 'abc', '武汉多测师']

# 注意:如果超出对应的索引位,报错,索引越位
# list1[4] = "上海多测师"
# print(list1)                      # 报错

list的拼接
# print(list1 + list2)                # [11, 11.1, 'abc', '武汉多测师', '武汉', '湖北', '上海']
# print(list2 * 3)                    # ['武汉', '湖北', '上海', '武汉', '湖北', '上海', '武汉', '湖北', '上海']

['武汉',['湖北',[['北京'],'湖南']],'上海']
# 1.已知字符串 s = "my,name,is,zhangsan",请用两种办法取出之间的“name”字符。
# s = "my,name,is,zhangsan"
# a = s[3:7]
# print(a)
# b = s.split(",")
# print(b[1])
# 2.将lisi修改为zhangsan?
# a = 'lisi'
# a = 'zhangsan'
# print(a)
# print(a.replace("lisi", "zhangsan"))
# 3.已知如下变量,将a与b拼接成字符串c
# a = "字符串拼接1"
# b = "字符串拼接2"
# c = a + b
# print(c)
# 4.请找出第一个"i"出现的位置。
# a = "i,am,a,boy,in,china"
# print(a.find("i"))
# print(a.index("i"))
# 5.请计算该字符串一共有几个逗号。
# a = "i,am,a,boy,in,china"
# print(a.count(","))
# 6..有user_name把这个user_name改变为UserName
# a = "user_name"
# print(a.title().replace("_", ""))
# print(''.join(a.title().split("_")))
# 7.当前['武汉', ['湖北',[['北京'],'湖南']], '上海']
# print()取出北京
# list1 = ['武汉', ['湖北', [['北京'], '湖南']], '上海']
# print(list1[1][1][0][0])

list :函数方式:
list 和 str 之间的数据类型转换关系:


# list1 = [1, 2, 3, 4, 5]
# print(list1)                        # [1, 2, 3, 4, 5]
# print(list1[0])                     # 1
# print(type(list1))                  # <class 'list'>
# a = str(list1)
# print(a)                            # [1, 2, 3, 4, 5]
# print(a[0])                         # [
# print(type(a))                      # <class 'str'>

# str转换成list
# str1 = "123456789"
# a = list(str1)
# print(a)                            # ['1', '2', '3', '4', '5', '6', '7', '8', '9']

append() :给list添加值

# list1 = [1, 2, 3, 4, 5]
# list1.append(6)
# list1.append([1, 2, 3, 4, 5, 6])
# print(list1)                        # [1, 2, 3, 4, 5, 6, [1, 2, 3, 4, 5, 6]]

insert :可以通过索引(指定的位置)添加值
# list1.insert(0, 0)
# print(list1)                        # [0, 1, 2, 3, 4, 5]
# list1.insert(5, "多测师")
# print(list1)                        # [0, 1, 2, 3, 4, '多测师', 5]

extend :合并列表
# list1 = [1, 2, 3, 4, 5]
# list2 = ["湖北", "武汉"]
# 方法1
# list1.extend(list2)
# print(list1)                        # [1, 2, 3, 4, 5, '湖北', '武汉']
# 方法2
# print(list1 + list2)                # [1, 2, 3, 4, 5, '湖北', '武汉']


面试问题:
reverse :反转输出list内容
# list1 = [1, 2, 3, 4, 5]
# print(list1[::-1])                  # [5, 4, 3, 2, 1]
# list1.reverse()
# print(list1)                        # [5, 4, 3, 2, 1]


remove :删除list当中的值
不能直接通过索引位置进行删除,可以通过值删除

# list1 = [1, 2, 3, 4, 5]
# list1.remove(list1[0])
# print(list1)                        # [2, 3, 4, 5]

sort :排序     从小到大进行排序
# list1 = [2, 23232, 23, 533]
# list1.sort()
# print(list1)                        # [2, 23, 533, 23232]

sorted :排序方法,可以实现从小到大,也可以是实现从大到小
默认从小到大进行排序
里面存在reverse参数,这个参数的默认值为 False,改为 True时
从大到小进行排序

# list1 = [2, 23232, 23, 533]
# print(sorted(list1))                # [2, 23, 533, 23232]
# print(sorted(list1, reverse=True))  # [23232, 533, 23, 2]

pop 删除 :
        默认删除的是最后一位的值,可以直接通过索引进行删除

# list1 = [2, 23232, 23, 533]
# list1.pop(0)
# print(list1)                        # [23232, 23, 533]
# print(list1.pop())                  # 533


del:可以同时删除多个值,支持切片的删除方式

# list1 = [1, 2, 3, 4, 5, 6]
# del list1[0:3]
# print(list1)                        # [4, 5, 6]
#
# del list                            # 直接删除整个list
# # NameError: name 'list' is not defined
# print(list)                         # 报错

clear :清空
# list1 = [1, 2, 3, 4, 5, 6]
# list1.clear()
# print(list1)                        # []

index :查看对应元素的索引位置
# list1 = [1, 2, 3, 4, 5, 6]
# print(list1.index(1))               # 0

tuple :元组:
tuple是一个安全的写保护数据类型,里面的值不允许被修改
表达式:()

# 定义一个tuple
# tuple1 = (1, 2, 3, 4, 5, ["wuhan"])
# print(tuple1)                       # (1, 2, 3, 4, 5)
# print(type(tuple1))                 # <class 'tuple'>

# tuple1[5][0] = "多测师"
# print(tuple1)                       # (1, 2, 3, 4, 5, ['多测师'])

如果当前括号里面只有一个值,那么这个值本身是什么数据类型
返回的就是对应的数据类型,并不是一个元组

如果当前括号里面只有一个值,你又想申明他是一个元组,需要在
值的后面加上逗号

# tuple1 =("武汉")
# print(type(tuple1))                 # <class 'str'>
#
# # 方法二:定义一个元组
# tuple2 = 1, 2, 3, 4, 5
# print(type(tuple2))                 # <class 'tuple'>
#
# tuple3 = ("武汉",)
# print(type(tuple3))                 # <class 'tuple'>


改元组的数据不能直接去改,可以通过数据类型转换,修改list

# tuple1 = ("湖北", "湖南", "江西")
# list1 = list(tuple1)
# print(list1)                        # ['湖北', '湖南', '江西']
# list1[0] = "武汉"
# tuple1 = tuple(list1)
# print(tuple1)                       # ('武汉', '湖南', '江西')

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册