'''
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_字符串检测与压缩的更多相关文章

  1. python_字符串方法

    1.字符串大小写转 value = "wangdianchao" # 转换为大写 big_value = value.upper() print(big_value) # 转换为小 ...

  2. JAVA字符串的GZIP压缩解压缩

    package com.gzip; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import ...

  3. 1.Python_字符串_常用办法总结

    明确:对字符串的操作方法都不会改变原来字符串的值. 1.去掉空格和特殊符号 name.strip() 去掉空格和换行符 name.strip("xx") 去掉某个字符串 name. ...

  4. 零基础学习python_字符串(14-15课)

    今天回顾下我之前学习python的第一个对象——字符串,这个对象真蛋疼,因为方法是最多的,也是最常见的类型,没有之一... 内容有点多,我就搜了下网上的资料,转载下这个看起来还不错的网址吧:http: ...

  5. python_字符串,元组,格式化输出

    一.字符串 1.字符串是有成对的单引号或者双引号括起来的.例如:name="张三",sex="女" 2.字符串的索引是从0开始的 3.字符串的切片 a.单个字符 ...

  6. Python_字符串处理方法

    1.字符串转换 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sStr1 = 'strcpy2' print sStr2 1.字符串复制 #s ...

  7. python_字符串

    1. 字符串的格式化 格式: 说明: (1)转换说明符 (2)格式化操作符右操作数可以是任何东西,如果是元组的话,每一个元素都会被单独格式化. 2. 字符串常用的方法 (1)find int = fi ...

  8. Python_字符串之删除空白字符或某字符或字符串

    ''' strip().rstrip().lstrip()分别用来删除两端.右端.左端.连续的空白字符或字符集 ''' s='abc ' s2=s.strip() #删除空白字符 print(s2) ...

  9. Python_字符串的映射与可变字符串的应用

    ''' maketrans().translate() maketrans()方法用来生成字符映射表,而translate()方法则按映射表中定义的对应关系转换并替换其中的字符,使用这两个方法的组合可 ...

随机推荐

  1. Get/POST方法提交的长度限制

     1.    Get方法长度限制 Http Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制.这个限制是特定的浏览器及服务器对它的限制. 如:IE对URL长度的限制 ...

  2. 【翻译】Sencha Ext JS 5发布

    原文:Announcing Sencha Ext JS 5 简介 我代表Sencha和整个Ext JS团队,很自豪的宣布,在今天,Sencha Ext JS 5发布了.Ext JS 5已经迈出了一大步 ...

  3. iOS设备中垂直同步开启后的帧率计数

    因为iOS设备的垂直同步总是开启的所以显得帧计数意义没啥意义. 帧计数给你一个多个帧中的平均数,现实中,你帧速率只能是60,30,20,15,12以及6fps等各个常数中的一个.所有这些值都是60的因 ...

  4. Leetcode_12_Integer to Roman

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42744649 Given an integer, conv ...

  5. 非阻塞IO模式原理

    与阻塞模式对应的另一种模式叫非阻塞IO模式,在整个通信过程中读和写操作不会阻塞,当前处理线程不存在阻塞情况.从A机器到B机器它的通信过程是:A机器一条线程将通道设置为写事件后往下执行,而另外一条线程遍 ...

  6. LIRe 源代码分析 7:算法类[以颜色布局为例]

    ===================================================== LIRe源代码分析系列文章列表: LIRe 源代码分析 1:整体结构 LIRe 源代码分析 ...

  7. Altium Designer设计PCB板之“精神”

    通过一小段时间的练习,感觉先领悟设计PCB板的“精神”更加重要.在这里,我指的“精神”是指PCB板中涉及的元器件原理图及其封装设计.当然,设计PCB板还有其他方面重要的精神需要掌握.本文所提到的“精神 ...

  8. Linux - 有效群组(effective group)与初始群组(initial group),groups,newgrp

    每个使用者在他的 /etc/passwd 里面的第四栏有所谓的 GID ,那个 GID 就是所谓的『初始群组 (initial group) 』!也就是说,当用户一登陆系统,立刻就拥有这个群组的相关权 ...

  9. Javascript的console['']几种常用输入方法

    1.console.log是最常用的输入方法,正常化输出语句,还具有print占位符整数(%d||%i),浮点数(%f),对象(%o),字符(%s); 2.console.error输出错误化的语句 ...

  10. 详解Lambda

    定义好委托: public delegate int FirDelegate(int a); public delegate int SecDelegate(int a,int b); public ...