key = ('我是','你')
text = '哈喽!我是你的优乐美!'
# 1.使用Python正则表达式的re的sub()函数;
# 2.在正则表达式语法中,竖线“|”表示二选一或多选一。
import re
def check(key,text):
return re.sub('|'.join(key), '*',text)
print(check(key,text))
# 使用replace方法
# 遍历敏感词key
for word in key:
# 判断是否有敏感词
if word in text :
# 记录敏感词长度
length = len(word)
text = text.replace(word,'*'*length)
print(text)
"""
^表示行的开头 $表示行的结束
+表示至少一个字符 *表示任意个字符(包括0个)
[0-9a-zA-Z\_]{n, }匹配至少n个及以上 ,至少一个由一个数字或者一个字母或者下划线组成的字符串
"""
import re
string = input()
if re.match(r'^[0-9a-zA-Z\_\-]+(\.[0-9a-zA-Z\_\-]+)*@[0-9a-zA-Z]+(\.[0-9a-zA-Z]+){1,}$', string):
print('合法')
# [\w\.-]+ 匹配一个或多个字符串,点或破折号,后面跟着 @ 符号,接着是另一个类似的单词,然后是一个点和另一个单词。
tiqu = r'([\w\.-]+)@([\w\.-]+)(\.[\w\.]+)'
match = re.search(tiqu, string)
print('用户名:',match.group(1))
print('域名:', match.group(3))
else:
print('非法')
# n表示3个柱子A、B、C中第1个柱子A的盘子数量
def move(n,a,b,c):
if n==1:
return print(a, "->", c)
else:
move(n-1,a,c,b)
print(a,'-->',c)
move(n-1,b,a,c)
print(move(5,'x','y','z'))
low = int(input("输入区间最小值: "))
high = int(input("输入区间最大值: "))
for num in range(low, high + 1):
# 素数大于 1
if num > 1:
for i in range(2, num):
if (num % i) == 0:
break
else:
print(num)
def fin(n):
if n==0 or n==1:
return 1
else:
return fin(n-1) + fin(n-2)
print (fin(int(input("输入计算项:"))))
读取示例数据configure.txt文件,修改file1 file2两列对应的文件名。(首先按照文件格式创建configure.txt文件,生成示例文件file1、file2, 最后重命名)
如 ./FQ_data/sample1_XXXX_R1.fastq 重命名为./FQ_data/sample1_R1.fastq
./FQ_data/sample1_XXXX_R2.fastq 重命名为./FQ_data/sample1_R2.fastq
# 1、创建文件并写入数据
def text_create(name, msg):
path = 'F:/'
full_path = path + name + '.txt'
file = open(full_path,'w')
file.write(msg)
text_create('configure','[sample]\n#group sample file1 file2\ngroup_1 sample1 ./FQ_data/sample1_XXXX_R1.fastq ./FQ_data/sample1_XXXX_R2.fastq\ngroup_1 sample1 ./FQ_data/sample2_XXXX_R1.fastq ./FQ_data/sample2_XXXX_R2.fastq\ngroup_2 sample2 ./FQ_data/sample3_XXXX_R1.fastq ./FQ_data/sample3_XXXX_R2.fastq\ngroup_2 sample2 ./FQ_data/sample4_XXXX_R1.fastq ./FQ_data/sample4_XXXX_R2.fastq\n[compare]\ngroup_1 group_2')
fh = open('/configure.txt','r+')
str = fh.read()
print(str)
"""
2、修改文件内容函数
:param fh:文件名
:param old_str:就字符串
:param new_str:新字符串
"""
def xiugai(fh,old_str,new_str):
file_data = ""
with open(fh, "r") as f:
for line in f:
if old_str in line:
line = line.replace(old_str,new_str)
file_data += line
with open(fh,"w") as f:
f.write(file_data)
xiugai('/configure.txt','XXXX_','')
创建文件夹,批量生成任意子文件夹,在文件夹中创建.genes.results结尾的文件,将文件路径加到任意字符串最后,并以空格分割。
import os
os.mkdir('file')
filePath='abundance_estimates_to_matrix.pl --est_method --est_method RSEM --out_prefix '
for i in range(0,6):
path='file/'+str(i)
os.mkdir(path)
f=open(path+'/RSEM.genes.results','w')
f.close()
filePath=filePath+' '+path+'/RSEM.genes.results'
print(filePath)