程序设计基础知识
1根据执行方式不同,编程语言分为两类:
静态语言:使用编译执行的编程语言
C/C++语言、Java语言
脚本语言:使用解释执行的编程语言
Python语言、JavaScript语言、PHP语言
2程序的基本编写方法:IPO
I:Input 输入,程序的输入
P:Process 处理,程序的主要逻辑
O:Output 输出,程序的输出
3编程解决问题的步骤
分析问题:分析问题的计算部分,想清楚
划分边界:划分问题的功能边界,规划IPO
设计算法:设计问题的求解算法,关注算法
编写程序:编写问题的计算程序,编程序
调试测试:调试程序使正确运行,运行调试
升级维护:适应问题的升级维护,更新完善
4不同编程语言适用对象
编程语言----学习内容 -----------------------语言本质----------解决问题
C -------------指针、内存、数据类型----理解计算机系统结构------性能
Java ---------对象、跨平台、运行时-----理解主客体关系------ 跨平台
C++ --------- 对象、多态、继承----------理解主客体关系------大规模程序
VB ----------- 对象、按钮、文本框-------理解交互逻辑 ------桌面应用
Python -------编程逻辑、第三方库 ----理解问题求解 ------各类问题
5 Python的两种编程方式
交互式:对每个输入语句即时运行结果,适合语法练习
文件式:批量执行一组语句并运行结果,编程的主要方式
6 Python程序语法元素
缩进:一行代码开始前的空白区域,表达程序的格式框架
严格明确:缩进是语法的一部分,缩进不正确程序运行错误
所属关系:表达代码间包含和层次关系的唯一手段
长度一致:程序内一致即可,一般用4个空格或1个TAB
注释:用于提高代码可读性的辅助性文字,不被执行
单行注释:以#开头,其后内容为注释
多行注释:以’’'开头和结尾 (相当于不被执行的字符串)
变量:程序中用于保存和表示数据的占位符号
变量采用标识符(名字) 来表示,关联标识符的过程叫命名
可以使用等号向变量赋值或修改值,=被称为赋值符号
命名:关联标识符的过程
命名规则: 大小写字母、数字、下划线和汉字等字符及组合
注意事项: 大小写敏感、首字符不能是数字、不与保留字相同
保留字:被编程语言内部定义并保留使用的标识符
Python语言有33个保留字(也叫关键字)
保留字是编程语言的基本单词,大小写敏感
and elif import raise global as else in return nonlocal assert except is try True break finally lambda while False class for not with None continue from or yield def if pass del
赋值语句:由赋值符号构成的一行代码
赋值语句用来给变量赋予新的数据值
赋值语句右侧的数据类型同时作用于变量
分支语句:由判断条件决定程序运行方向的语句
函数:根据输入参数产生不同输出的功能过程
input():从控制台获得用户输入的函数,返回字符串形式
print():以字符形式向控制台输出结果的函数
eval():去掉参数最外侧引号并执行余下语句的函数
通常搭配a=int(input())或a=eval(input())
7 python库的引用
import <库名>
库名.函数名
from <库名> import <函数名>
函数名
from <库名> import *
函数名
import <库名> as 库别名
库别名.函数名
8 可在windows操作系统命令行中启动python,在>>>提示符后输入exit()或quit()退出
9 range(M,N)函数, 从M到N-1,前闭后开。
10、str.join()和str.split()区别
str.join()以制定字符将列表内元素连接,返回字符串
这里的元素为字符类型;也可为字典或集合类型,但无序不可以为数字类型
str.split()与join相反,以指定字符将字符串分为单个元素,返回列表类型
s.split()
例:
s="ab cd"
s.split()
s.join()
例:
lt=["1", "2", "3"]
s="#"
s.join(lt)
11、输入
a,b=map(int,input().split())
或 lt=input().split()
a=lt[0]
b=lt[1]
12、
python中的可变数据类型有列表和字典
对可变数据类型进行对应的方法操作不会改变变量的引用
而对变量进行可变数据类型的赋值会改变这个变量的引用
注意字典的key只能使用不可变类型的数据
在python中,设置字典的键值对时,会首先对key进行hash,以决定如何在内存中保存字典的数据,
以方便后续对字典的操作:增删改查
13、
只要针对参数使用赋值语句,会在函数内部修改局部变量的引用,
不会影响到外部变量的引用。
如果传递的参数是可变类型,在函数内部使用方法修改了数据的内容,
同样会影响到外部的数据。
14、
列表变量使用+=不会做相加再赋值的操作本质上是在调用列表的extend方法
15、
多值参数
一个函数能够处理的参数个数是不确定的,这个时候就可以使用多指参数
python中的两种多值参数:
参数名前加一个*,可以接收元组
参数名前加两个*,可以接受字典
16、元组和字典的拆包
在调用带有多值参数的函数时,如果希望将一个元组变量直接传递给args,
将一个字典变量,直接传递给kwargs。就可以使用拆包来简化参数的传递。
拆包的方式是:在元组变量前增加一个*,在字典变量前增加两个*
def demo(*args, **kwargs):
print(args)
print(kwargs)
gl_nums=(1,2,3)
gl_dict={“name”:“小明”, “age”:18}
demo(gl_nums, gl_dict)#把两个变量都传给了*args
demo(*gl_nums, **gl_dict)#拆包方式