value in sequence || value not in sequence 返回布尔值
#私有属性和“受保护”属性
-----名称改写_ _foo:-------
class Swan:
_ _neck="" #private
swan=Swan()
print("",swan._Swan_ _neck)
--------foo:-----------
=>protect
-------- init _--------
=>系统定义名字
#方法转为属性,但不能修改(只读属性) @property
class Rect:
@property
def area(self):
return self.width+self.height
print("area=",rect.area)
#方法转为属性,可修改 @方法名.setter
class Rect:
@property
def area(self):
return self.width+self.height
@area.setter
def area(self,value)
self.width=value
rect=Rect(100,2)
rect.area=300
print("area=",rect.area)
#Python中关于 round 函数的小坑
python 2Values are rounded to the closest multiple of 10 to the power
minus ndigits; if two multiples are equally close, rounding is done
away from 0.python 3values are rounded to the closest multiple of 10
to the power minus ndigits; if two multiples are equally close,
rounding is done toward the even choice.
#NOTE
round函数的精度处理很差,尽量避免。
例如:round(2.675,2) >>> 2.67
其他可处理float类型的方法:
1.使用math模块中的一些函数,比如math.ceiling(天花板除法)。
2.python自带整除,python2中是/,3中是//,还有div函数。
3.字符串格式化可以做截断使用,例如"%.2f" %value(保留两位小数并变成字符串……如果还想用浮点数请披上float()的外衣)。
4.当然,对浮点数精度要求如果很高的话,用decimal模块。
#命令行内 [-5,256]
>>>a=1000
>>>b=1000
>>>a is b
FALSE
变量a和b的ID不同,但在[-5,256]这个范围内,python会进行缓存,值为TRUE#相反,文件内 [-5,Z]
#同时得到商和余数
>>>divmod(13,3)
(4,1) #返回元组
#获取四舍五入的值
>>>round(3.5)
4
#获取从1970年1月1号00:00:00开始到目前的秒数
>>>import time
>>>time.time()
132121131.0098 #秒.微秒
#以毫秒进行计算
#reset idle
ctrl + F6
#replace()
>>>a="abcd"
>>>a.replace("a","xxx")
xxxbcd
>>>a
abcd
列表篇#slice step
a[1:5:x] x:默认为1,按照x的长度遍历,切片步长
a[:]
a[2:] a[:2]
#enumerate()
for index,item in enumerate(listname):
#输出index和item
listname.extend(seq) #将seq列表中的所有元素加到listname中去
del listname[index] #根据索引删除元素
listname.remove("yuansu") #删除特定元素
#先判断是否存在,再移除
if listname.count(value)>0: #统计value出现次数
listname.remove(value)
#获取首次出现的下标
listname.index(value)
sort() 列表对象的方法
sorted() 内置的sort()
#升序sort(reverse=True)
#降序sort(key=str.lower)
#指定一个小写序 看起来是不区分大小写sorted()
#不改变原序列的顺序
待更新