‘壹’ 关于python字符串(str)类的问题
貌似字典链表才有类可以继承(dict和list),string木有
classMutableString():
def__init__(self,string=""):
self.str=string
defchange(self,new="new"):
self.str+=new
def__str__(self):
returnself.str
defcapitalize(self):
self.str=self.str.capitalize()
defupper(self):
self.str=self.str.upper()
‘贰’ Python发牌案例几个问题求解答
python是当下十分火爆的编程语言,尤其在人工智能应用方面。如果有心从事编程方向的工作,最好到专业机构深入学习、多实践,更贴近市场,这样更有利于将来的发展。
‘叁’ python __str__具体用法
python里面的对象基本上都默认有个__str__供print函数所用
在你这个例子里,当你实例化这个类的时候,可以直接调用这个默认的__str__函数,得到这个类初始化的值
‘肆’ python编程 关于类当中一个方法的问题
我想这里你应该不理解的是__new__和__init__的区别所在,下面我就为您解释一下:
1. 当你需要控制产生一个实例,用__new__;而当你需要控制实例的初始化,用__init__。我们一般在定义Class的时候会先用__init__进行初始化。
2. __new__是创建实例的第一步,之所以是第一步是因为它负责返回这个实例。然而,__init__并不返回任何东西,它只负责当实例被创建之后去初始化这个实例。
3. 总体而言,不需要重复写__new__除非需要生成一个不可改变的类型,比如字符串,整型,或者数组(tuple)。
那么在这里,v = cls.__new__(cls, object)就是创建一个实例并返回这个实例。cls就是指你创建的cls本身,就像在__init__(self, param_1, param_2)中的self一样,而object则是用来初始化的,作用和__init__一样。由于你这里处理的是数组tuple,这是不可改变的(immutable)类型,所以需要写__new__,否则是不需要写的。
下面我给你一个我写的定义点和向量的类,程序如下:
class Point:
def __init__(self,x,y):
self.x = x
self.y = y
def __str__(self):
return '(' + str(self.x) + ', ' + str(self.y) + ')'
class Vector:
def __init__(self,start_point,end_point):
self.start = start_point
self.end = end_point
def __str__(self)
return "[" + str(self.end.x - self.start.x) + "," + str(self.end.y - self.start.y) + "]"
def length_vector(self):
return math.sqrt( ((self.start.x - self.end.x) *
(self.start.x - self.end.x))
+ ((self.start.y - self.end.y) *
(self.start.y - self.end.y)))
希望能够帮到你,如果不懂可追问,望采纳!
‘伍’ python数据分割
str='124,ad,"33,412"'
st=''
foriinstr:
i=i.strip('"')
st+=i
stt=''.join(st)
sttt=''.join(stt[0:9]+stt[10:])
list=sttt.split(',')
print(list)
结果:['124', 'ad', '33412']
‘陆’ 菜鸟求大大们解释Python里str函数和repr函数的区别
这个简单
str是显示给用户用的
repr是给机器用的。
class A(object):
def __str__(self):
print "this is A class"
def __repr__(self):
print "this is repr func"
a = A()
比如print a
调用的是a的__str__方法
而如果你在python解释器里直接敲a后回车,调用的是a.__repr__()方法
‘柒’ python str和repr的区别
str与repr区别:
1、python中str函数通常把对象转换成字符串,即生成对象的可读性好的字符串,一般在输出文本时使用,或者用于合成字符串。str的输出对用户比较友好适合print输出。
2、pyton中repr函数将一个对象转成类似源代码的字符串,只用于显示。repr的输出对python友好,适合eval函数得到原来的对象。
3、在类中实现__str__和__repr__方法,就可以得到不同的返回,示例代码:
>>>classtest(object):
def__repr__(self):
return"returntestrepr()string."
def__str__(self):
return"returnteststr()string."
>>>print(str(test()))
returnteststr()string.
>>>print(repr(test()))
returntestrepr()string.
‘捌’ python 发现列表包含指定内容则退出循环
#!/user/bin/python
def test():
while(True):
flag=0
#python 2.7
value=raw_input("Enter value:")
#python 3.2
#value=input("Enter value:")
print(value)
f1=open(r"c:\b.txt",'r').readlines()
#delete '\n' at the end of line
f1=list(map(lambda x:x.strip(),f1))
#check out the data in b.txt
print(f1)
for member in f1:
if(value in member):
print("find it!")
flag=1
break
if(flag==0):
print("Not find it, and you are free now!")
break
test()
‘玖’ Python函数def correct_sentence(text: str) -> str:
char *strtok(char *s, char *delim); 分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。 首次调用时,s指向要分解的字符串,之后再次调用要把s设成NULL。 strtok在s中查找包含在delim中的字符并用NULL('')来替换,直到找遍整个字符串。