Skip to content

Commit daa8753

Browse files
committed
update
Former-commit-id: 6b3ec58
1 parent b6bdc01 commit daa8753

File tree

4 files changed

+1232
-0
lines changed

4 files changed

+1232
-0
lines changed

实验楼nlp/1.1.py

+148
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
#%% [markdown]
2+
## 字符串操作
3+
### count()返回特定子串在字符串中出现的次数
4+
# In[]
5+
seq = '12345,1234,123,12,1'
6+
seql = '1'
7+
a = seq.count(seql)
8+
a
9+
10+
#%% [markdown]
11+
### strip()去除字符串首尾的指定符号。无指定时,默认去除空格符和换行符
12+
13+
# In[]
14+
seq = '我们正在使用实验楼,实验楼学到很多!'
15+
seq.strip()
16+
seq.strip('!')
17+
seq.strip('我们')
18+
19+
#### lstrip()去除字符串左边指定的符号
20+
#### rstrip()去除字符串右边指定的符号
21+
22+
# In[]
23+
seq = '12321'
24+
print(seq.lstrip('1'))
25+
print(seq.strip('1'))
26+
print(seq.rstrip('1'))
27+
28+
### 字符串拼接
29+
#### '+'直接拼接
30+
#%%
31+
seq1 = '实'
32+
seq2 = '验'
33+
seq3 = '楼'
34+
seq = seq1 + seq2 + seq3
35+
print(seq)
36+
37+
### 字符串拼接
38+
39+
#### join()方法
40+
#%%
41+
seq = ['2018', '10', '31']
42+
seq = '-'.join(seq)
43+
print(seq)
44+
45+
### 字符串比较
46+
#### 这里需要加载operator工具
47+
#%%
48+
import operator
49+
seq1 = '字符串1号'
50+
seq2 = '字符串2号'
51+
print(operator.gt(seq1,seq2))
52+
53+
##### 直接使用运算符
54+
#%%
55+
print(seq1)
56+
print(seq2)
57+
print(seq1 < seq2)
58+
59+
### 大小写转换
60+
#### upper(),lower()
61+
#%%
62+
seq = 'appLE'
63+
print(seq.upper())
64+
print(seq.lower())
65+
66+
### 查找字符串
67+
#### find未找到则返回-1
68+
#%%
69+
seq = '这是一段字符串'
70+
seq1 = '字符串'
71+
print(seq.find(seq1))
72+
print(seq.find('无'))
73+
74+
### 字符串截取
75+
#%%
76+
seq = '这是字符串'
77+
seq1 = seq[0:4]
78+
print(seq1)
79+
print(seq[0])
80+
print(seq[2:4])
81+
82+
83+
### 字符串切分
84+
#%%
85+
seq = '今天天气很好,我们出去玩'
86+
print(seq.split(','))
87+
seq = '2018-11-11'
88+
print(seq.split('-'))
89+
seq = 'I have an apple'
90+
print(seq.split(' '))
91+
92+
### 字符串翻转
93+
#%%
94+
seq = '12345'
95+
print(seq[::-1])
96+
97+
98+
### 字符串代替
99+
#%%
100+
seq = '2018-11-11'
101+
print(seq.replace('-','/'))
102+
103+
### 以某字符串开头结尾
104+
#%%
105+
seq = 'abcdefg'
106+
print(seq.startswith('a'))
107+
print(seq.endswith('f'))
108+
109+
110+
111+
## 正则表达式
112+
#### 不规则日期年份的提取
113+
#%%
114+
import re
115+
# 连续四个字符,每个字符是0-9
116+
pattern = re.compile(r'[0-9]{4}')
117+
time = '2018-01-01'
118+
match = pattern.search(time)
119+
match.group()
120+
121+
#%%
122+
import re
123+
pattern = re.compile(r'[0-9]{4}')
124+
times = ('2018-01-01', '01/01/2019', '01.2017.01')
125+
for time in times:
126+
match = pattern.search(time)
127+
if match:
128+
print('年份有:', match.group())
129+
130+
### findall
131+
#%%
132+
import re
133+
# 识别数字
134+
pattern = re.compile(r'\d')
135+
print(pattern.findall('o1n2m3k4'))
136+
# 识别非数字
137+
pattern = re.compile(r'\D')
138+
print(pattern.findall('o1j2k3n4'))
139+
140+
### match
141+
# match 与 search功能一样,但是只匹配一次,并且从开头开始匹配
142+
#%%
143+
import re
144+
pattern = re.compile('c')
145+
print(pattern.match('comcdc').group())
146+
pattern = re.compile('1')
147+
# 无法匹配1,因为match从开头匹配
148+
print(pattern.match('abcdefg1').group())

0 commit comments

Comments
 (0)