调用对象,方法
class Employee:
#成员变量
empCount = 0
#类似与Java中的构造函数(初始化方法),当创建了这个类的实例时就会调用该方法
#self 代表类的实例,self 在定义类的方法时是必须有的
def __init__(self, name, salary):
self.name = name
self.salary = salary
Employee.empCount += 1
#方法
def displayCount(self):
print "Total Employee %d" % Employee.empCount
将数组转为list,由于字符串实际上是数组,但字符串不能改变,所以要将字符串转为list,然后再修改你想要改变的字符
b=[1,2,3,4,5]
a=list(b)
力扣中的1155和1156两题
class MajorityChecker(object):
def __init__(self, arr):
"""
:type arr: List[int]
"""
self.arr=arr
def query(self, left, right, threshold):
"""
:type left: int
:type right: int
:type threshold: int
:rtype: int
"""
for j in range(left,right+1):
a=self.arr[j:right+1]
# print a
kv=dict()
for i in a:
kv[i]=a.count(i)
print kv
for key in kv:
if(kv[key]>=threshold):
ele=key
return ele
ele=-1
return ele
# Your MajorityChecker object will be instantiated and called as such:
# obj = MajorityChecker(arr)
# param_1 = obj.query(left,right,threshold)
class Solution(object):
def maxRepOpt1(self, text):
"""
:type text: str
:rtype: int
"""
fina=0
for j in range(len(text)):
for k in range(j+1,len(text)):
new_text=list(text)
a=new_text[j]
b=new_text[k]
new_text[j]=b
new_text[k]=a
c=''.join(new_text)
start=0
end=1
maxstart=0
maxend=1
for i in range(len(c)):
if(c[i-1]==c[i]):
end=i
repeat_len=end-start
if(repeat_len>(maxend-maxstart)):
maxstart=start
maxend=end
else:
start=i
repeat_len=end-start
if(repeat_len>(maxend-maxstart)):
maxstart=start
maxend=end
if(end==1):
d=1
else:
d=maxend-maxstart+1
if(d>fina):
fina=d
return fina