python编程基础之十四】的更多相关文章

面向对象:三大特征:封装,继承,多态 封装:隐藏对象的实现过程,对外仅仅公开接口,控制在程序中的读取和修改的访问级别 类,函数都是一种封装 属性私有化:当类里面的属性不想被外部访问,可以将这些属性设置为私有属性,只需要家两个下划线'__', 例如:__age,这就是个私有属性,加一个下划线的成为保护属性, 可以直接访问,但是因为是保护属性所以大家对这类属性,不会特意去访问,一般不会访问,都是约定俗成的,没有具体规定要求 class Dog: def __init__(self,name,gend…
列表的增加元素 l1 = [10, 20, 30] l1.append(40)  # 末尾追加一个值为40的元素 l1.extend([50, 60])  # 末尾追加一系列元素,extend + 可迭代对象 l1.insert(len(l1), 70)  # 在制定下标位置插入一个元素,在指定的下标之前插入 列表的删除元素 m = l1.pop()  # 删除一个元素,没有输入参数,默认表示删除最后一个 并且返回被删除的元素值 print( m )  # 70 l1.pop(0)  # 删除下…
时间模块: 时间戳:就是当前是键距离1970年1月1日0:0:0的秒数,后面还带小数,可以说是非常精确 时间的表示形式: a.以整数或者浮点数表示一个以秒为单位的时间间隔,这个时间的基础值1970.1.1的零时零分零秒(时间戳) b.采用Python中的数据结构表示,采用元组,元组中可以有9个不同的元素,表示不同的含义 c.格式化的时间字符串 time 模块: import time #1.获取当前时间戳 t = time.time() #1527506380.6267307 print(t)…
正则表达式:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑. 需要引入内置模块re 缺点:效率低下,能用字符串方法完成尽量使用字符串的方法 优点:编码简单 原子  含义 \d 0-9中的任意一个字符 \D 排除0-9 \s \t,\n,\r,空格等字符中的一个 \S 排除\s \w 数字字母下划线 \W   排除\w [] 自定义的原子表 [^] 排除自定义的原子表 ^ 行首,…
文件处理:文件处理包括读文件,写文件 读文件: 1.打开文件 2.读取文件 3.关闭文件 写文件: 1.打开文件 2.写如文件 3.关闭文件 无论是读取文件还是写文件都时需要打开文件,和关闭文件 打开文件: fp = open(file [, mode='r',  encoding=None, errors=None]) file:文件路径,可以是相对路径和绝对路径 mode:文件打开模式 r 只读 w 写之前会清空文件的内容 a 追加的方式,在原本内容中继续写 r+ 可读可写 w+ 打开一个文…
系统的魔术方法:系统的魔术方法特别多,但是也都特别容易懂,简单的讲就是对系统的内置函数进行重写,你需要什么效果就重写成什么样, 比如说len()方法针对的对象本来没有自定义类的对象,但是当你重写了__len()__这个魔术方法时候,就可以对你需要的进行计算了,这个需要积累 这里给个例子吧 class Dog: def __init__(self, l): self.l = [] self.l.extend(l) def __len__(self): return len(self.l) l1 =…
成员方法:成员方法就是一个函数,只是作用域在类内,并且第一个参数必须是self,self代表当前对象, class Dog(object): def bark(self): #成员方法,第一个参数必须是self,代表当前调用对象 print('我是小可爱--丁丁') dingding = Dog() #实例化一个对象 #调用方法,不需要传参数,self是系统传递的 #调用形式: 对象.方法([实参]) dingding.bark() #等价调用形式:bark(dingding) self参数在调…
字符串判断常用函数: str.isalpha()  # 判断是否是全字母 str.isdigit()   # 判断是否是全数字 str.isalnum()  # 判断是否是字母和数字组合 str.isdecimal()  # 判断是否是全数字 str.isnumeric()  # 判断是否是全数字,包含汉字中的数字,例如:一 str.isspace()  # 判断是否是空格 str.islower()  # 判断是否是小写 str.isupper()  # 判断是否是大写 str.startsw…
字符串的查找和替换常用函数: str.count(sub,start = 0,end = len(str)) 计算sub 在str中出现的次数,[start,end)寻找区间 str.find(str1,start = 0,end = len(str))  从左至右查找str1在str中出现的位置,并返回下标,如果未找到,则返回 -1 str.rfind(str1,start = 0,end = len(str)) 从右至左 str.index(str1,start = 0,end = len(…
for in 循环,与其说是循环不如说精确点交遍历 for 变量名 in + 迭代对象 语句A else: 语句B 作用:一次访问迭代对象中的元素并赋值给变量 循环终止时,执行else语句块,如果break打破循环,则else也被打破,也就是说else下面的语句B不会执行 尽量不要在for in 语句中添加或删除元素 range 系统提供的内建函数range(start,end,[step=1]), 生成一个不可变的等差序列[start,end),左闭右开,不支持元素更改,不支持 * 操作 一般…
二维列表 l1 = [[1, 2, 3], [4, 5, 6]] print(l1[0][0]) 列表负值 列表复制为两种:深复制,浅复制 浅复制:只复制容器,容器里的元素不产生副本,只是技术引用增加 深复制:不但复制容器,容器里面的元素也产生副本 对于非容器类型,包括int,float,bool,complex不存在深复制,都是浅复制 l1 = [[1, 2][3, 4][5, 6]] l2 = l1.copy() l3 = copy.copy(11) print(id(l1), id(l1[…
列表:一种有序的集合,可以同时存储多个数据,列表元素可修改,属于可变序列 创建列表: 列表名 = [列表选项一,列表选项二,列表选项三,......] list1 = [] list2 = [10,20,30,40] list3 = list() list4 = list('hello world)  # ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'] 列表中元素的访问 列表中元素不允许整体进行操作,只能单个存取 list1 = […
分支条件: 单一分支条件:if 条件 : 条件真运行... 双分支条件:if 条件 : 条件真运行else: 条件假运行... 多分支条件:if 条件1 : 条件1真运行elif 条件2 : 条件1假,且条件2真才运行...else: 所有条件均假运行...所有分支语句,不管是什么类型,最终都是只运行一个分支部分的代码然后跳出分支语句…
Bootstrap 缩略图.大多数站点都需要在网格中布局图像.视频.文本等.Bootstrap 通过缩略图为此提供了一种简便的方式.使用 Bootstrap 创建缩略图的步骤如下: 在图像周围添加带有 class .thumbnail 的 <a> 标签. 这会添加四个像素的内边距(padding)和一个灰色的边框. 当鼠标悬停在图像上时,会动画显示出图像的轮廓. 下面的实例演示了默认的缩略图: <!DOCTYPE html> <html> <head> &l…
http://www.cnblogs.com/yank/p/4177619.html C#编程总结(十四)dynamic 介绍 Visual C# 2010 引入了一个新类型 dynamic. 该类型是一种静态类型,但类型为 dynamic 的对象会跳过静态类型检查. 大多数情况下,该对象就像具有类型 object 一样. 在编译时,将假定类型化为 dynamic 的元素支持任何操作. 因此,您不必考虑对象是从 COM API.从动态语言(例如 IronPython).从 HTML 文档对象模型…
Python学习笔记(十四): Json and Pickle模块 shelve模块 1. Json and Pickle模块 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值. 1. 什么是序列化 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中…
Java15-java语法基础(十四)抽象类 一.抽象类的作用 三个类都有"执行任务"的方法,分别在这三个类中进行定义,因此需要重复编写代码,降低了程序开发效率,且增加了程序出现错误的机会. 利用抽象类解决该问题. 二.抽象类和抽象方法 1.抽象类:抽象类刻画了公共行为的特征,但并没有在抽象类的内部实现这些公共行为,而是通过继承机制由派生类实现具体的公共行为. 2.抽象方法:凡是用abstract修饰的成员方法都是抽象方法,只声明方法而没有方法的具体实现. 3.语法: [访问控制修饰符…
python 编程基础练习 第一天: 需求: 1.计算2的38次方,180*0.7输出(精度显示正常), x的y次方,数字倒序输出即345876输出678543,方法越多越好. 2.字符串处理: 1)解析字符串中的字段:type:req_get_eth_info,mac:00-1D-7D-42-C1-C7,ip:10.20.128.128;需将字符串中的type,mac,ip三个字段的的值解析处理,比如type的值为req_get_eth:字符串结尾以英文分号":"结尾 2)将字符串a…
Python自动化 [第十四篇]:HTML介绍 本节内容: Html 概述 HTML文档 常用标签 2. CSS 概述 CSS选择器 CSS常用属性 1.HTML 1.1概述 HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记).相当于定义统一的一套规则,大家都来遵守他,这样就可以让浏览器根据标记语言的规则去解释它. 浏览器负责将标签翻译成用户“看得懂”的格式,呈现给用户!(例:djangomoan模版引擎) 1.2…
数据层一般会给人带来一些困扰,在于其定位不准确.聚合Model的工作也可以放在逻辑层做,但会导致逻辑层变重,经常出现大段晦涩代码.因此我的建议是保留Model聚合层,尽管会导致工作量的略微增加,但却可以使代码逻辑更加清晰,即每一层都只做自己该做的事. 数据层可以不存在的理由在于逻辑层的业务聚合层已经做了类似的事.但区别在于,业务聚合层是以业务流程来划分的,而数据层则是更为细分的DB层上的聚合. 举个简单的例子,业务中经常会涉及到活动,一方面活动有自己的各类配置,比如规则.奖励.周期等,一方面活动…
并发编程从零开始(十四)-Executors工具类 12 Executors工具类 concurrent包提供了Executors工具类,利用它可以创建各种不同类型的线程池 12.1 四种对比 单线程的线程池: 固定数目线程的线程池: 每接收一个请求,就创建一个线程来执行: 单线程具有周期调度功能的线程池: 多线程,有调度功能的线程池: 12.2 最佳实践 不同类型的线程池,其实都是由前面的几个关键配置参数配置而成的. 在<阿里巴巴Java开发手册>中,明确禁止使用Executors创建线程池…
第三节 简单的Python数据类型.变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装.WINDOWS系列Python编辑和运行界面等内,这节就开始真正的语言学习了.本节介绍的内容是为了大家尽快开始使用Python编写简单的代码,是Python编程最基本的内容. 一. Python的基础数据类型 学语言首先要知道语言的数据类型,Python数据类型比较多,本节只引入最基础的字符串(str)和整数(int).浮点数(flo…
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ifup命令的功能 ifdown命令的功能 ifup命令的用法举例 ifdown命令的用法举例 网络配置文件 网卡对应的网络配置文件 什么是网络配置 ip命令 ping命令 setup命令 课后作业 [本节内容]1. 使用ifconfig命令来维护网络(详见linux系统管理P422)1) 掌握if…
第十四章 类型信息 运行时类型信息使得你可以在程序运行时发现和使用类型信息 14.1 为什么需要RTTI 面向对象编程中基本的目的是:让代码只操作对基类的引用. 多态: import java.util.*; abstract class Shape { void draw() { System.out.println(this + ".draw()"); } abstract public String toString(); } class Circle extends Shape…
一.寄存器:寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果. 1.寄存器的特性: 1)寄存器位于CPU内部,数量很少,仅十四个: 2)寄存器所能存储的数据不一定是8bit,有一些寄存器可以存储16bit数据,对于386/486处理器中的一些寄存器则能存储32bit数据: 3)每个内部寄存器都有一个名字,而没有类似存储器的地址编号. 2.寄存器的分类: 1)数据寄存器:数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的…
ython条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 判断条件: 执行语句……else: 执行语句…… x=int(input("请输入成绩"))if x>60: print('好')else: print('不及格') 精确判断:需要用到多层if else循环练习:用if写出判断成绩的等级: 95 了不得 90-95 优秀 80-90 良好 60-80 刚刚好 60以下 加油 grade…
1.Python中的变量赋值不需要类型声明 2.等号(=)用来给变量赋值 3.字符串拼接用  “+”  号 temp=‘123’ print('temp的值是%s'%temp) #整数和字符创的转换,int(),将字符创转换为整数,str(),转换成字符串类型 a=10b='10'c=int(b)d=str(a)print("str转换成int:%s"%type(c))print("int转换成str:%s"%type(d)) name=input("你叫…
一.递归 1.定义: 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. (1)递归就是在过程或函数里调用自身: (2)在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口. def age(n): if n ==1: #条件判定 return 10 #返回一个结果 else: return age(n-1)+2 #重复调用函数本身,系统会将运算的结果存放到栈,然后再依次的进行取值调用. print(age(5)) #打印结果 执行结果:18 2.优缺点…
函数: def 函数名([参数1],[参数2],[参数3], ... ,[参数n]): 函数体代码 函数名命名规则:同标识符命名相同,但是多了一点,不要和系统函数重名,其实所有命名都是一样只要符合标识符命名,然后不要和系统的各种名字相同就行,但是每一种命名一般都有自己不同的风格,函数名命名风格一般是用下划线分隔法 函数参数分为:位置参数,关键字参数,默认值参数,可变参数, 函数形参位置关系:从左至右应该依次是:位置参数,关键字参数,默认参数,可变参数 位置参数:就是要按照顺序,来传参, 关键字参…
域名系统(DNS) 是一个分布式的数据库,它主要用来把主机名转换成IP地址.DNS以及相关系统之所以存在,主要有以下两个原因:   它们可以使人们比较容易地记住名字,如www.baidu.com. 它们允许服务器改变IP地址,但是还用同样的名字.       作为一个例子,让我们看一下查询    www.baidu.com  首先,您的程序会和操作系统配置文件指定的本地名称服务器通信.这个服务器是一个递归的名称服务器,它收到请求并以适当的方式传递下去,它会为您完成大量工作.        递归服…