鱼C论坛

 找回密码
 立即注册
查看: 55|回复: 3

[技术交流] 4只猫咪的名称练习

[复制链接]
发表于 昨天 19:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. print('请输入第1只猫咪名称,按回车完成:')
  2. cat_name_1 = input()
  3. print('请输入第2只猫咪名称,按回车完成:')
  4. cat_name_2 = input()
  5. print('请输入第3只猫咪名称,按回车完成:')
  6. cat_name_3 = input()
  7. print('请输入第4只猫咪名称,按回车完成:')
  8. cat_name_4 = input()
  9. print('四只猫咪的名称是:')
  10. print(cat_name_1 + ' ' + cat_name_2 + ' ' + cat_name_3 + ' ' + cat_name_4)
复制代码


原文是英文的

  1. cat_names = []
  2. for i in range(4):
  3.     name = input(f'请输入第{i+1}只猫咪名称,按回车完成:')
  4.     cat_names.append(name)

  5. print('四只猫咪的名称是:')
  6. print(' '.join(cat_names))
复制代码


这是另一种写法。

  1. def get_cat_names(num):
  2.     cat_names = []
  3.     for i in range(num):
  4.         name = input(f'请输入第{i+1}只猫咪名称,按回车完成:')
  5.         cat_names.append(name)
  6.     return cat_names

  7. def show_cat_names(names):
  8.     print('猫咪的名称是:')
  9.     print(' '.join(names))

  10. # 使用函数
  11. cats = get_cat_names(4)
  12. show_cat_names(cats)
复制代码


增强版
  1. cat_names = []
  2. for i in range(4):
  3.     while True:
  4.         name = input(f'请输入第{i+1}只猫咪名称,按回车完成:').strip()
  5.         if name:
  6.             cat_names.append(name)
  7.             break
  8.         else:
  9.             print('名称不能为空,请重新输入!')

  10. print('四只猫咪的名称是:')
  11. print(','.join(cat_names))  # 用中文逗号分隔
复制代码



评分

参与人数 1荣誉 +2 鱼币 +2 收起 理由
小甲鱼 + 2 + 2 无条件支持楼主!

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 昨天 19:44 | 显示全部楼层
你分享了几种不同的Python代码实现,都是用来输入和显示猫咪名称的。让我们来分析和改进这些代码:

首先,你提到的第二段代码有个小错误,
  1. cat_names =
复制代码
后面应该加上[] 来创建一个空列表。

以下是几种写法的对比和说明:

  • 基础写法:代码重复较多,每个变量都要单独处理,不易扩展。
  • 使用循环和列表:代码更简洁,容易调整猫咪数量。
  • 使用函数:将功能模块化,代码更清晰,可重用性更高。
  • 增强版:添加了输入验证,确保名称不为空。


推荐使用函数版或增强版,因为它们更健壮和灵活。这里提供一个结合了函数和输入验证的完整示例:


  1. def get_cat_names(num):
  2.     """获取指定数量的猫咪名称"""
  3.     cat_names = []
  4.     for i in range(num):
  5.         while True:
  6.             name = input(f'请输入第{i+1}只猫咪名称,按回车完成:').strip()
  7.             if name:
  8.                 cat_names.append(name)
  9.                 break
  10.             else:
  11.                 print('名称不能为空,请重新输入!')
  12.     return cat_names

  13. def show_cat_names(names, separator=' '):
  14.     """显示猫咪名称"""
  15.     print('猫咪的名称是:')
  16.     print(separator.join(names))

  17. # 使用示例
  18. cats = get_cat_names(4)
  19. show_cat_names(cats, ',')  # 使用中文逗号分隔
复制代码


这个版本的优点:
  • 输入验证:确保用户不会输入空名称
  • 灵活的分隔符:可以轻松切换分隔方式
  • 清晰的函数分工:一个负责输入,一个负责输出
  • 易于扩展:如果需要更多猫咪,只需修改参数即可


希望这个解释对你有帮助!记得在实际编程中,选择适合当前需求的写法,平衡代码的简洁性、可读性和健壮性。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 3 小时前 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 半小时前 | 显示全部楼层
加油~
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-4-18 03:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表