python - 如何教初学者在 Python 中反转字符串?

标签 python

<分区>

我正在为数学一年级的学生讲授“计算机编程导论”类(class)。人们必须假设这是学生第一次接触计算机编程。以下是我教学的主要目标:

  • 学生应该学习和理解 Python 的基础知识。
  • 最终,他们需要掌握足够多的 Python 工具,以便能够为给定的问题选择合适的工具。
  • 同时他们还必须学习通过计算机编程解决问题的基本技能。

我的教学方法是为每个新引入的概念提供一系列问题和难题,以激发学生的积极性。例如,在介绍字符串和列表时,一个自然的问题是字符串或列表反转的任务。如果我要求学生编写代码来检查字符串是否为回文,那么我最好告诉他们如何反转它。

对于列表,myString.reverse() 的自然解决方案至少有两个缺点:

  1. 它不会转移到字符串。
  2. 除非先告诉学生方法,否则学生会觉得它神奇

真正的问题是:如何在 Python 中介绍反转字符串的问题?

最佳答案

您可以先教他们有关步幅符号 (::) 的知识,然后再教他们切片,然后两者都应用。

s = 'string'
s = s[::-1]
print s  # gnirts

引用资料和更多信息:

作为对您的评论的回应,您可以提供任一参数。

>>> s[len(s):None:-1]  
'gnirts'
>>> s[5:None:-1]  
'gnirts'
>>> s[::-1]  # and of course
'gnirts'

关于python - 如何教初学者在 Python 中反转字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2439216/

相关文章:

python - 交换数组中的元素

python - 如何反转 matplotlib pyplot 条形图中的条形大小?

尽管传输存在,但 Python AsyncIO 由于缺少传输而无法创建协议(protocol)

python - 为什么 "_"并不总是给我交互式 shell 中的最后结果

python - 插值和估计不确定性

python - 从并发请求的分布式工作中发回正确的信息

Python 安装工具 : install pacakge dependencies from a local repository

python - 在 Jinja2 中使用 babel 链接

python - 大量使用后,Tkinter程序崩溃

python - 如何在python中的循环外设置变量