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()方法则按映射表中定义的对应关系转换并替换其中的字符,使用这两个方法的组合可 ...
随机推荐
- Android Widget 开发详解(二) +支持listView滑动的widget
转载请标明出处:http://blog.csdn.net/sk719887916/article/details/47027263 不少开发项目中都会有widget功能,别小瞧了它,他也是androi ...
- 手把手带你画一个 时尚仪表盘 Android 自定义View
拿到美工效果图,咱们程序员就得画得一模一样. 为了不被老板喷,只能多练啊. 听说你觉得前面几篇都so easy,那今天就带你做个相对比较复杂的. 转载请注明出处:http://blog.csdn.ne ...
- pyhton exit
exit("0") is normally out, and means "successful termination" exit("1" ...
- Leetcode_94_Binary Tree Inorder Traversal
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42876657 Given a binary tree, r ...
- Android表格布局(Table Layout)
Android表格布局(Table Layout) 先来看布局管理器之间继承关系图: 图1 可知TableLayout继承了LinearLayout,所以表格布局本质上依然是线性管理器. 表格布局采用 ...
- 说说struts2中拦截器的请求流程一(模拟大致流程)
本文可作为北京尚学堂struts2课程的学习笔记. 首先 什么是拦截器?拦截器能干什么? 拦截器,顾名思义就是拦截对象然后做操作的东西,至于是拦截谁?那自然是拦截action了.能做什么操作呢?你想让 ...
- 【Qt编程】基于QWT的曲线绘制及图例显示操作
在<QWT在QtCreator中的安装与使用>一文中,我们完成了QWT的安装,这篇文章我们讲讲基础曲线的绘制功能. 首先,我们新建一个Qt应用程序,然后一路默认即可.这时,你会发现总共有: ...
- 手持机设备公司(WINCE/ANDROID/LINUX)
1.深圳扬创科技有限公司网址: http://www.yctek.com/ 2.无锡盈达聚力科技有限公司 点击打开链接 3.上海鲲博通信技术有限公司(主要为用WINCE开发导航产品) 点击打开链接 4 ...
- Android 的媒体路由功能应用与框架解析
一.功能描述 Android 的媒体路由API被设计用来允许多种媒体(视频.音乐.图片)在与ANDROID设备连接(无线或有线)的辅助设备(如电视.立体声.家庭戏院系统.音乐播放机)上显示和播放,使用 ...
- 关于最新的APP上架流程
苹果官方在2015年05-06月开发者中心进行了改版,网上的APP Store上架大部分都不一样了,自己研究总结一下,一个最新的上架教程以备后用 1.1.前期工作 首先你需要有一个苹果的开发者帐号,一 ...