【python】基础

1、if、elif、else
2、not、or、and
3、%06d、%.04f、%s、
print(“苹果单价 %.02f 元/斤,购买 %.02f 斤,需要支付 %.02f 元” % (price, weight, money))
4、用户输入的 任何内容 Python 都认为是一个 字符串,price = float(input(“请输入价格:”))
5、导入随机数模块:import random
random.randint(a, b) ,返回 [a, b] 之间的整数,包含 a 和 b
6、取整除:// 幂:** 字符串重复指定次数:"-" * 50
7、c //= a 等效于 c = c // a c %= a 等效于 c = c % a c**=a等效于c = c ** a
8、
while 条件:
条件满足时做的事情
9、# 向控制台输出内容结束之后,不会换行:print("*", end="")。其中 “” 中间可以指定 print 函数输出内容之后,继续希望显示的内容。
# 单纯的换行:print("")
10、
def 函数名():
函数封装的代码
11、PyCharm 的调试工具:F8 Step Over 可以单步执行代码,会把函数调用看作是一行代码直接执行;
F7 Step Into 可以单步执行代码,如果是函数,会进入函数内部
在 函数调用 位置,使用快捷键 CTRL + Q 可以查看函数的说明信息
12、浏览程序目录会发现一个 pycache 的目录,目录下会有一个 模块.cpython-35.pyc 文件,cpython-35 表示 Python 解释器的版本,
这个 pyc 文件是由 Python 解释器将 模块的源码 转换为 字节码 ,Python 这样保存 字节码 是作为一种启动 速度的优化
13、在 Python 中,所有 非数字型变量 都支持以下特点:
1. 都是一个 序列 sequence,也可以理解为 容器
2. 取值 []
3. 遍历 for in
4. 计算长度、最大/最小值、比较、删除
5. 链接 + 和 重复 *
6. 切片
14、列表用 [] 定义,数据 之间使用 , 分隔;列表的 索引 从 0 开始;eg.name_list = [“zhangsan”, “lisi”, “wangwu”]
列表函数用法参见list.png
在这里插入图片描述
定义一个 列表,例如:name_list = []
15、
for 循环内部使用的变量 in 列表
for name in name_list:
循环内部针对列表元素进行操作
print(name)
16、尽管 Python 的 列表 中可以 存储不同类型的数据。但是在开发中,更多的应用场景是:1.列表 存储相同类型的数据;2.通过 迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作
17、Tuple(元组)与列表类似,不同之处在于元组的 元素不能修改。用于存储 一串 信息,数据 之间使用 , 分隔。元组用 () 定义。元组的 索引 从 0 开始。
创建空元组:info_tuple = () 元组中 只包含一个元素 时,需要 在元素后面添加逗号:info_tuple = (50, )
元祖函数用法参见tuple.png
在这里插入图片描述
在 Python 中,可以使用 for 循环遍历所有非数字型类型的变量:列表、元组、字典 以及 字符串
18、使用 list 函数可以把元组转换成列表:list(元组) 使用 tuple 函数可以把列表转换成元组:tuple(列表)
19、字典通常用于存储 描述一个 物体 的相关信息。列表 是 有序 的对象集合,字典 是 无序 的对象集合。字典用 {} 定义。字典使用 键值对 存储数据,键值对之间使用 , 分隔。键 key 是索引。值 value 是数据。
键 和 值 之间使用 : 分隔。键必须是唯一的。值 可以取任何数据类型,但 键 只能使用 字符串、数字或 元组。
xiaoming = {“name”: “小明”,
“age”: 18,
“gender”: True,
“height”: 1.75}
字典函数用法参见dic.png在这里插入图片描述
20、遍历 就是 依次 从 字典 中获取所有键值对
for 循环内部使用的 key 的变量 in 字典
for k in xiaoming:
print("%s: %s" % (k, xiaoming[k]))
21、也可以使用 for 循环遍历 字符串中每一个字符
string = “Hello Python”
for c in string:
print©
字符串函数用法参见str.png
在这里插入图片描述
22、切片 方法适用于 字符串、列表、元组:字符串[开始索引:结束索引:步长]
指定的区间属于 左闭右开 型 [开始索引, 结束索引)。从头开始,开始索引 数字可以省略,冒号不能省略。到末尾结束,结束索引 数字可以省略,冒号不能省略。步长默认为 1,如果连续切片,数字和冒号都可以省略
所谓倒序索引就是 从右向左 计算索引,最右边的索引值是 -1,依次递减
23、在 Python 中完整的 for 循环 的语法如下:
for 变量 in 集合:
循环体代码
else:
没有通过 break 退出循环,循环结束后,会执行的代码
eg.
students = [
{“name”: “阿土”,
“age”: 20,
“gender”: True,
“height”: 1.7,
“weight”: 75.0},
{“name”: “小美”,
“age”: 19,
“gender”: False,
“height”: 1.6,
“weight”: 45.0},
]

find_name = “阿土”

for stu_dict in students:
print(stu_dict)
# 判断当前遍历的字典中姓名是否为find_name
if stu_dict[“name”] == find_name:
print(“找到了”)
# 如果已经找到,直接退出循环,就不需要再对后续的数据进行比较
break
else:
print(“没有找到”)

print(“循环结束”)
24、
在 PyCharm 中,可以使用 SHIFT + F6 统一修改变量名
25、
在 Python 中,变量 和 数据 是分开存储的,

  • 数据 保存在内存中的一个位置
  • 变量 中保存着数据在内存中的地址
  • 变量 中 记录数据的地址,就叫做 引用
  • 使用 id() 函数可以查看变量中保存数据所在的 内存地址

注意:如果变量已经被定义,当给一个变量赋值的时候,本质上是 修改了数据的引用

  • 变量 不再 对之前的数据引用
  • 变量 改为 对新赋值的数据引用

示例见“变量引用的示例.png”
在这里插入图片描述
26、
函数执行时,需要处理变量时 会:

  1. 首先 查找 函数内部 是否存在 指定名称 的局部变量,如果有,直接使用
  2. 如果没有,查找 函数外部 是否存在 指定名称 的全局变量,如果有,直接使用
  3. 如果还没有,程序报错!
    27、
    函数不能直接修改 全局变量的引用,即不能使用赋值语句修改全局变量的值,见“函数不能修改全局变量.png”;在这里插入图片描述
    如果在函数中需要修改全局变量,需要使用 global 进行声明,见“在函数内部修改全局变量的值.png”
    在这里插入图片描述
    28、
  • 为了避免局部变量和全局变量出现混淆,在定义全局变量时,有些公司会有一些开发要求,例如:
  • 全局变量名前应该增加 g_ 或者 gl_ 的前缀
    29、
    在函数内部,针对参数(不可变类型)使用 赋值语句,会不会影响调用函数时传递的 实参变量? —— 不会!;见“函数实参不变.png”
    在这里插入图片描述
    如果传递的参数是 可变类型,在函数内部,使用 方法 修改了数据的内容,同样会影响到外部的数据;见“函数实参可变.png”在这里插入图片描述
    在 python 中,列表变量调用 += 本质上是在执行列表变量的 extend 方法,不会修改变量(不可变类型)的引用;见“+=.png”
    总结以上三行,函数的实参,如果是不可变类型,在函数内无法被改变;如果是可变类型,在函数内可以被改变。
    30、
  • 不可变类型,内存中的数据不允许被修改:
    • 数字类型 int, bool, float, complex, long(2.x)
    • 字符串 str
    • 元组 tuple
  • 可变类型,内存中的数据可以被修改:
    • 列表 list
    • 字典 dict
      31、
  1. 缺省参数的定义位置
  • 必须保证 带有默认值的缺省参数 在参数列表末尾
  • 所以,以下定义是错误的!
    def print_info(name, gender=True, title):
  1. 调用带有多个缺省参数的函数
  • 在 调用函数时,如果有 多个缺省参数,需要指定参数名,这样解释器才能够知道参数的对应关系!
    32、
  • 有时可能需要 一个函数 能够处理的参数 个数 是不确定的,这个时候,就可以使用 多值参数
  • python 中有 两种 多值参数:
    • 参数名前增加 一个 * 可以接收 元组
    • 参数名前增加 两个 * 可以接收 字典
  • 一般在给多值参数命名时,习惯使用以下两个名字
    • *args —— 存放 元组 参数,前面有一个 *
    • **kwargs —— 存放 字典 参数,前面有两个 *
  • args 是 arguments 的缩写,有变量的含义
  • kw 是 keyword 的缩写,kwargs 可以记忆 键值对参数
    示例见“多值参数.png”在这里插入图片描述
    33、
    元组和字典的拆包(知道)
  • 在调用带有多值参数的函数时,如果希望:
    • 将一个 元组变量,直接传递给 args
    • 将一个 字典变量,直接传递给 kwargs
  • 就可以使用 拆包,简化参数的传递,拆包 的方式是:
    • 在 元组变量前,增加 一个 *
    • 在 字典变量前,增加 两个 *
      示例见“拆包1.png”和“拆包2.png”
      在这里插入图片描述
      在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值