小丑9 发表于 2022-3-1 13:37:27

有关字符串拼接的知识分不清

print('|--- 欢迎进入通讯录程序 ---|')
print('|--- 1:查询联系人资料---|')
print('|--- 2:插入新的联系人---|')
print('|--- 3:删除已有联系人---|')
print('|--- 4:退出通讯录程序---|')

contacts = dict()

while 1:
    instr = int(input('\n请输入相关的指令代码:'))
   
    if instr == 1:
      name = input('请输入联系人姓名:')
      if name in contacts:
            print(name + ' : ' + contacts)
      else:
            print('您输入的姓名不再通讯录中!')

第7行那里,为什么我创建一个不为空的字典的时候,第15行哪里会出错呢,只能改成print(f'{name} : {contacts{name}}'),请大佬解释一下有关于字符串拼接的内容{:5_92:}

shiyouroc 发表于 2022-3-1 17:18:57

你空字典那来的name

小丑9 发表于 2022-3-1 17:48:48

shiyouroc 发表于 2022-3-1 17:18
你空字典那来的name

好像是。。。但是字符串拼接的方法有哪些呢

python爱好者. 发表于 2022-3-1 19:36:19

小丑9 发表于 2022-3-1 17:48
好像是。。。但是字符串拼接的方法有哪些呢

因为 name 和其对应的电话是两种不同的类型,一种是字符串类型,一种是数字类型,
所以他们不能直接相加,需要使用格式化方法或是转换为相同类型:
print(name + ' : ' + str(contacts))
页: [1]
查看完整版本: 有关字符串拼接的知识分不清