Python_字符串检测与压缩
'''
center()、ljust()、rjust(),返回指定宽度的新字符串,原字符串居中、左对齐或右对齐出现在新字符串中,
如果指定宽度大于字符串长度,则使用指定的字符(默认为空格进行填充)。
'''
print('Hello world!'.center(20)) #居中对齐,以空格进行填充
# Hello world!
print('Hello world!'.center(20,'=')) #居中对齐,以字符=进行填充
# ====Hello world!====
print('Hello world!'.ljust(20,'=')) #左对齐
# Hello world!========
print('Hello world!'.rjust(20,'=')) #右对齐
# ========Hello world! '''
zfill()返回指定宽度的字符串,在左侧以字符0进行填充
'''
print('abc'.zfill(5)) #在左侧填充数字字符0
# 00abc
print('abc'.zfill(2)) #指定宽度小于字符串长度时,返回字符串本身
# abc '''
isalnum() 检测字符串是否为数字或字母
isalpha() 检测字符串是否只由字母组成
isdigit() 检测字符串是否只由数字组成
isdecimal() 检测字符串是否只包含十进制字符
isnumeric() 检测字符串是否只由数字组成
isspace() 检测字符串是否只由空格组成
isupper() 检测字符串中所有的字母是否都为大写
islower() 检测字符串是否由小写字母组成
'''
print('1234abcd'.isalnum()) #检测字符串是否为数字或字母
# True
print('!!'.isalpha()) #全部为英文字母时返回True
# False
print('abcd'.isalpha())
# True
print('1234.0'.isdigit()) #检测字符串是否由数字组成
# False
print(''.isdigit())
# True
print('九'.isnumeric()) #isnumeric()方法支持汉字数字
# True
print(''.isnumeric())
# True
print('九'.isdigit())
# False
print(''.isdecimal()) #只包含十进制字符
# True
print('ⅣⅢⅩ'.isdecimal())
# False
print('ⅣⅢⅩ'.isdigit())
# False
print('ⅣⅢⅩ'.isnumeric()) #支持罗马数字
# True '''
Python内置函数也可以对字符串进行操作
'''
x = 'Hello world.'
print(len(x)) #字符串长度
#
print(max(x)) #最大字符
# w
print(min(x)) #最小字符
# ' '
print(list(zip(x,x))) #zip()也可以作用于字符串
# [('H', 'H'), ('e', 'e'), ('l', 'l'), ('l', 'l'), ('o', 'o'), (' ', ' '), ('w', 'w'), ('o', 'o'), ('r', 'r'), ('l', 'l'), ('d', 'd'), ('.', '.')] '''
切片也适用于字符串,但仅限于读取其中的元素,不支持字符串修改
'''
print('Explicit is better than implicit.'[:8])
# Explicit
print('Explicit is better than implicit.'[9:23])
# is better than '''
Python标准库zlib中提供compress()和decompres()函数可以用于数据的压缩和解压缩,
在压缩字符串之前需要先编码为字节串
'''
import zlib
x = 'Python是我认为最好的一门编程语言,使用广泛'.encode()
print(len(x))
#
y = zlib.compress(x)
print(len(y)) #对于重复度比较小的信息,压缩比小
#
x = ('Python是我认为最好的一门编程语言,使用广泛'*3).encode()
print(len(x))
#
y=zlib.compress(x) #信息重复度越高,压缩比越大
print(len(y))
#
z = zlib.decompress(y)
print(len(z))
#
print(z.decode())
# Python是我认为最好的一门编程语言,使用广泛Python是我认为最好的一门编程语言,使用广泛Python是我认为最好的一门编程语言,使用广泛
x=['zWrite']*8
y=str(x).encode()
print(len(y))
#
z=zlib.compress(y)
print(len(z))
#
print(zlib.decompress(z).decode())
# ['zWrite', 'zWrite', 'zWrite', 'zWrite', 'zWrite', 'zWrite', 'zWrite', 'zWrite']
Python_字符串检测与压缩的更多相关文章
- python_字符串方法
1.字符串大小写转 value = "wangdianchao" # 转换为大写 big_value = value.upper() print(big_value) # 转换为小 ...
- JAVA字符串的GZIP压缩解压缩
package com.gzip; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import ...
- 1.Python_字符串_常用办法总结
明确:对字符串的操作方法都不会改变原来字符串的值. 1.去掉空格和特殊符号 name.strip() 去掉空格和换行符 name.strip("xx") 去掉某个字符串 name. ...
- 零基础学习python_字符串(14-15课)
今天回顾下我之前学习python的第一个对象——字符串,这个对象真蛋疼,因为方法是最多的,也是最常见的类型,没有之一... 内容有点多,我就搜了下网上的资料,转载下这个看起来还不错的网址吧:http: ...
- python_字符串,元组,格式化输出
一.字符串 1.字符串是有成对的单引号或者双引号括起来的.例如:name="张三",sex="女" 2.字符串的索引是从0开始的 3.字符串的切片 a.单个字符 ...
- Python_字符串处理方法
1.字符串转换 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sStr1 = 'strcpy2' print sStr2 1.字符串复制 #s ...
- python_字符串
1. 字符串的格式化 格式: 说明: (1)转换说明符 (2)格式化操作符右操作数可以是任何东西,如果是元组的话,每一个元素都会被单独格式化. 2. 字符串常用的方法 (1)find int = fi ...
- Python_字符串之删除空白字符或某字符或字符串
''' strip().rstrip().lstrip()分别用来删除两端.右端.左端.连续的空白字符或字符集 ''' s='abc ' s2=s.strip() #删除空白字符 print(s2) ...
- Python_字符串的映射与可变字符串的应用
''' maketrans().translate() maketrans()方法用来生成字符映射表,而translate()方法则按映射表中定义的对应关系转换并替换其中的字符,使用这两个方法的组合可 ...
随机推荐
- 19_Android中图片处理原理篇,关于人脸识别网站,图片加载到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写
1加载图片到内存 (1).数码相机照片特别是大于3m以上的,内存吃不消,会报OutOfMemoryError,若是想只显示原图片的1/8,可以通过BitmapFactory.Options来实现,具体 ...
- 【翻译】Ext JS——高效的编码风格指南
原文:ExtJS - Efficient coding style guide 作者:Raja 切勿使用"new"关键字:在Ext JS中,使用"new"关键字 ...
- Errors running builder 'Integrated External Tool Builder' on project xxx
出现这样的提示,表明你的项目的Builder项出了问题. 解决方法是: 右键项目选择"Properties",再选择"Builders",删除丢失的builde ...
- Leetcode_154_Find Minimum in Rotated Sorted Array
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/43416613 Suppose a sorted array ...
- 嵌入式C语言查表法的项目应用
嵌入式C实战项目开发技巧:如果对一个有规律的数组表进行位移操作 就像下面的这个表 之前写过上面这个标题的一篇文章,讲的是以位移的方式去遍历表中的数据,效率非常高,但是,如果要实现一个乱序的流水灯或者跑 ...
- C++之IO操作
可参考自: C++之标准设备IO操作流 C++之预定义类型IO格式控制 C++之文件IO操作流
- Volley网络框架完全解析(实战篇)
好了,今天就通过一个瀑布流demo,来使用Volley框架请求网络图片. 前言: 我们使用NetworkImageView显示图片: 1.因为该控件可以自动的管理好请求的生命周期,当与父控件detac ...
- 粒子滤波(PF:Particle Filter)
先介绍概念:来自百科 粒子滤波指:通过寻找一组在状态空间中传播的随机样本来近似的表示概率密度函数,再用样本均值代替积分运算,进而获得系统状态的最小方差估计的过程,波动最小,这些样本被形象的称为&quo ...
- obj-c编程08:分类和协议
篇文章里我们来聊聊如何扩展一个类的方法和实例变量,我们首先来看一下命名分类如何扩展一个类.在下面的代码中,首先定义一个类Player用来定义普通球员,如果第三方开发者发现普通球员缺少了一些方法,则可以 ...
- solr研磨之游标分页
普通分页 当需要深度分页的时候,比如查询第10000页数据,每页显示10条,意味着需要提取前10000 x 10 页的数据,并将这100000条数据缓存在内存中,然后在内存中进行排序.最后返回最后10 ...