for循环python实例变量和类变量静态变量python实例属性求和sum
下载地址 https://share.weiyun.com/OvviwGnZ
资料目录 Python练习集100题 100道Python面试题 Python100经典练习题 Python经典题目100道题 Python题库(已收录100道真题) Python100例视频讲解课程 菜鸟教程Python教程100例 130道python练习题,涵盖基础内容的方方面面 Python考试题复习知识点试卷试题 PYTHON测试题和答案 python第一阶段考试题 Python经典面试题和答案解析 python期末考试复习试卷 python习题集大全(附答案解析) 老男孩Python全栈7期练习题(面试真题模拟) 尚观python第一阶段考试(面试真题模拟) 《Python程序设计基础与应用》习题答案 《Python快速编程入门》——课后题答案 Python编程基础张健 , 张良均课后习题及答案 Python程序设计基础及实践(慕课版)郭炜习题答案 Python程序设计基础习题答案与分析 python基础试题(含答案)
举例 翻转字符串里的单词 题目要求 给定一个字符串,逐个翻转字符串中的每个单 示例: 输入: " the sky is blue", 输出: "blue is sky the " 翻转后,空格不能减少,单词之间的空格数量不能发生变化 思路分析 如果只是单纯的翻转字符串,就过于简单了,因此要求翻转每一个单词,单词还是原来的样子,但是单词所在的位置却发生了翻转,第一个单词变成了倒数第一个单词。 可以先将整个字符串都翻转,这样单词的位置完成了翻转,结果如下: "eulb si yks eht " 但这个时候,每一个单词的顺序还是颠倒的,因此需要对每一个单词进行一次翻转。 字符串是不可变对象,不能直接在字符串上进行翻转,要借助列表(list)进行翻转,翻转后在使用join方法将列表里的元素拼成字符串 示例代码 # coding=utf-8
def reverse_word(string): # 先将整个句子翻转 word_lst = list(string) for i in range(len(word_lst)/2): word_lst[i], word_lst[len(word_lst)-1-i] = word_lst[len(word_lst)-1-i], word_lst[i]
print("".join(word_lst)) # 翻转里面的单词 start_index = None end_index = None b_word = False for index, item in enumerate(word_lst): if item.isalpha(): if not b_word: start_index = index # 单词开始的位置 b_word = True else: if b_word: end_index = index -1 # 单词结束的位置 b_word = False # 已经知道单词开始和结束的位置,翻转这个单词 reverse_single_word(word_lst, start_index, end_index)
return "".join(word_lst)
def reverse_single_word(lst, start_index, end_index): """ 将lst 中 start_index到end_index 这个区域翻转 :param lst: :param start_index: :param end_index: :return: """ while start_index < end_index: lst[start_index], lst[end_index] = lst[end_index], lst[start_index] start_index += 1 end_index -= 1
if __name__ == '__main__': print(reverse_word(" the sky is blue"))
|