本文共 6669 字,大约阅读时间需要 22 分钟。
a、 打开 Command(CMD)
b、 cd 到脚本所在目录下
c、 python script.py
计算机定义:计算机是根据指令操作数据的设备,计算机具有功能性和可编程性两大特点
。
编译和解释的区别
:编译是一次编译后,在源代码无改变的情况下,以后执行无需再次编译便可以直接执行,符合批处理系统;解释是按行解释执行,一次一行代码,每次执行都需要重新解释,符合交互式系统。编译的好处就是目标代码执行速度快,在同系列操作系统上使用灵活,不足之处就是可移植性较差;解释程序的好处就是保留源代码,程序纠错方便,可移植性强,脚本可以在任何一台装有相应解释器的设备上运行。
机器语言和汇编语言是CPU所能够直接执行的语言,其余语言都需要编译或解释成汇编语言或机器语言后才能被 CPU 执行
。
IPO 程序编写方法
:
Input:每个程序都有数据输入功能。
Process:每个程序都有相应的事事务处理逻辑。
Output:每个程序都有将处理结果进行输出的功能。
Python 作为交互式编程语言,即解释性编程语言,没有所谓的脚本结构
,而同样是面向对象编程语言的 C/C++、Java 都有一个基本脚本框架。理论上 Python 脚本可以按行与缩进规则任意编辑代码,但实际上为了适应 Project 的开发,Python 脚本应当做一些结构规范:
a、 在 Project 里面的启动程序脚本里,应当设置由如下标识的程序入口: if __name__ == “__main__”:
b、 函数式编程:编辑 Python 脚本应当模块化,也就是相应功能封装在一个 def 里面,而不是由着性子随便编辑。
c、 缩进一致:由于 Python 不再使用花括号来划分代码域,而是靠缩进来确定代码域,因此不能随便缩进。
Python 使用井号“#”
和“’’’注释’’’”
两种分别进行行注释和块注释。引号都必须是英文输入法下的。
Python 脚本中的变量名、函数或方法名、属性名等涉及到命名的应当由大小字母、数字和下画线、汉字(不推荐)等组成
,并且不得以数字开头
,下画线或双下画线开头命名的标识符具有特殊含义故而也不得随便使用
。
由于 Python 中的字符型数据只有字符串一种
,不像 C/C++ 和 Java 有单字符和字符串两种,因此单引号和双引号都可以用来扩起一个字符串,通常以双引号为主
。实际使用灵活变化,例如字符串里的值中有双引号,则字符串可以采用单引号括起来,反之则反。另外,由于反斜杠在 Python 中同样具有转义作用,因此字符串中的反斜杠都应当写成双反斜杠。此外,字符串还可以三引号表示,三引号通常用于表示带换行的文本
。variable = input(“prompt”)
print(attribute)
if…elif…else
三个关键字灵活组成;循环执行由for
和 while
标识,while 用法和其他编程语言一样
,for 循环稍有不同
,for 使用形式如下: for a in range(start, end, step) 或 for a in object(序列型数据对象,如array、list 等)
该函数可以将字符串中的数字、运算式等转换为 Python 语句并执行
,通常用于将input 函数的返回值转换为非字符型数据。class Car: def __init__(self): print("你调用的Car 类") self.__speed = 20 self.__color = "black" self.__price = 123.456 def setColor(self, color): self.__color = color def setSpeed(self, speed): self.__speed = speed def setPrice(self, price): self.__price = price def Display(self): print("The color, speed and price of this car is " + self.__color + ",speed: {:d}".format( self.__speed) + ", price:{:.2f}".format(self.__price))if __name__ == "__main__": car = Car() car.Display() car1 = Car() car1.setColor("white") car1.setSpeed(200) car1.setPrice(45800.425)car1.Display()
程序输出:
def __init__(self)
函数就是类体的初始化函数,也可以理解为构造函数,那些以双下画线开头的变量就是类的私有属性
,外部是无法访问到的,只能通过类的公开方法进行间接访问。try: expression sentence 1except ExceptionType1: expression sentence 2…expect ExceptionType N: expression sentence 3# try-except 语句还可以跟 else 和 finally 结合使用:try: expression sentence 1except ExceptionType 1: expression sentence 2else: expression 3finally: expression 4
即所谓的海龟库,是 Python 提供的一个用于绘制简单图像的图形绘制库
。海龟的坐标体系有两套,分别是用户视界和海龟视界
,前者以屏幕的纵横为x 轴和 y 轴,方向向右和向上;后者以海龟为中心的前后左右四个方向,注意海龟的初始朝向是朝屏幕右方的,因此可以如此将两个坐标体系联系起来,默认状态下: 海龟前方就是屏幕右方,海龟左方就是屏幕上方,海龟后方就是屏幕左方,海龟右方就是屏幕下方。.setup(width, height, startx, starty)width:窗口宽度,整数值表示像素值,小数值表示窗口与屏幕的比例height:窗口高度,值得设置同 widthstartx:窗口左侧距屏幕左侧的像素距离,默认水平居中。starty:窗口顶部距屏幕顶部的像素距离,默认垂直居中。
.penup() 函数:笔拿起,该函数之后的任何操作不会在画布上留下痕迹。别名:.pu(), .up().pendown() 函数:笔落下,功能与 penup 函数相反。别名:.pd(), .down().pensize() 函数:设置画笔尺寸,即笔画宽度。别名:.width().pencolor() 函数:设置画笔颜色,参数值可以是颜色名字符串,也可以是(r, g, b)元组。
.fd(distance) 函数:朝当前方向前进 distance 距离,距离为正值则表示前进,距离为负值则表示后退。别名:.forward(distance).seth(to_angle) 函数:用于改变画笔绘制方向,即将画笔设置为to_angle,角度为绝对方向角度值。别名:.setheading(to_angle).circle(radius, extent=None)函数:用于以 radius 为半径画角度为 extent的弧,当第二个参数不指定时,则默认画圆
整型和浮点型、复数类型
。对应数学中实数,浮点型必须有小数值,可以为 0,但不能不带,否则无法与整型区分开来
。<a>e<b>=a*10^b.
12.3+4j,1.23e-4+5.67e+89j
。对一个复数 z,可以用 z.real 和 z。image 来获取实部和虚部的值。Python 使用字符串对象的 format 方法对字符串进行格式化,该方法使用方法如下:
“{<参数序号>:<格式控制标记>}”.format(att1,att2….)
其中的格式控制标记,自“:”开始从左向右依次如下:
匿名函数
,用于完成简单的功能,类似于C/C++中的宏定义,使用形式如下: <函数名> = lambda <参数列表> : <表达式>
可选参数即带有默认值的参数
,即函数在声明时便为参数赋值,因此可以在使用该函数时可以使用默认赋值。可选参数的位置应当位于参数列表的最右边,即位于非可选参数的右边
。例如:def example(a, b=12).
星号“*”表示可变数量参数
,声明形式如下: def example(a, *b)
,同样的可变数量参数也只能在参数列表的最后
。按位置则实参必须与形参列表一一对应
,否则函数结果将出错;按名称传递
,即用“形参名=实参”的形式进行传参,此时参数位置可以不必一一对应。函数体内部的变量也是局部变量
,只能作用于函数体内部,同样的形参的变化不会影响到实参。如果想函数体内的某个变量作用到函数体外,则可以用global
关键字声明为全局变量。函数自身调用自身
,经典例子就是斐波那契数列的求法。组合类型数据
,若其中每个元素都是 True和非空元素、非 0,则返回True,否则返回 False。 2) any() 函数:只要组合类型数据中的元素有一个非False,就返回True。 3) hash() 函数:对于能够计算哈希的类型返回哈希值
。 4) id() 函数:对每一个数据返回唯一编号,即数据的内存地址
,常用于比较两个数据是否一致。 5) reversed() 函数:返回输入组合数据类型的逆序形式。 6) sorted() 函数:对一个序列进行排序,默认从小到大。 7) type() 函数:返回参数对应的数据类型名称
。 datetime 库 1) datetime.date:日期类,可以表示年月日 2) datetime.time:时间类,可以表示小时、分钟、秒、毫秒等 3) datetime.datetime:日期和时间的表示类,功能覆盖date和time 4) datetime.timedelta:与时间间隔有关的类 5) datetime.tzinfo:与时区有关的信息表示类所有计算机都能输出从格林威治标准时间1970年1月1日00:00:00 开始到当下的时间计数,精确到秒。
datetime.now()
函数:返回当前日期和时间,精确到秒,2020-06-20 14:54:01.396110。
datettime.utcnow()
函数:返回当前日期和时间的 UTC 表示,精确到微秒2020-06-20 06:58:14.231605
datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0)
方法:返回一个指定时间日期的 datetime 类型,可以精确到微秒。其中年份指定必须大于 1970,小于 2^39 (64位系统),微秒则不能大于1 000 000
以下属性或方法的调用都要用datetime对象的“对象名.method()”形式调用
序列类型、集合类型和映射类型
。序列类型有12个通用操作符或函数
,如下表: 元组使用圆括号括起来,元素之间用英文逗号分隔
,声明时也可以不需要用圆括号 元组一旦声明就不能修改
,元组通过“[]”来取指定元素,如下: 元组还可以用tuple() 函数将其他序列型数据转换而得到
。列表使用中括号“[]”括起来
,可以由声明得到,也可用list() 函数转换其他序列型数据而得到。同样的列表中的元素的数据类型可以不一致,元素也可以是一个列表,元素之间用英文逗号分隔。列表也是可以用“列表名[i]”的形式取指定元素的值。列表是几维,就可以有几个中括号,如下 Python 中的集合类型就是集合(set),与数学中的集合一样,是一种无序集,元素类型只能是固定数据类型
,Python编译器界定固定数据类型与否主要考察类型是否能够进行哈希运算,能进行哈希运算都能作为集合元素。
能作为集合元素的有整数、浮点数、字符串、元组
不能作为集合元素的有列表、字典和集合类型本身
。
集合用花括号“{}”括起来,集合可以由用花括号进行声明也可以用set() 函数转换而来
映射类型是“键-值”数据项的组合
,元素都是键值对,元素之间无序。通常称键为属性,值为属性值。dict = {<key1>:<value1>, …, <keyN>:<valueN>}
<值> = <字典变量名>[<键>]
转载地址:http://jqqgn.baihongyu.com/