python去除

时间:2023-04-05 13:08:10

目录

Python输入数据类型判断正确与否的函数

内置函数 isinstance() 函数来判断

python 判断该字符中有多少个字符,数字,空格,特殊字符

描述

语法

举例

1. 字符串中只包含字母

结果返回

2. 字符串包含数字、符号和字母

返回值

3.判断个数

python+pytesseract 中文识别

python 字符串去除中文

python | 字符串去除(中文、英文、数字、标点符号)

去除标点符号

去除英文标点符号

去除中文标点符号

去除中文

去除英文

去除数字

去除空格

re.sub()方法 

1、strip()方法

2、lstrip()方法

3、rstrip()方法

4、replace()方法

5: join()方法+split()方法


Python输入数据类型判断正确与否的函数

  对于python输入数据类型判断正确与否的函数大致有三类:

  (1)type(),它的作用直接可以判断出数据的类型

  (2)isinstance(),它可以判断任何一个数据与相应的数据类型是否一致,比较常用。

  (3)对于任何一个程序,需要输入特定的数据类型,这个时候就需要在程序的开头,输入一定的判断格式语句,防止程序运行出错,而对于不同的数据类型和要求,有以下几种判断函数,比较常见:

  如果s为python任意输入数据,则有以下几个判断输入是否有误的语句比较常用: 

s.isalnum()  #所有字符都是数字或者字母,为真返回 True,否则返回 False。

s.isalpha()  #所有字符都是字母,为真返回 True,否则返回 False。 

s.isdigit()  #所有字符都是数字,为真返回 True,否则返回 False。 

s.islower()  #所有字符都是小写,为真返回 True,否则返回 False。 

s.isupper()  #所有字符都是大写,为真返回 True,否则返回 False。 

s.istitle()  #所有单词都是首字母大写,为真返回 True,否则返回 False。

例如:

>>> s = 'I LOVE FISHC'

>>> s.isupper()

>>> True

内置函数 isinstance() 函数来判断

举例1

>>>arg=1234567
>>>isinstance(arg, int)   #输出True
True
>>>isinstance(arg, str)   #输出False
False
>>>isinstance(arg, string)   #报错
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'string' is not defined

举例2

>>>a = 666
>>>isinstance(a,int)
True
>>>isinstance(a,str)
False
>>>isinstance(a,(str,int,list))    # 是元组中的其中一个,则返回 True
True

python 判断该字符中有多少个字符,数字,空格,特殊字符

描述

isalpha函数检测字符串中是否只包含字母。

如果全部是字母组成的字符串,则返回True,否则返回False。

isalpha()函数没有任何参数。

语法

str.isalpha()

 

举例

1. 字符串中只包含字母

test = 'sdgsxxad'
 
print(test.isalpha())

结果返回

True

2. 字符串包含数字、符号和字母

test = 'sdgsxxad'
test2 = '3rfs3dfhw'
test3 = 'I love python'
test4 = 'nova-scheduler'
 
print(test.isalpha())
print(test2.isalpha())
print(test3.isalpha())
print(test4.isalpha())

返回值

True
False
False
False

3.判断个数

str=input('请输入一个字符串:')

zf=0 #字符
sz=0 #数字
kg=0 #空格
ts=0 #特殊字符

for strs in str:
    if strs.isalpha():
        zf+=1
    elif strs.isdigit():
        sz+=1
    elif strs ==' ':
        kg+=1
else:
    ts+=1

print("该字符串中的字符有:",zf)
print("该字符串中的数字有:",sz)
print("该字符串中的空格有:",kg)
print("该字符串中的特殊字符有:",ts)

python+pytesseract 中文识别

#coding = utf -8
from PIL import Image
import pytesseract
 
im = Image.open("2.png")
text = pytesseract.image_to_string((im), lang='chi_sim')
print (text)

python 字符串去除中文

去除中文

import re
p1=' #要去中文的内容 '
linee=re.sub('[\u4e00-\u9fa5]', '', p1)

print(linee)

去除标点

simple_punctuation = '[’!"#$%&\'()*+,-/:;<=>?@[\\]^_`{|}~,。,]'
line = re.sub(simple_punctuation, '', linee)

去除数字

re.sub("[0-9]", " ", line)

python | 字符串去除(中文、英文、数字、标点符号)

去除各个字母、数字、符号的方法,主要就是re的运用,

#去除用

re.sub()

反过来的提取用

re.findall()

去除标点符号

标点符号包括中英文两种,要分开处理

去除英文标点符号

string.punctuation包含所有英文标点符号

import string
string.punctuation
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
text = '''Don't worry, be happy!''' # 'Don\'t worry, be happy'
punctuation_string = string.punctuation
for i in punctuation_string:
    text = text.replace(i, '')
print(text)
  • 或者
import re
re.sub('[{}]'.format(punctuation_string),"",text)

去除中文标点符号

调用zhon包的zhon.hanzi.punctuation函数即可得到中文的标点符号集合。

from zhon.hanzi import punctuation
punctuation
'"#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、\u3000、〃〈〉《》「」『』【】〔〕〖〗〘〙〚〛〜〝〞〟〰〾〿–—‘’‛“”„‟…‧﹏﹑﹔·!?。。'
text = '生活就像【】,如果##'
punctuation_str = punctuation
for i in punctuation_str:
    text = text.replace(i, '')

text
  • 或者
import re
re.sub('[{}]'.format(punctuation),"",text)

去除中文

import re

text = '生活就像【】,如果##'

temp = re.sub('[\u4e00-\u9fa5]','',text)
temp
  • 或者
from zhon.hanzi import characters
import re 

text = '生活就像【】,如果##'

temp = re.sub('[{}]'.format(characters),'',text)
temp

去除英文

import re
 
text="aksjn ekljfk # ! len223"
 
temp = re.sub('[a-zA-Z]','',text)
temp
'  # ! 223'

去除数字

其实对于\d \s \w这些,小写是数字\空格\数字字母,大写即是非数字\非空格\非数字字母,可以合理运用~

import re
 
text="哈aksjn ekljfk # ! len223"
 
temp = re.sub('[\d]','',text) # [0-9]
temp
'哈aksjn ekljfk # ! len'

去除空格

re.sub()方法 

import re
 
text="aksjn ekljfk # ! len223"
 
temp = re.sub('[\s]','',text) #temp = text.strip()
temp
'aksjn ekljfk # ! len223'

1、strip()方法

去除字符串开头或者结尾的空格

str = " Hello world "
str.strip()
 
输出:
"Hello world"

2、lstrip()方法

去除字符串开头的空格

str = " Hello world "
 
str.lstrip()
 
输出:
'Hello world '

3、rstrip()方法

去除字符串结尾的空格

str = " Hello world "
 
str.lstrip()
 
输出:
' Hello world'

4、replace()方法

可以去除全部空格

# replace主要用于字符串的替换replace(old, new, count)

str = " Hello world "
 
str.replace(" ","")
 
输出:
"Helloworld"

5: join()方法+split()方法

可以去除全部空格

# join为字符字符串合成传入一个字符串列表,split用于字符串分割可以按规则进行分割

a = " a b c "
 
b = a.split()  # 字符串按空格分割成列表
 
b ['a', 'b', 'c']
 
c = "".join(b) # 使用一个空字符串合成列表内容生成新的字符串
 
c 'abc'
 
 
 
# 快捷用法
 
a = " a b c "
 
"".join(a.split())
 
'abc'