做软件设计工程师,自然少不了要设计DEMO,之前是单纯的开发根本没用到过,要想从头开始,包括做一些动态效果,真还要学习学习,不然都不知道怎么动手做。
我这里使用的英文版,如果用了中文汉化包的,可以翻译一下参考,功能都差不多的。
做软件设计工程师,自然少不了要设计DEMO,之前是单纯的开发根本没用到过,要想从头开始,包括做一些动态效果,真还要学习学习,不然都不知道怎么动手做。
我这里使用的英文版,如果用了中文汉化包的,可以翻译一下参考,功能都差不多的。
类的概念,定义,使用demo:
#coding:utf-8 """ 类的概念:类是指一类事物,比如说:手机,有属性型号、价格,有功能 打电话,发短信,wifi等等 对象的概念:对象就是类的具体化,比如说:华为p10 类的定义:类名,首字母大写,驼峰命名(每个单词首字母大写),如果类名后不写(),则默认继承自object class [类名][(父类名称,可以0~多个以逗号分隔)]: #属性、函数 """ class Person(): """Person类,类的属性可以动态创建""" def __init__(self,name,age): """初始化方法,初始化属性值,self代表当前对象""" self.name=name self.age=age """双下划线开头属性为私有属性,外部不能访问""" self.__company='c1' #print(self.__company) pass def get_company(self): """访问私有属性方法""" return self.__company def set_company(self,company): """设置私有属性方法,可以做效验判断""" if company!=None and company !='': self.__company=company pass def eat(self): """定义一个类的普通方法""" print("{} eat~".format(self.name)) pass def make_car(self,name,speed): car = Car(name,speed) return car def drive(self,car): car.run() print("{}开着他的小突突【{}】以{}KM/H速度行驶".format(self.name,car.name,car.speed).decode("utf-8")) pass def __test_private(self): """双下划线开头方法为私有方法,外部不能访问""" print("test_private") pass class Car(): def __init__(self,name,speed): self.name=name self.speed=speed pass def run(self): print("{}正在公路上行驶……".format(self.name).decode("utf-8")) """创建对象,构造函数赋值过程 p1->self Json->name 20->age """ p1=Person("Json",20) print(p1.name,p1.age,p1.get_company()) p1.eat() car = p1.make_car("大白",60) p1.drive(car) """16进制打印对象内存地址""" #print(hex(id(p1))) """判断一个对象是否属性某类""" #print(isinstance(p1,Person))
算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。
排序算法:
二分查找算法:
1、安装 Package Control
菜单 View > Show Console
输入:
import urllib.request,os,hashlib; h = '6f4c264a24d933ce70df5dedcf1dcaee' + 'ebe013ee18cced0ef93d5f746d80ef60'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
我们都知道,在robot framework的IDE中执行测试用例,会自动生成测试报告,而纯Python写的函数,单元测试方法是不会自动生成测试报告的,本文就来讲下单元测试和测试报告的生成。
单元测试类库:unittest,在安装python就自带,不需要额外安装,只需要引用即可,下面贴上核心代码,包括两个单元测试:
#unittest1.py
#coding:utf-8 import unittest class case1(unittest.TestCase): def test_case1(self): """ 这里是第1个测试用例 """ result=125*30 print("test_case1 begin") #self.assertEqual(result,3750,'test_case1 结果失败!') assert result==3750,'test_case1 fail!' print("test_case1 结果正确") pass
相信大家都知道,蓝牙的用途有很多。常见的包括播放音乐(蓝牙音箱)、文件传输(手机与手机之间),还有智能锁等等方面,都有用到蓝牙的地方。今天断网,突然想到用手机热点上网,可台式电脑没无线网卡,之前用来播放蓝牙音乐买了个usb蓝牙。从来没试过蓝牙上网,今天试了一下,很简单,也成功了。
下面记录一下使用步骤。
一、手机端设置:
1、打开个人热点
代码内容
# -*- coding: utf-8 -*- #从datetime模块引入3个类:date,timedelta,datetime from datetime import date,timedelta,datetime """ 时间日期的转换和对比,是比较常见的操作 """ today_date=date.today()#获取当前日期:datetime.date类型 print("today_date={}".format(today_date)) today_date_str=today_date.strftime('%Y-%m-%d')#datetime.date类型转换为字符串 print("today_date_str={}".format(today_date_str)) today_datetime=datetime.strptime(today_date.strftime('%Y-%m-%d'), '%Y-%m-%d')#datetime.date类型转换为字符串,再转换为datetime.datetime类型 select_date_str='2018-06-30' select_datetime = datetime.strptime(select_date_str,'%Y-%m-%d')#字符串类型转换为datetime.datetime类型 print(type(select_datetime)) future_diff=(select_datetime-today_datetime).days#判断日期之前相差的天数 isrealtime=False if future_diff >= 0:#选择日期大于或等于今日今天 isrealtime=True pass print("所选日期是否大于或等于今日:{}".format(isrealtime)) oneday = timedelta(days=1)#时间差对象数据 yes_datetime=select_datetime-oneday#日期类型时间操作 yes_datetime_str=yes_datetime.strftime('%Y-%m-%d')#昨日时间,字符串类型 print("yes_datetime_str={0}".format(yes_datetime_str)) #取年、月、日 print("year={},month={},day={}".format(select_datetime.year,select_datetime.month,select_datetime.day)) #判断每月最后一天:原日期加上一天,如果的天数为1,那原日期就是上个月最后一天 print("is lastday:{}".format((select_datetime+oneday).day==1))
练习笔记代码
# -*- coding: utf-8 -*-
#dict 字典表,属于可变映射,可包含任意对象的无序集合,长度可变,通过键值key访问
d={'name':'Tom','age':20,'salary':3900.00}
print(d)
print(d['name'])
d=dict(title='python',author='Tom')#函数创建字典
练习笔记代码
# -*- coding: utf-8 -*-
#tuple 元组(其实就是数组),属于不可变序列,本身不可原位改变,可包含任意类型、嵌套
#需要注意的是,如果只有一个元素,要在后面加一个,号,否则会是一个元素而不是元组
t = (1,)
print(t)
t = 1,2,3#等同于 t=(1,2,3)
print(t)
t = tuple(range(1,6))#类似list