准备整理下团队发布的程序信息
使用python分析了下发布的svn信息
使用到相关知识
OS读取本机svn文件下目录,并对不同目录进行分类
读取各目录下文件,截取文件名,转大写
os.listdir可以读取目录,也可以读取文件,细节自行百度
数组存储各种类型文件
str.index可以索引特殊字符位置,共代码切片使用
注意:index只能索引字母位置,如果索引字符串使用find
str_1 = 'wo shi yi zhi da da niu '
char_1 = 'xx'
nPos = str_1.find(char_1)
print(nPos)
# 未索引到 返回 -1
str[0:10]:字符切片
str.upper():转大写
str = "www.runoob.com" print(str.upper()) # 把所有字符中的小写字母转换成大写字母 print(str.lower()) # 把所有字符中的大写字母转换成小写字母 print(str.capitalize()) # 把第一个字母转化为大写字母,其余小写 print(str.title()) # 把每个单词的第一个字母转化为大写,其余小写
处理代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os, sys
# 打开文件
path = “xxx/xxxx/xxxx”#敏感信息自行脑补
dirs = os.listdir(path)
# 输出所有文件和文件夹
table = []
view = []
package = []
trigger = []
path1 = ''
for file in dirs:
print (file)
if file == 'table':
path1 = path + '/' + file
for f in os.listdir(path1):
table.append(f)
elif file == 'view':
path1 = path + '/' + file
for f in os.listdir(path1):
view.append(f)
elif file == 'package':
path1 = path + '/' + file
for f in os.listdir(path1):
package.append(f)
elif file == 'trigger':
path1 = path + '/' + file
for f in os.listdir(path1):
trigger.append(f)
print('----table-----')
for i in table:
print(i)
print(i.index('.'))
print(i[0:i.index('.')].upper())
print('===')
# print('----view-----')
# for i in view:
# print(i)
# print('----package-----')
# for i in package:
# print(i)
# print('----trigger-----')
# for i in trigger:
# print(i)
字符处理操作
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
去空格及特殊符号
s.strip() .lstrip() .rstrip(',')
复制字符串
#strcpy(sStr1,sStr)
sStr= 'strcpy'
sStr = sStr
sStr= 'strcpy'
print sStr
连接字符串
#strcat(sStr1,sStr)
sStr= 'strcat'
sStr = 'append'
sStr+= sStr
print sStr
查找字符
#strchr(sStr1,sStr)
sStr= 'strchr'
sStr = 's'
nPos = sStr1.index(sStr)
print nPos
比较字符串
#strcmp(sStr1,sStr)
sStr= 'strchr'
sStr = 'strch'
print cmp(sStr1,sStr)
扫描字符串是否包含指定的字符
#strspn(sStr1,sStr)
sStr= '1345678'
sStr = '456'
#sStrand chars both in sStrand sStr
print len(sStrand sStr)
字符串长度
#strlen(sStr1)
sStr= 'strlen'
print len(sStr1)
将字符串中的大小写转换
#strlwr(sStr1)
sStr= 'JCstrlwr'
sStr= sStr1.upper()
#sStr= sStr1.lower()
print sStr
追加指定长度的字符串
#strncat(sStr1,sStr,n)
sStr= '1345'
sStr = 'abcdef'
n = 3
sStr+= sStr[0:n]
print sStr
字符串指定长度比较
#strncmp(sStr1,sStr,n)
sStr= '1345'
sStr = '13bc'
n = 3
print cmp(sStr1[0:n],sStr[0:n])
复制指定长度的字符
#strncpy(sStr1,sStr,n)
sStr= ''
sStr = '1345'
n = 3
sStr= sStr[0:n]
print sStr
将字符串前n个字符替换为指定的字符
#strnset(sStr1,ch,n)
sStr= '1345'
ch = 'r'
n = 3
sStr= n * ch + sStr1[3:]
print sStr
扫描字符串
#strpbrk(sStr1,sStr)
sStr= 'cekjgdklab'
sStr = 'gka'
nPos = -1
for c in sStr1:
if c in sStr:
nPos = sStr1.index(c)
break
print nPos
翻转字符串
#strrev(sStr1)
sStr= 'abcdefg'
sStr= sStr1[::-1]
print sStr
查找字符串
#strstr(sStr1,sStr)
sStr= 'abcdefg'
sStr = 'cde'
print sStr1.find(sStr)
分割字符串
#strtok(sStr1,sStr)
sStr= 'ab,cde,fgh,ijk'
sStr = ','
sStr= sStr1[sStr1.find(sStr) + 1:]
print sStr
或者
s = 'ab,cde,fgh,ijk'
print(s.split(','))
连接字符串
delimiter = ','
mylist = ['Brazil', 'Russia', 'India', 'China']
print delimiter.join(mylist)
PHP 中 addslashes 的实现
def addslashes(s):
d = {'"':'\\"', "'":"\\'", "\0":"\\\0", "\\":"\\\\"}
return ''.join(d.get(c, c) for c in s)
s = "John 'Johny' Doe (a.k.a. \"Super Joe\")\\\0"
print s
print addslashes(s)
只显示字母与数字
def OnlyCharNum(s,oth=''):
s = s.lower();
fomart = 'abcdefghijklmnopqrstuvwxyz013456789'
for c in s:
if not c in fomart:
s = s.replace(c,'');
return s;
print(OnlyStr("a000 aa-b"))