实时处理增量日志最佳实践

主要使用f.seek()和f.tell()实现

字符串处理函数:

s.find(substr, start, end)  查找子字符串,找不到则返回-1,找到则返回对应的索引

s.rfind(substr, start, end)  从右侧开始查找子字符串,找不到则返回-1; 找到则返回对应的索引;返回的结果和find一样,

s.index(substr, start, end)  查找返回子字符串的索引,找不到则报错,报错内容时substring not found

s.rindex(substr, start, end)  从右侧开始查找子字符串,找不到则报错;返回的结果和index一样

s.count(substr, start, end)  统计子字符串出现的次数

s.capitalize()  首字母大写

s.upper()  字符串转大写

s.lower()  字符串转小些

s.swapcase()  字符串大小写互转,大写则转小些,小些则转大写

s.split()  字符串分割变成列表

s.join(list)  使用字符串分割拼接列表

s.startswith(substr)  判断是否以子字符串开头

s.endswith(substr)  判断是否以子字符串结尾

len(str)  字符串的长度

cmp(str1, str2)  比较两个字符串

示例代码如下:

>>> s = "abcdefghijklmn"
>>> s.find("cd")
2
>>> s.rfind("cd")
2
>>> s.find("cd", 4, 9)
-1
>>> s.index("cd")
2
>>> s.index("cd", 4, 9)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found
>>> s.count("cd")
1
>>> s.count("cd", 4.)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: slice indices must be integers or None or have an __index__ method
>>> s.count("cd", 4, 9)
0
>>> s.capitalise()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'str' object has no attribute 'capitalise'
>>> s.capitalize()
'Abcdefghijklmn'
>>> s.upper()
'ABCDEFGHIJKLMN'
>>> s.lower()
'abcdefghijklmn'
>>> s.swapcase()
'ABCDEFGHIJKLMN'
>>> s.split()
['abcdefghijklmn']
>>> s.split("")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: empty separator
>>> s.split()
['abcdefghijklmn']
>>>
>>> list = [str(i) for i in range(9)]
>>> list
[']
>>> "==".join(list)
'0==1==2==3==4==5==6==7==8'

老男孩python学习自修【第二天】字符串用法的更多相关文章

  1. 老男孩python学习自修第二十四天【多进程】

    1. 体验多进程的运行速度 #!/usr/bin/env python # _*_ coding:UTF-8 _*_ from multiprocessing import Pool import t ...

  2. 老男孩python学习自修第二十三天【多线程】

    1. 线程的创建与运行 #!/usr/bin/env python # _*_ coding:UTF-8 _*_ from threading import Thread def foo(param1 ...

  3. 老男孩 python学习自修第二十二天【文件上传与下载】

    1.使用socket实现文件上传 server.py #!/usr/bin/env python # _*_ coding:UTF-8 _*_ import os import SocketServe ...

  4. 老男孩python学习自修【第一天】文件IO用法

    第一天   文件IO处理 1.读文件实例 file_split.python f = file('myFile.txt', 'r') for line in f.readlines(): line = ...

  5. 老男孩python学习自修【第三天】列表用法

    列表的使用: list.append(value) 向列表增加元素 list.insert(index, value) 向列表指定元素插入元素 list.extend(newlist) 用新的列表扩展 ...

  6. 老男孩python学习自修第十六天【常用模块之sys和os】

    例子: sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys. ...

  7. 老男孩python学习自修第十五天【常用模块之time】

    例如: #!/usr/bin/env python # _*_ coding:UTF-8 _*_ import time if __name__ == "__main__": pr ...

  8. 老男孩python学习自修第十一天【内置函数】

    1.基本内置函数 help() 帮助文档 dir() 列出当前文件的所有变量和方法 vars() 列出当前文件的所有变量及其值 type() 返回变量的类型 id() 返回变量的内存地址 len() ...

  9. 老男孩python学习自修第十九天【异常处理】

    1.常见的错误 TypeError 类型错误 NameError 没有该变量 ValueError 不期望的值 AttributeError 没有该属性 UnboundLocalError 没有该局部 ...

随机推荐

  1. sql优化的几种方法

    在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化,下面总结的一些方法,有需要的可以参考参考. 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 ord ...

  2. extjs 中的一些鲜为人知的属性(深渊巨坑)

    1. new Ext.form.FormPanel  组件中,去除边框属性为:baseCls:'my-panel-no-border', 2.当 new Ext.form.FormPanel  嵌套b ...

  3. robotframework下添加python文件作为Library(可以创建自己想实现的接口)

    1.在robotframework中要想实现自己的接口,例如:print,还有图片内容比对函数.可以自己在项目中加第三方库 2.创建后的内容如下: 3.在测试用例中引用:

  4. node.js使用express框架进行文件上传

    关于node.js使用express框架进行文件上传,主要来自于最近对Settings-Sync插件做的研究.目前的研究算是取得的比较好的进展.Settings-Sync中通过快捷键上传文件,其实主要 ...

  5. 给大家推荐一个C#下文件监听器和资源管理器的示例Demo-含源码

    C#下文件监听器和资源管理器的示例Demo:源码下载地址

  6. Eclipse下关于The serializable class UsersServlet does not declare a static final serialVersionUID field of type的警告

    The serializable class XXX does not declare a static final serialVersionUID field of type long seria ...

  7. [03] SpringBoot+MyBatis+Shiro搭建杂谈

    0.写在前面的话 一直想能仿公司框架的形式,着手做一个简单的脚手架,一来是带着目标性能更好地学习,接触新的技术,另外自己如果有什么想要实现的简单需求,就可以进行快速开发,主要还是希望能在权限上有所控制 ...

  8. 使用protostuff自定义编解码器优化springcloud-feign性能

    前言 Spring Cloud feign是伪RPC方式解决微服务间的调用.翻看FeignCloudFeign源码,可以看到Feign默认使用HttpUrlConnection; 代码在Default ...

  9. python中各个response使用

    Python django中我们经常用的response有django中的 JsonResponse, HttpResponse,还有DRF中的Response 在使用的时候,经常会不知道如何什么时候 ...

  10. Streaming Principal Component Analysis in Noisy Settings

    论文背景: 面对来袭的数据,连续样本不一定是不相关的,甚至不是同分布的. 当前,大部分在线PCA都只关注准确性,而忽视时效性! 噪声?数据缺失,观测有偏,重大异常? 论文内容: Section 2 O ...