QT | 第二章 基本语法

'''
@Modify Time      @Author   
------------      -------    python基本语法
2019/10/26 8:16   laoalo    
'''
import functools
from filecmp import cmp

print('#'*50,"字符串")
dss = "    hello pyqt.5     "
s1 = dss.strip()
s2 = dss.lstrip()
s3 = dss.rstrip()
s4 = dss.rsplit()
print("原>>",dss)
print("s1>>",s1)
print("s2>>",s2)
print("s3>>",s3)
print("s4>>",s4)
'''
strip :
返回的是字符串的副本,并删除前导和后缀字符。意思就是你想去掉字符串里面的哪些字符,那么你就把这些字符当参数传入。
此函数只会删除头和尾的字符,中间的不会删除。如果strip()的参数为空,那么会默认删除字符串头和尾的空白字符。
lstrip:
去除(字符串)开始的
rstrip:
去除(字符串)末尾的
rsplit:
通过指定分隔符对字符串进行分割并返回一个列表,默认分隔符为所有空字符.
类似于 split() 方法,只不过是从字符串最后面开始分割。
'''

print('*'*50)
s2 = dss.join(['a','.','c'])
print('s2>>',s2)
s3='s3'
s3+='xx'
print('s3>>',s3)
'''
join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
'''

print('*'*50)
css="abc1c2c3"
pi=css.find('c')
print('pi>>',pi)

print("*"*50)
s1,s2='abc','ABC123efg'
print(s1,':大写>>',s1.upper())
print(s2,':小写>>',s2.lower())
print(s2,":大小写互换",s2.swapcase())
print(s1,":首字母大写",s1.capitalize())

print('#'*50,"列表")
import operator
'''
python3移除了cmp()函数,但提供了六个丰富的比较运算符
import operator       #首先要导入运算符模块
operator.gt(1,2)      #意思是greater than(大于)
operator.ge(1,2)      #意思是greater and equal(大于等于)
operator.eq(1,2)      #意思是equal(等于)
operator.le(1,2)      #意思是less and equal(小于等于)
operator.lt(1,2)      #意思是less than(小于)
'''
ls1=[1,2,3,4]
ls2=[8,5,6]
tp=(11,22,33,44)
print("cmp>>",operator.gt(ls1,ls2))
print("len>>",len(ls1))
print("max>>",max(ls1))
print("min>>",min(ls1))
print("list>>",list(tp))

print("*"*30)
ls1=[1,2,3,4]
ls1.append('a')
print("append>>",ls1)
ls1.insert(1,'b')
print("insert>>",ls1)
print("pop>>",ls1.pop()) #默认最后一个

print("*"*30)
ls1=[1,2,3,4,5,6,1,2,3,4,6,5,4]
ls1.remove(2)
print("remove>>",ls1) #只移除第一个匹配项
ls1.reverse()
print('reverse>>',ls1)
ls2.sort()
print('sort>>',ls2)

print('#'*50,"字典")
dict1={'a':97,'b':98}
dict2={'A':65,'B':66}
# print("cmp>>",cmp(dict1,dict2))
print("len>>",len(dict1))
print("str>>",str(dict1))
print("type>>",type(dict1))

print("#"*50,"partial函数的使用")
def add(a,b):
    return a+b
print("add(4+2)=",add(4,2))
p3 = functools.partial(add,3)
p5 = functools.partial(add,5)

r2 = p3(4)
print("p3(4)=",r2)
r3 = p3(7)
print("p(7)=",r3)
r4 = p5(10)
print('p5(7)=',r4)

print('#'*50,"类的动态属性")
class MyClass(object):
    def __init__(self):
        self.__param = None

    def getParam(self):
        print("get param:%s " % self.__param)
        return self.__param

    def setParam(self,value):
        print("set param:%s " % self.__param)
        self.__param = value

    def delParam(self):
        print("del param:%s " % self.__param)
        del self.__param
        
    param= property(getParam,setParam,delParam)

class MyClass1(object):
    def __init__(self):
        self.__param = None
    @property
    def param(self):
        print("get param: %s " % self.__param)
        return self.__param
    @param.setter
    def param(self,value):
        print("set param: %s " % self.__param)
        self.__param = value
    @param.deleter
    def param(self):
        print("del param: %s " %self.__param)
        del self.__param
if __name__ == '__main__':
    cls = MyClass()
    cls.param = 10
    print("current param:%s " % cls.param)
    del cls.param

    print("*"*30)
    cls1 = MyClass1()
    cls1.param = 10
    print("current param: %s " % cls1.param)
    del cls1.param

  

posted @ 2019-10-30 22:54  东坡肉肉君  阅读(1025)  评论(0编辑  收藏  举报