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

主要使用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. 联想Y7000安装Ubuntu16.04/Win10双系统,wifi问题,显卡驱动和CUDA10安装

    https://blog.csdn.net/la9881275/article/details/86720752 Ubuntu16.04系统安装拿到Ubuntu镜像制作装机优盘,这里就不写了.我的优盘 ...

  2. fuser - 查看文件/网络端口等被什么进程占用

    前提 linux环境下,当使用umount命令卸载挂载点时,会遇到“device is busy”提示,这时fuser就能查出谁在使用这个资源;当然umount –lf  [挂载点] 也可以强制卸载 ...

  3. Spring Security(二十三):6.5 The Default AccessDecisionManager(默认接入策略管理)

    This section assumes you have some knowledge of the underlying architecture for access-control withi ...

  4. Burp Suite学习之Intruder的4种攻击模式

    burp suit的intruder攻击共有四种模式,如图所示,下面分别讲讲这四种模式的使用方法和场景. 一 .Sniper模式 Sniper模式使用一组payload集合,它一次只使用一个paylo ...

  5. IntelliJ IDEA(四) :Settings(上)

    前言 IDEA是一个智能开发工具,每个开发者的使用习惯不同,如何个性化自己的IDEA?我们可以通过Settings功能来设置.Settings文件是IDEA的配置文件,通过他可以设置主题,项目,插件, ...

  6. [C#] LINQ之Join与GroupJoin

    声明:本文为www.cnc6.cn原创,转载时请注明出处,谢谢! 一.编写Person与City类,如下: class Person { public int CityID { set; get; } ...

  7. MySQL 8 新特性之自增主键的持久化

    自增主键没有持久化是个比较早的bug,这点从其在官方bug网站的id号也可看出(https://bugs.mysql.com/bug.php?id=199).由Peter Zaitsev(现Perco ...

  8. [WPF]何如在Win7使用Aero2主题

    1. 问题 假设我在Windows10的环境新建一个4.6的WPF项目,添加一个ComboBox,并用Blend在这个ComboBox上右键"编辑模板"->"编辑副 ...

  9. IIS 日志导入到数据库的方法

    使用微软Log Parser 执行 logparser "SELECT * FROM d:\iislogs\u_ex18071705.log TO myTableName" -o: ...

  10. Python—os模块介绍

    OS模块 我们平时工作中很常用到的一个模块,通过os模块调用系统命令,获得路径,获取操作系统的类型等都是使用该模块.os 模块提供了很多允许你的程序与操作系统直接交互的功能 得到当前工作目录,即当前P ...