《python编程从入门到实践》书

变量和简单数据类型

变量

  • 变量的命名规则:
    1)变量名职能包含字母、数字和下划线,以字母或下划线开头,不能以数字开头。
    2)变量名不能包含空格,但能使用下划线分隔其中单词
    3)关键词和函数名不能作为变量名

字符串

  • 字符串:使用单引号或双引号括起来的字符串。
  • 修改字符串的大小写:
    -title():将字符串首字母大写
    -upper():将字符串全大写
    -lower():将字符串全小写
  • 在字符串中使用变量:通过将花括号的变量替换为其值来设置字符串的格式。
    -full_name=f"{first_name} {last_name}"
    -full_name="{} {}".format(first_name,last_name)
  • 空白:任何非打印字符,如空格、制表符、换行符
    \t:制表符 \n:换行符
  • 去除空白:
    -rstrip():去除字符串开头的空白
    -lstrip():去除字符串末尾的空白
    -strip():去除字符串两边的空白

  • 整数:+加、-减、*乘、\除、%取余、//取整
  • 浮点数:带小数点的数
  • 将任意两个数相除时,结果总是小数
  • 数很大时,使用下划线将数字分组。打印是不会打印下划线
  • 系列解包赋值:x,y,z=1,2,3
  • 常量:全大写

列表

列表简介

  • 列表:由一系列特定顺序排列的元素组成,用[]表示,使用,分隔。
  • 修改列表元素:指定列表名和修改的元素索引,再指定该元素的新值 a[0]=‘hzh’
  • 在列表中添加元素 x.appen() x.insert()
  • 删除列表元素:del x[0] a.pop() a.remove()
  • 排序:x.sort() sorted(x)<reverse=Ture> x.reverse()
  • 确定列表长度:len(x)

操作列表

  • 遍历整个列表:for item in list:
  • 避免缩进错误:忘记缩进、忘记缩进额外的代码块、不必要的缩进、循环后不必要的缩进、遗漏了冒号
  • 创建列表:使用range()创建数字列表
  • 对数字列表执行简单的统计计算:min、max、sum
  • 列表解析:x=[表达式 for 变量 in 可迭代对象]
  • 切片:[start🔚step]遍历切片、复制列表

元组

  • 元组:用圆括号进行标识
  • 元组不能修改元组的元素,但可以给存储元组的变量赋值

if语句

条件测试

  • 检查是否相等:= \ 检查是否不想等:!=
    检查是否相等时注意是否需要区分大小写
  • 数值比较:== != <= < > >=
  • 检查多个条件:and or
  • 检查特定值是否包含在列表中:in
    检查特定值不包含在列表中:not in
  • 布尔表达式:Ture False

if语句

  • if语句分为简单if语句、if-else结构、if-elif-else结构、使用多个elif语句、省略else语句、测试多个条件<多个if语句>

字典

  • 字典:使用花括号中一系列键值对表示,键值对是两个相关联的值,通过键访问值。键与值之间用:分隔,键值对之间用逗号分开。
  • 访问字典中的值:可依次指定字典名和放在方括号内的键,a[‘name’]
  • 添加键值对:依次指定字典名、用方括号括起的键和相关联的值,a[‘score’]=90
  • 修改键值对:依次指定字典名、用方括号括起的键和相关联的新值,a[‘score’]=80
  • 删除键值对:使用del语句将相应的键值对彻底删除,必须指定字典名和删除的键
  • 使用get()访问值:get()第一个参数用于指定键,第二个指定键不存在时要返回的值<可选>

遍历字典

  • 遍历所有的键值对:for key, value in a.items():
  • 遍历字典中的所有键:for key in a.keys():
    特定的顺序遍历字典中的所有键:for key in sorted(a.keys()):
  • 遍历字典中的所有值:for value in a.values():
    若剔除字典中重复项,则使用集合set:for value in set(a.values()):

嵌套

  • 字典列表<字典在列表中>、在字典中存储列表、在字典中存储字典

用户输入和while输入

input()输入

  • 输入为字符串,可通过int()获取数值输入

while循环

  • 作用:让用户选择何时退出、使用标志<定义一个变量用于判断整个程序是否处于活动状态>
  • 使用break退出循环,break语句用于控制程序流程
  • 在循环中使用contimue
  • 避免无限循环:确保程序中存在False或者break语句以跳出循环
  • 使用while循环处理列表和字典:
    1)在列表之间移动元素
    2)删除特定值的所有列表元素
    3)使用用户输入填充字典

函数

  • 形参parameter:函数完成工作所需的信息
    实参argument:调用函数时传递给函数的信息
  • 传递实参:
    1)位置参数:按顺序将函数调用的实参关联到函数定义中的相应形参
    2)关键字实参:传递给函数的名称值对
    3)默认值:使用默认值时,必须在形参列表中列出没有默认值的形参,再列出有默认值的实参
  • 返回值:函数返回的值,可使用return语句将值返回到调用函数的代码行。
  • 向函数传递列表的副本可保留原始列表的内容,但对于大型列表而言复制列表会增加时间复杂度。
  • 传递任意数量的实参:通用形参名*args,也收集任意数量的位置实参
def make(*names): #创建names的空元组,将所有的值封装到元组中
	print (names)
make('hzh')
make('hzh','terence') 

1)结合使用位置实参和任意数量实参:python先匹配位置实参和任意数量实参,再将鱼下的实参收集到最后一个形参。
2)使用任意数量的关键字实参:**kwargs用于收集任意数量的关键字实参

def build_profile(first,last,**user_info):  #**user_info创建一个空字典,将所有收到的名称值对放入字典中
	user_info['first_name']=first
	user_info['last_name']=last
	return user_info
build_profile('albert','einstein',location='pronceton','field'='physics')
  • 将函数存储在模块中
    1)调用模块中函数:module_name.function_name()
    2)导入特定的函数
    -from module_name import function_name
    -from module_name import function_name0,function_name1,function_name2
    3)使用as给函数指定别名:from module_name import function_name as fn
    4)使用as给模块指定别名:import module_name as mn
    5)导入模块中所有函数:from module_name import *

  • 实例化:根据类来创建对象

创建和使用类

  • init():开头与结尾必须有两个下划线,否则使用类创建实例时,不会自动调用。
  • 类中函数即方法,与函数相同,唯一的区别在于调用方法的方式的差异
  • 通过实例访问的变量即属性
  • 根据类创建实例
    1)访问属性
    2)调用方法
    3)创建多个实例

使用类和实例

  • 给属性指定默认值:创建实例时,有些属性无须通过形参来定义,可在方法__init__()中为其制定默认值
  • 修改属性的值;直接修改属性的值、通过方法修改属性的值、通过方法对属性的值进行递增

继承

  • 继承:一个类即成另一个类时,将自动获得另一个类的所有属性和方法,原有的类称为父类,新类称为子类。子类即成父类的所有属性和方法,同时还定义自己的属性和方法。
  • 子类的方法__init__():通过super().init()继承父类的属性
  • 给子类定义属性和方法:让一个类继承另一个类,就可以添加区分子类和父类所需的新属性和新方法
  • 重写父类的方法:对于父类中的方法,不符合子类中模拟实物的行为,可以进行重写
  • 将实例用作属性:
  • 模拟实物

导入类

  • 导入单个类
  • 在一个模块中存储多个类
  • 从一个模块中导入多个类
  • 导入模块中的所有类,再使用句点表示法访问需要的类
  • 导入模块中的所有类:from module_name import *<不推荐使用>
  • 在一个模块中导入另一个模块
  • 使用别名:from module_name import method_name as mn

python标准库

  • random.randint(a,b):将两个整数作为参数,并随机返回一个位于这两个整数之间的整数
  • random.choice:将一个列表或元组作为参数,并随机返回其中的一个元素。

类编码风格

  • 类名采用驼峰命名法,即将类名中每个单词的首字母都大写
  • 类定义后面包含一个文档字符串,应简要的描述类的功能
  • 可使用空行组织代码。使用一个空行来分割方法,而在模块中可使用两个空行分隔类。

文件和异常

  • 异常:python创建的特殊对象,用于管理程序运行时的错误
  • json模块:保存用户数据,以免在程序运行后丢失

从文件中读取数据

  • 读取整个文件:
    1)open()接受参数——要打开的文件名称,返回一个表示文件的对象。
    2)关键字with不需要在访问文件后将其关闭
    3)通过read()读取文件的全部内容,并作为长字符串赋值给变量
#文本信息存储在pi_digits.txt中,通过一面呈现打开并读取文件,再将内容显示到屏幕上
with open('pi_digits.txt') as file_object:
	content=file_object.read()
print(content.rstrip()) #因为read()到达末尾时会返回一个空字符串,空字符串显示出来即空格,因此通过调用rstrip()删除空格。
  • 文件路径
    -open()仅在当前执行的文件所在的目录下查找,若其他路径则需要提供文件路径。相对文件路径若行不通时,可使用绝对文件路径。g00o o o o o o o o ot

总结

  • 错误总结:
    1)NameError:命名错误
    name ‘x’ is not defined:忘记赋值;拼写错误
    2)SyntaxError:语法错误
    invalid syntax
    3)IndexError:索引错误
    list index out of range:超出列表长度。如当列表为空访问最后一个元素-1会导致错误
    4)IndentationError:缩进错误
    expected an indented block:忘记缩进
    unexpected indent:不必要的缩进
    5)KeyError:键值错误

数据可视化

  • 数据可视化:通过可视化表示来探索数据,与数据分析紧密相关。数据分析指使用代码来探索数据集的规律和关联。

生成数据

  • 绘制折线图
import matplotlib.pyplot as plt
squares=[1,4,9,16,25]
fig,ax=plt.subplots()
ax.plot(squares)
plt.show()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值