NLP 1 基礎字串操作

2021-10-05 16:36:20 字數 4025 閱讀 6092

我們一起回歸一下python字串的相關操作,這是非常基礎的知識,但卻是使用頻度非常高的一些功能。

去空格及特殊符號

s =

' hello, world!'

print s.strip(

)print s.lstrip(

' hello, '

)print s.rstrip(

'!')

hello, world!

world!

hello, world

連線字串
sstr1 =

'strcat'

sstr2 =

sstr1 += sstr2

print sstr1

查詢字元

# < 0 為未找到

sstr1 =

'strchr'

sstr2 =

'r'npos = sstr1.index(sstr2)

print npos

2
比較字串
sstr1 =

'strchr'

sstr2 =

'strch'

print

cmp(sstr2,sstr1)

print

cmp(sstr1,sstr2)

print

cmp(sstr1,sstr1)

-11

0

字串中的大小寫轉換
sstr1 =

'jcstrlwr'

sstr1 = sstr1.upper(

)#sstr1 = sstr1.lower()

print sstr1

jcstrlwr
翻轉字串
sstr1 =

'abcdefg'

sstr1 = sstr1[::

-1]print sstr1

gfedcba
查詢字串
sstr1 =

'abcdefg'

sstr2 =

'cde'

print sstr1.find(sstr2)

2
分割字串
sstr1 =

'ab,cde,fgh,ijk'

sstr2 =

','sstr1 = sstr1[sstr1.find(sstr2)+1

:]print sstr1

#或者s =

'ab,cde,fgh,ijk'

print

(s.split(

',')

)

cde,fgh,ijk

['ab'

,'cde'

,'fgh'

,'ijk'

]

計算字串**現頻次最多的字幕
#version 1

import re

from collections import counter

defget_max_value_v1

(text)

: text = text.lower(

) result = re.findall(

'[a-za-z]'

, text)

# 去掉列表中的符號符

count = counter(result)

# counter()

count_list =

list

(count.values())

max_value =

max(count_list)

max_list =

for k, v in count.items():

if v == max_value:

max_list =

sorted

(max_list)

return max_list[

0]

#version 2

from collections import counter

defget_max_value

(text)

: count = counter(

[x for x in text.lower(

)if x.isalpha()]

) m =

max(count.values())

return

sorted

([x for

(x, y)

in count.items(

)if y == m])[

0]

#version 3

import string

defget_max_value

(text)

: text = text.lower(

)return

max(string.ascii_lowercase, key=text.count)

max

(range(6

), key =

lambda x : x>2)

# >>> 3

# 帶入key函式中,各個元素返回布林值,相當於[false, false, false, true, true, true]

# key函式要求返回值為true,有多個符合的值,則挑選第乙個。

max([3

,5,2

,1,4

,3,0

], key =

lambda x : x)

# >>> 5

# 帶入key函式中,各個元素返回自身的值,最大的值為5,返回5.

max(

'ah'

,'bf'

, key=

lambda x: x[1]

)# >>> 'ah'

# 帶入key函式,各個字串返回最後乙個字元,其中'ah'的h要大於'bf'中的f,因此返回'ah'

max(

'ah'

,'bf'

, key=

lambda x: x[0]

)# >>> 'bf'

# 帶入key函式,各個字串返回第乙個字元,其中'bf'的b要大於'ah'中的a,因此返回'bf'

text =

'hello world'

max(

'abcdefghijklmnopqrstuvwxyz'

, key=text.count)

# >>> 'l'

# 帶入key函式,返回各個字元在'hello world'**現的次數,出現次數最多的字元為'l',因此輸出'l'

'l'
count occurrence of a character in a python string
#t  h  e     m  i  s  s  i  s  s  i  p  p  i     r  i  v  e  r

#[1, 1, 2, 2, 1, 5, 4, 4, 5, 4, 4, 5, 2, 2, 5, 2, 1, 5, 1, 2, 1]

sentence=

'the mississippi river'

defcount_chars

(s):

s=s.lower(

) count=

list

(map

(s.count,s)

)return

(max

(count)

)print count_chars(sentence)

5

字串操作 1

a 大串中查詢子串出現的次數 public class substringdemo 方式2 不擷取字串,逐漸縮小查詢範圍 private static intgetcount2 string str,string regex return count 方式1 查詢到小串後將已經查詢的部分擷取掉。返回...

基礎字串操作

字串的一些簡單stl用法記一下 在字串1裡面找字串2 intcan string str1,string a,int x 如果沒找到返回值就是 1,找到了就是從x開始第乙個符合條件的子串的第乙個字元下標。string change string str1,string a,string b,int ...

PHP基礎 字串操作

php 字串函式是 php 核心的組成部分。無需安裝即可使用這些函式。兩個單詞間有空格表示下劃線 函式描述 addcslashes 返回在指定的字元前新增反斜槓的字串。addslashes 過濾 返回在預定義的字元前新增反斜槓的字串 輸入引數過濾常用,防止sql注入 bin2hex 把 ascii ...