Python中字符串、列表、字典常用的拼接方法有哪些?

2024-02-23 14:29:50 浏览数 (2)

总结: 1、有时在数据处理时,需要对数据进行拼接处理,比如字符串的拼接、列表的拼接等; 2、本文主要是介绍了字符串、列表、字典常用的拼接方法,帮助大家快速了解常用数据的拼接方法; 3、文章中会简单用一些示例进行说明,通俗易懂,便于快速对知识的掌握; 4、阅读建议:在阅读前,需要对Python的字符串、列表、字典基础知识要有一定的了解。

1 字符串拼接

1.1 使用加号( )连接

  • 关于字符串的拼接最常用的方式是使用加号( )进行连接;
  • 处理后两个字符串变成一个字符串;
  • 需要注意的是,加号( )两边都需要是字符串,如果一个是字符串,一个是数字,那需要把数字转换成字符串,可使用str()方法;
  • 示例1:使用加号( )拼接几个字符串:
代码语言:python代码运行次数:0复制
bai_du = "www."   "baidu"   ".com"
print(bai_du)  # 输出:www.baidu.com

booking = "www."   "12306"   ".com"
print(booking) # 输出:www.12306.com
  • 示例2:使用加号( )拼接字符串和数字,会报错:
代码语言:python代码运行次数:0复制
booking_err = "www."   12306   ".com"
print(booking_err) 
# 输出:TypeError: can only concatenate str (not "int") to str

# 将数字转为字符串再拼接:
booking_01 = "www."   str(12306)   ".com"
print(booking_01) # 输出:www.12306.com

1.2 使用逗号(,)连接

  • 可使用逗号连接字符串;
  • 使用逗号连接多个字符串后,最终结果是元组;
  • 可使用join()方法将元组中的元素连接成一个字符串;
  • 示例1:先用逗号拼接几个字符串:
代码语言:python代码运行次数:0复制
year = input("年份:")
month = input("月份:")
festival = input("节日:")

today = year,month,festival
print(today) 
# 输出:
# 年份:2024
# 月份:2.23
# 节日:元宵节
# ('2024', '2.23', '元宵节')
  • 示例2:将逗号拼接后的元组,使用join()方法连接为一个字符串:
代码语言:python代码运行次数:0复制
today_01 = ('2024', '2.23', '元宵节')

today_str = " ".join(today_01)
print(today_str) # 输出:2024 2.23 元宵节

1.3 直接连接

  • 这个方式最简单,就是把几个字符串放在一起打印出来即可;
  • 这个打印出来的结果是不管字符串中间有没有空格,都会拼接为一个字符串,但空格依然保留;
  • 示例1:直接打印:
代码语言:python代码运行次数:0复制
print("我有一个亿," "我是高富帅")
# 输出:我有一个亿,我是高富帅
  • 示例2:加空格直接打印:
代码语言:python代码运行次数:0复制
print("我有一个亿, " "我是高富帅")
# 输出:我有一个亿, 我是高富帅
  • 示例3:直接打印多个:
代码语言:python代码运行次数:0复制
print("当你有10个亿,"
      "你会怎么办?" 
      "1、买别墅?" 
      "2、买豪车?" 
      "3、投资健康?"
      "4、做慈善?" 
      "5、不知道怎么做!")
# 输出:
# 当你有10个亿,你会怎么办?1、买别墅?2、买豪车?3、投资健康?4、做慈善?5、不知道怎么做!

1.4 使用百分号(%)连接

  • 这个字符串的格式化一样,使用%连接一个字符串和一组变量;
  • 比如:
代码语言:python代码运行次数:0复制
print("%s %s" % ("元宵节", "快乐!"))
# 输出:元宵节 快乐!

2 列表拼接

2.1 jion()方法连接

  • jion()方法可以将列表中的元素连接起来,并且可以指定连接符;
  • 比如不使用连接符:
代码语言:python代码运行次数:0复制
data_list = ['你是', '土肥圆', '你怕啥']
print("".join(data_list))
# 输出:你是土肥圆你怕啥
  • 比如使用逗号连接:
代码语言:python代码运行次数:0复制
data_list = ['你是', '土肥圆', '你怕啥']
print(",".join(data_list))
# 输出:你是,土肥圆,你怕啥

2.2 for循环方法连接

  • 使用for循环读取列表中的每个元素,然后再拼接;
  • 拼接的同时可以使用间隔字符,比如“,”,“ ”,“-”等等;
  • 示例如下:
代码语言:python代码运行次数:0复制
data01 = ""
data02 = ""
data03 = ""
data_list = [100, 200, 300, 400, 500, 600]
for i in data_list:
    data01 = data01   str(i)
    data02 = data02   ","   str(i)
    data03 = data03   "*"   str(i)
print(data01)  # 输出:100200300400500600
print(data02.lstrip(",")) # 输出:100,200,300,400,500,600
print(data03.lstrip("*")) # 输出:100*200*300*400*500*600

2.3 切片方法连接

  • 先使用列表切片,然后再使用“ ”进行连接;
  • 示例如下:
代码语言:python代码运行次数:0复制
data = ["成都", "重庆", "杭州", "武汉", "西安", "天津", "苏州",
        "南京", "郑州", "长沙", "东莞", "沈阳", "青岛", "合肥", "佛山"]

data01 = data[1]   data[3]   data[5]   data[7]
print(data01)     # 输出:重庆武汉天津南京
data02 = data[2]   "-"   data[4]   "-"  data[6]   "-"   data[8]
print(data02)     # 输出:杭州-西安-苏州-郑州

2.4 zip()方法压缩

  • 使用zip()方法压缩将多个列表为一个列表;
  • zip()函数将迭代对象作为参数,将对象中对应的元素一次打包成元组,返回由这些元组组成的列表;
  • 示例如下:
代码语言:python代码运行次数:0复制
January = [["A1", 100], ["A2", 200], ["A3", 300]]
February = [["B1", 400], ["B2", 500], ["B3", 600]]
March = [["C1", 700], ["C2", 800], ["C3", 900]]

for x, y, z in zip(January, February, March):
    print(x[0], x[1], " ", y[0], y[1], " ", z[0], z[1])
# 输出:
# A1 100   B1 400   C1 700
# A2 200   B2 500   C2 800
# A3 300   B3 600   C3 900

3 字典拼接

3.1 拼接key值和value值

  • 可以直接使用字典的items()方法获得字典的键值对列表;
  • 如下:
代码语言:python代码运行次数:0复制
month = {"1月": "100万", "2月": "200万", "3月": "300万", "4月": "400万"}
for key, value in month.items():
    print(key, value)
# 输出:
# 1月 100万
# 2月 200万
# 3月 300万
# 4月 400万

3.2 拼接key值

  • 使用字典对象的keys()方法获得字典的键值;
  • 比如:
代码语言:python代码运行次数:0复制
score = {"火影": "100", "海贼王": "100", "死神": "99", "妖精的尾巴": "98"}
for key in list(score.keys()):
    print(key)
# 输出:
# 火影
# 海贼王
# 死神
# 妖精的尾巴

3.3 拼接value值

  • 使用字典对象的values()方法获得字典的值;
代码语言:python代码运行次数:0复制
score = {"火影": "100", "海贼王": "100", "死神": "99", "妖精的尾巴": "98"}
for value in list(score.values()):
    print(value)
# 输出:
# 100
# 100
# 99
# 98

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

0 人点赞