python字符串处理以灵活为最大优点

开发 后端
python字符串在使用中需要和很多的语言融合,在这个过程中很多问题影响着相关的推广。下面我们就详细的看看相关技术信息。

python字符串如何进行相关的知识学习,我们在使用的时候有不少的问题阻碍着我们的使用。下面我们就详细的看看如何才能更好的使用相关的python字符串,希望对大家有所帮助。#t#

看了大家用C++、C#、Java等语言的实现,总感觉牛刀杀鸡太麻烦,有兴趣的朋友可以自己写写看或者直接看原文的网友回复。我最近一段时间Python写的比较多,读到这些题目时候,就有一种跃跃欲试的冲动。因为我知道用Perl,Python,Ruby等动态语言来做这类题目,会是非常理想的。后来我做了这两道题目,结果也令人满意,代码之简洁保持在所有答案的前列。

先看第一题Python解答:

 

  1. dic = {}  
  2. for s in "abcdefgabc":  
  3. dic[s] = 1 if s not in dic else (dic[s]+1)  
  4. print '\n'.join('%s,%s' % (k, v) for k, v in dic.items())  
  5. 输出结果:  
  6. a,2  
  7. c,2  
  8. b,2  
  9. e,1  
  10. d,1  
  11. g,1  
  12. f,1 

Python的四行代码分别做了dictionary的声明,赋值,字符串的遍历,以及高效拼接。

如果还没有看出它的简洁和强大的话,请看第二题的解法:

  1. def main(offset=6):  
  2. string = u'静夜思 李白床前明月光,疑似地上霜。举头望明月,低头思故乡。090131' 
  3. a = [[' ']*offset for row in xrange(offset)]  
  4. for i in xrange(offset):  
  5. for j in xrange(offset):  
  6. a[i][j] = string[j + i*offset]  
  7. b = [[r[col] for r in a[::-1]] for col in xrange(len(a[0]))]  
  8. print '\n'.join([u'┊'.join(unicode(c) for c in row)for row in b]) 

输出结果:

 

  1. 0┊低┊举┊疑┊床┊静9┊头┊头┊似┊前┊夜0┊思┊望┊地┊明┊思1┊故┊明┊上┊月┊ 3┊乡┊月┊霜┊光┊李1┊。┊,┊。┊,┊白 

 

这题如果用C#等实现,代码要在20行以上。下面我简单介绍一下这几行代码:

  1. 第3行,在Python里面二维“数组”通过嵌套list来实现,这里初始化一个6行6列的二维数组;   
  2. 第7行,我们把“矩阵”顺时针旋转了90度(行列置换,并且对置换后的行首尾对调-这里的::-1就是用来置换一个list的trick);  


最后一行,我们把数组里的每行中元素,每行之间分别用两个不同字符拼接起来。join方法以及for..in..语句在python字符串中是相当常见的用法。
通过这两题,我们看到Python在处理字符串时候的十分灵活方便,虽然一种语言的好坏不应完全靠是否简洁来衡量,但对于我个人而言,Python是目前我用过的最好的语言。而且对于趣味题来说,这不就是我们解题的趣味所在吗?

以上就是对python字符串的相关信息介绍。

责任编辑:张浩 来源: 互联网
相关推荐

2020-08-11 14:29:31

Python字符串判断

2010-11-26 09:51:54

MySQL字符串

2019-08-12 14:25:09

编程算法PythonJavaScript

2023-10-18 07:55:41

Python字符串

2010-07-14 16:35:52

Perl字符串处理函数

2016-08-10 13:13:02

Python编程编码

2009-12-01 11:33:03

PHP判断字符串的包含

2010-08-04 11:23:15

Flex字符串

2017-01-16 16:33:06

Python 字符串漏洞

2010-10-09 11:54:46

MySQL字符串

2010-07-19 15:07:46

Perl字符串处理函数

2023-08-21 10:28:00

字符串字符Python

2016-12-30 13:32:24

字符串算法代码

2009-11-26 16:26:32

PHP字符串mbstr

2023-08-26 20:21:58

字符KotlinJava

2020-05-12 08:53:15

JavaScript字符串处理库

2021-08-26 11:41:50

字符串String.jsVoca

2010-11-26 11:20:31

MySQL字符串处理函

2022-05-18 11:35:17

Python字符串

2023-12-15 10:27:01

暴力匹配算法Python字符串
点赞
收藏

51CTO技术栈公众号