【python】入门学习(五)

字符串:

正索引,从0开始 和 负索引,从-1开始

>>> s = 'apple'
>>> s[0]
'a'
>>> s[1]
'p'
>>> s[2]
'p'
>>> s[3]
'l'
>>> s[4]
'e'
>>> s[-1]
'e'
>>> s[-2]
'l'
>>> s[-3]
'p'
>>> s[-4]
'p'
>>> s[-5]
'a'

在for循环中遍历字符串只需要:

       for c in s:

#codesum.py
def codesum1(s):"""Returns the sums of the character codes of s."""total = 0for c in s:total = total + ord(c)return total

 

ord():获取字符的编码 Unicode

chr():通过编码获取字符

>>> ord('')
21916
>>> chr(21916)
''

 

转义字符,用反斜杠:\\ , \', \", \n, \r, \t

>>> print('a\nb\nc\n')
a
b
c

 

字符串切片:

>>> food = 'apple pie'
>>> food[0:5]
'apple'

默认切片的第一个数是0,最后一个数是字符串末尾的索引+1,也可以使用负数索引,不过很难懂

>>> food[:5]
'apple'
>>> food[6:]
'pie'

获取文件扩展名:

#extension.py
def get_ext(fname):"""Return the extension of file fname."""dot = fname.rfind('.')if dot == -1:return ''else:return fname[dot+1:]
>>> get_ext('apple.in')
'in'

 

标准字符串函数:

s.find(t) #从左向右查找t,返回位置,没有返回-1

s.rfind(t) #同上,从右向左查找

s.index(t) #同s.find(t),但没有找到会引发错误

s.rindex(t) #同上,从右向左查找

>>> s.find('p')
1
>>> s.rfind('p')
2

 

正则表达式re

xy?  x 、xy

x|y  x、y

x*  ' '、x、xx、xxx、xxxx...

x+  x、xx、xxx、xxxx....

#funny.py
import re
def is_funny(s):return re.match('(ha)+!+',s) != None
>>> is_funny('hahahahahaha!!!')
True

 

转载于:https://www.cnblogs.com/dplearning/p/3951711.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/376683.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实现 winform 异步跨线程访问UI控件

在开发winform时经常会用到多线程防止界面出现假死现象,比如当你单击某个按钮时,需要执行很多代码,但是在执行过程中想实时的将当前执行的情况报告给用户,类型进度条或文本什么的。 这个时候很显然,如果你把要实现的内…

JavaScript对象的创建总结

方式 缺点 优点 基于已有对象扩充属性和方法 不可重用,没有约束 无 工厂方法 检测不出是什么的实例 简单封装,可以传参 构造方法 每创建一个对象就有开辟存放方法的空间 能通过instanceof检测出实例类型,可以传参 原型方式 不能…

从WebRtc学习RTP协议

文章目录TCP为何不适用于实时音视频UDP->RTPRTP协议结构JittbufferRTP扩展头RTP填充数据参考TCP为何不适用于实时音视频 可靠性是以牺牲实时性为代价的。按照TCP原理,当出现极端网络情况时,理论上每个包的时延可达到秒级以上,而且这种时延…

我的第一个android应用上架,纪念一下

好久没有写博客了,最近一直在忙着弄自己的“汽车小助手“http://www.mumayi.com/android-318299.html软件,终于在今天上架了,尽管今天的广告收入只有5毛,写个博客纪念一下。里面嵌入了万普平台的广告,大家都懂得。一天…

内核态与用户态【转载】

原文:http://blog.csdn.net/skywalkzf/article/details/5185442 内核态与用户态是操作系统的两种运行级别,intel cpu提供Ring0-Ring3三种级别的运行模式。Ring0级别最高,Ring3最低。其中特权级0(Ring0)是留给操作系统代…

解决ListView异步加载数据之后不能点击的问题

在ListView的onScroll事件中执行异步加载数据,然后使用notifyDataSetChange()函数更新适配器,之后发现listView不能点击了,这问题苦恼了我半天。最后在一篇博文中发现调用listView的requestFocusFromTouch()函数终于解决了这问题。 Java代码…

从WebRtc学习RTCP协议

文章目录RTCP支持的消息类型RTCP协议头WebRTC的反馈报文RTPFB支持的报文类型:PSFB支持的报文类型:参考RTCP是RTP的控制协议.那么RTCP能对RTP做哪些控制呢?其中最为大家熟知的就是 丢包控制。发送端发送数据后,接收端如果发现有RTP…

白话经典算法系列之中的一个 冒泡排序的三种实现

冒泡排序是很easy理解和实现,,以从小到大排序举例: 设数组长度为N。 1.比較相邻的前后二个数据,假设前面数据大于后面的数据,就将二个数据交换。 2.这样对数组的第0个数据到N-1个数据进行一次遍…

如何用java代码让android Market显示指定的程序以便用户下载?

Uri uri Uri.parse("market://search?q名称");Intent i new Intent("Intent.ACTION_VIEW", uri);startActivity(i);//根据应用程序ID应用程序的包名Uri urii Uri.parse("market://details?idcom.xiaoqiu.test");Intent ii new Intent(&quo…

无锁队列设计思路以及简要代码

文章目录非并发的一写一读环形队列多读多写环形队列非并发的一写一读环形队列 读指针: 1、先判断是否有数据 2、读取数据 3、操作指针 写指针: 1、先判断空间是否足够 2、写入数据 3、操作指针 所以代码也十分简单: bool putqueue(void* pDa…

vs 2012,vs 2013问题系列

系统环境: 64位 win7 1,问题: 之前能连接tfs进行源码管理,期间有改过本地电脑的时间,再后来使用vs 2012连接tfs却失败了。错误码:TF31002。排除了网络问题,用户权限问题,tfs服务器问…

Linux查看系统信息的一些命令

转:http://www.cnblogs.com/chenwenbiao/archive/2011/07/18/2109983.html 系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计…

CPU Cache对于并发编程的影响

文章目录引子CPU Cache对于并发的影响读写顺序对性能的影响字节对齐对Cache的影响小结引子 下面给出两个极其相似的代码&#xff0c;运行出的时间却是有很大差别&#xff1a; 代码一 #include <stdio.h> #include <pthread.h> #include <stdint.h> #includ…

textarea 在浏览器中固定大小和禁止拖动

http://blog.sina.com.cn/s/blog_641d569301011naz.html HTML 标签 textarea 在大部分浏览器中只要指定行&#xff08;rows&#xff09;和列&#xff08;cols&#xff09;属性&#xff0c;就可以规定 textarea 的尺寸&#xff0c;大小就不会改变&#xff0c;不过更好的办法是使…

hibernate操作时报错

报错&#xff1a;[ERROR] AbstractBatcher Exception executing batch: org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1原因&#xff1a;视具体情况而定&#xff0c;我这边是代码被修改过…

bugfix:MySQL内存使用率无限增长以及kill手法

问题&#xff1a;昨天mysql 宕机了一次&#xff0c;重启&#xff0c;然后继续运行业务代码的时候发现问题&#xff0c;mysql内存占用率上升较快&#xff0c;于是搜了搜&#xff0c;遇到一个&#xff1a; http://blog.itpub.net/29510932/viewspace-2129312/ 根据思路&#xff0…

软工之初识

我们之前已经在完全不懂软件工程的情况下&#xff0c;已经做完了两个小系统&#xff0c;虽然能够运行&#xff0c;但其中有很多的问题&#xff0c;学习软工就是让我们在工程学原理的指导之下去开发和设计软件。 软件工程同大多数书讲的都是一样的&#xff0c;首先对软件工程有一…

perf +火焰图使用

以mysqld进程为例&#xff1a; [rootVM-90-225-centos ~]# ps -ef | grep mysqld root 9808 9621 0 19:30 pts/7 00:00:00 grep --colorauto mysqld root 16104 1 0 17:30 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir/usr/loc…

Mysql 遇到的编码问题。

今天帮小朋友做一个项目&#xff0c;碰到一个挺搞的问题。在帮她安装mysql的时候一直是next&#xff0c;没有去注意一些细节&#xff0c;不晓得有没有漏掉设置编码那一部分。。 结果在用sql文件导入数据库MySQL -h localhost -u root -p xxx < e:\xxx.sql 执行的时候错误提…

在一个字符串中找到第一个只出现一次的字符

题目&#xff1a;在一个字符串中找到第一个只出现一次的字符&#xff0c;如输入abaccdeff&#xff0c;则输出b&#xff1b;具体实现如下&#xff1a;#include <iostream> #include <string> using namespace std; void FindChar(const string &strBuf) {int nA…