Python和Linux学习笔记

视频来源:黑马程序员Python教程_600集Python从入门到精通教程(懂中文就能学会)

地址:158-高级变量-01-学习目标确定_哔哩哔哩_bilibili

181-258 节记录笔记


高级变量

列表

01. 一个变量专门存储一串信息

02. 数据之间用 ,分割,用 [] 定义

name_list = ["zhangsan","lisi","wangwu"]

03. 索引 就是数据在 列表 中的位置编号,索引又称为 下标

列表操作

 1.1 关键字 是 Python 内置、具有特殊意义的字符
# 查询关键字
import keyword

print(keyword.kwlist)

print(len(kerword.kwlist) 
1.2 函数 通过函数名来调用函数

函数名(参数)

 需要死记硬背

 1.3 方法 针对这个对象有哪些操作

对象.方法名(参数)

 1.4 循环遍历

 01. 遍历 从头到尾依次从列表获得数据

02. 每次遍历的结果都会存储在 变量中

name_list = ["张三","里斯","王五"]

# 使用迭代遍历列表
"""
每一次循环结果都会存储在 my_name 变量中

for my_name in 列表变量:

    print("我的名字叫 %s" % my_name)
"""
for my_name in name_list:

    print("我的名字叫 %s" % my_name)
 元组
1.1 元组的定义

01. 存储一串信息,数据之间用 , 分隔

02. 元组用 () 定义

03. 元组中的元素不能修改

04. 特定应用场景

列表获元组,索引统一用 []

 创建空元组

empty_tuple = ()

 创建一个元组

empty_tuple = (5,)
1.2 循环遍历
info_tuple = ("张三",18,1.87)

# 循环遍历元组
for my_info in info_tuple:

    # 元组中保存的数据类型不同,使用格式化字符不方便
    print(my_info)
1.3 应用场景

01. 函数和参数的返回值,一个函数可以接受多个参数,一次返回多个数据

02. 格式化字符串后面的()本质是元组

03. 让列表不可以修改

2.1 元组和列表之间的转换

01. 元组转换列表

list(元组)

02. 列表转换元组

 tuple(列表)

 字典

通常存储一个物体的相关信息

01. 列表是有序的集合,字典是无序的集合

02. 字典用 {} 定义

03. 使用 键值对 存储数据

必须是唯一的

可以是任意数据类型,但键只能使用 字符串、数字元组

1.1 循环遍历
xiaoming_dict = {"name": "小明",
                 "age": 18,
                 "qq": "12345"}

# 变量 k 每一次循环中,获取到键值对应的key
for k in xiaoming_dict:

    print("%s - %s" % (k,xiaoming_dict[k]))
1.2 字典的应用场景
# 将多个字典储存在一个列表中,再进行遍历
card_list = [
    {"name": "张三",
     "age": 18},
    {"name": "李四",
     "age": 19}
]

for card_info in card_list:

    print(card_info)
字符串的定义

01. 定义字符串使用 ""

02. 使用索引获得字符串中指定位置的字符 

03. 也可以使用循环遍历字符串中的每一个字符

# 只有在字符串中使用双引号外围用"定义
str1 = "hellp python"
str2 = '我的外号是"大西瓜"'

print(str2)

for str in str2:

    print(str)
1.1 字符串的常用方法
1.1.1 判断类型

 1.1.2 查找和替换

1.1.3 大小写转换

 

1.1.4 文本对齐

 1.1.5 去除空白字符

 1.1.6 拆分和链接

1.1.7 字符串的切片

01. 切片:使用索引值来限定范围,从一个大的字符串中切成小的字符串

字符串 [开始索引:结果索引:步长],切片切的中间范围

倒序 和 顺序索引

倒叙对应的最后一个索引为 -1

公共方法

1.1 Python 内置函数

max(),min()统计字典时只会根据字典的 key 进行比较

1.2 运算符

1.3 完整 for 循环
# 完整 for 循环语法
for num in [1,2,3]:
    print(num)
    if num == 2:
        break
else:
    print("会执行嘛")

print("循环结束!")

变量进阶

1.1 变量的引用

01. 数据存储在内存的位置中,变量存储着数据的地址

02. 赋值语句首先看等号的右侧,右侧是存储数据的地址

1.2 函数的参数和返回值的传递
def test(num):
    print("在函数内部 %d 对应的内存地址是 %d" % (num, id(num)))

    # 定义一个字符串变量
    result = "hello"
    # 将字符串变量返回,返回的是数据的引用,而不是数据本身
    return result


a = 10

# 数据的本质是一个地址
print("a 变量保存的内存地址是 %s" % id(a))

# 调用 test 函数,本质上传递的是实参保存数据的引用,而不是保存的数据!
# 注意:如果函数有返回值,但是没有定义变量接受
# 程序不会报错,但无法获得返回结果
r = test(a)

print("%s 的内存地址是 %d" % (r, id(r)))
2.1 可变和不可变类型

01. 不可变类型,内存中数据不可以修改

数字类型 int,bool,float,complex,long(2,x)

字符串 str

元组 tuple

02. 可变类型,内存中数据可以修改

列表 list

字典 dict

 注意:字典中的 key 只能使用不可变类型

 哈希(hash)

01. 接受一个 不可变类型 的数据作为参数

02. 返回结果是一个 整数

03. 哈希 提取数据的 特征码(指纹)

 3.1 局部变量和全局变量

01. 局部变量:在函数内部定义,只能函数内部使用

      生命周期:函数执行时被创建,执行结束被系统回收

      不同的函数定义相同名字的变量,彼此之间互不影响

02. 全局变量:在函数外部定义,所有函数可以使用这个变量

      函数内部,可以通过全局变量的引用获取对应的数据

      函数内部,不允许直接修改全局变量的引用,如果使用赋值语句,会在函数内部,定义一个局部变量

代码结构示意图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值