文档章节

Python字符遍历的艺术

LMcallme
 LMcallme
发布于 2013/04/28 18:07
字数 252
阅读 40
收藏 0
点赞 0
评论 0

通常我们要遍历一个字符串中的每个字符,都要先获取字符串的长度,然后用一个For循环把每个字符取出,进行处理。但是,又是我们的Python,为我们提供了很多便捷的方式去遍历一个字符串中的字符。

比如,将一个字符串转换为一个字符数组: 

theList = list(theString) 
同时,我们可以方便的通过for语句进行遍历: 

for c in theString: 
do_something_with(c) 

甚者,使用这样的语句: 

result = [do_something_with(c) for c in theString if c == 'x'] 

同时,还可以使用map语句,下面,我们开始上菜吧!传说中有一个神奇的字符串,被病毒感染了,被病毒附上了许多x字符,你将设计一个引擎,把病毒x出去,把我们神奇的字符串输出来。程序如下: 

theString = 'Ix lixkxex xpxytxhxonx !' 
def PrintEngine(c): 
if c != 'x': 
print c, 
map(PrintEngine, theString) 
输出结果: 
I like python ! 

本文转载自:http://www.jb51.net/article/15694.htm

共有 人打赏支持
LMcallme
粉丝 8
博文 43
码字总数 16047
作品 0
青岛
python 模板实现-引擎的编写(有时间试一下)

关于简介和模板问题请在参考文档查看 参考文档: 1.模板的编写:https://blog.csdn.net/MageeLen/article/details/68920913 一、引擎的编写 1.Templite 类 模板引擎的核心就是这个Templite类...

xiaoge2016 ⋅ 05/10 ⋅ 0

python 编写自动化小工具 未完成

python 编写自动化小工具 Python split() python数据类型之间的转换 str(demo) python换行写入文件 !/usr/bin/env python ecoding=utf-8 f=open(r"D:opsdevolduseroldused.txt","a+") newlin......

iOS_愛OS ⋅ 昨天 ⋅ 0

更深入的理解 Python 中的迭代

深入探讨 Python 的 循环来看看它们在底层如何工作,以及为什么它们会按照它们的方式工作。 Python 的 循环不会像其他语言中的 循环那样工作。在这篇文章中,我们将深入探讨 Python 的 循环来...

01% ⋅ 05/26 ⋅ 0

Python3基础知识的讲解(三)

绪论 在前面几篇文章中,介绍了一些关于Python的相关知识点,当然那些都是比较基础的语法,那么今天,将向大家介绍稍微常用点的语法知识点,有过编程的人都应该清楚,如果要想实现一个功能,...

长风留言 ⋅ 06/01 ⋅ 0

笨办法学 Python · 续 练习 35:解释器

练习 35:解释器 原文:Exercise 35: Interpreters 译者:飞龙 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 解析中的最后一个练习应该既具有挑战性又有趣。你终于可以看到,你的微型 Python 脚...

apachecn_飞龙 ⋅ 2017/08/13 ⋅ 0

破解爬虫过程中遇到的网页加密Email地址

文章首发个人微信公众号及博客:http://zmister.com/archives/269.html 欢迎访问个人博客:http://zmister.com 查看更多Python应用文章 欢迎关注个人微信公众号:州的先生 及时交流讨论 1、问...

州的先生 ⋅ 05/15 ⋅ 0

Shell中的数组及其相关操作

Shell中数据类型不多,比如说字符串,数字类型,数组。数组是其中比较重要的一种,其重要应用场景,可以求数组长度,元素长度,遍历其元素,元素切片,替换,删除等操作,使用非常方便。 Sh...

孟飞阳 ⋅ 05/28 ⋅ 0

Python2的input(), raw_input()和Python3的input()

现在来探讨一下Python2中的input()、raw_input()函数和Pyhont3中的input()函数: Python2中的rawinput()函数,我们知道input()、rawinput()都是让用户输入的函数: input()函数: 首先,我们...

圣洁之子 ⋅ 04/25 ⋅ 0

用Python画一只丑丑的猪头

前两天在知乎上看到有人用Python的turtle库画了一只小猪佩奇,接着就有网友用turtle画了一只哆啦A梦,不得不说他们都是人才,画得有模有样的。知乎地址在这里: https://www.zhihu.com/ques...

爱吃西瓜的番茄酱 ⋅ 05/08 ⋅ 0

超详细Python正则表达式操作指南(re使用),一

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编...

Python雁横 ⋅ 05/26 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

用ZBLOG2.3博客写读书笔记网站能创造今日头条的辉煌吗?

最近两年,著名的自媒体网站今日头条可以说是火得一塌糊涂,虽然从目前来看也遇到了一点瓶颈,毕竟发展到了一定的规模,继续增长就更加难了,但如今的今日头条规模和流量已经非常大了。 我们...

原创小博客 ⋅ 今天 ⋅ 0

MyBatis四大核心概念

本文讲解 MyBatis 四大核心概念(SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper)。 MyBatis 作为互联网数据库映射工具界的“上古神器”,训有四大“神兽”,谓之:Sql...

waylau ⋅ 今天 ⋅ 0

以太坊java开发包web3j简介

web3j(org.web3j)是Java版本的以太坊JSON RPC接口协议封装实现,如果需要将你的Java应用或安卓应用接入以太坊,或者希望用java开发一个钱包应用,那么用web3j就对了。 web3j的功能相当完整...

汇智网教程 ⋅ 今天 ⋅ 0

2个线程交替打印100以内的数字

重点提示: 线程的本质上只是一个壳子,真正的逻辑其实在“竞态条件”中。 举个例子,比如本题中的打印,那么在竞态条件中,我只需要一个方法即可; 假如我的需求是2个线程,一个+1,一个-1,...

Germmy ⋅ 今天 ⋅ 0

Springboot2 之 Spring Data Redis 实现消息队列——发布/订阅模式

一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式,这里利用redis消息“发布/订阅”来简单实现订阅者模式。 实现之前先过过 redis 发布订阅的一些基础概念和操...

Simonton ⋅ 今天 ⋅ 0

error:Could not find gradle

一.更新Android Studio后打开Project,报如下错误: Error: Could not find com.android.tools.build:gradle:2.2.1. Searched in the following locations: file:/D:/software/android/andro......

Yao--靠自己 ⋅ 昨天 ⋅ 0

Spring boot 项目打包及引入本地jar包

Spring Boot 项目打包以及引入本地Jar包 [TOC] 上篇文章提到 Maven 项目添加本地jar包的三种方式 ,本篇文章记录下在实际项目中的应用。 spring boot 打包方式 我们知道,传统应用可以将程序...

Os_yxguang ⋅ 昨天 ⋅ 0

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

eclipse酷炫大法之设置主题、皮肤

eclipse酷炫大法 目前两款不错的eclipse 1.系统设置 Window->Preferences->General->Appearance 2.Eclipse Marketplace下载【推荐】 Help->Eclipse Marketplace->搜索‘theme’进行安装 比如......

anlve ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部