当前位置: 首页 > article >正文

python 基础学习文档

✨博文作者烟雨孤舟 喜欢的可以 点赞 收藏 关注哦~~✍️ 作者简介: 一个热爱大数据的学习者✍️ 笔记简介作为大数据爱好者以下是个人总结的学习笔记如有错误请多多指教1. 标识符命名规则只能由 字母、数字、下划线组成不能以数字开头不能使用关键字如 if、for、class区分大小写2.标识符命名规范变量名使用 小写 下划线snake_case类名使用大驼峰CamelCase常量使用全大写见名知意不要用单字母3.常见的数据类型不可变数据类型数值、字符串、元组可变数据类型列表、集合、字典类型名称关键字可变性有序性典型用途整数int不可变N/A计数、索引浮点数float不可变N/A科学计算布尔bool不可变N/A条件判断字符串str不可变有序文本处理列表list可变有序动态数据元组tuple不可变有序固定结构数据字典dict可变有序 (3.7)键值映射、JSON集合set可变无序去重、集合运算不可变集合frozenset不可变无序作为字典 key4.type 和 isinstance 的区别:type()返回对象的类型、只判断当前类型、不考虑继承关系isinstance()判断是否是某个类型或其子类、会考虑继承关系type(1) # int类型 isinstance(1, int) # 判断是否是int类型 返回True、False5.字符串定义方式单引号‘python’、双引号”python“、三引号(”””python”””)单引号等价双引号都是单行字符串三引号可换行常见的转义字符串\’ 单引号\”双引号 \n换行 \t制表符6.Python 36 个关键字类别关键字作用布尔值True布尔真值False布尔假值None空值表示无对象逻辑运算符and逻辑与or逻辑或not逻辑非条件控制if条件判断elif多条件分支else条件否则循环控制for循环遍历while条件循环break跳出循环continue跳过本次循环函数定义def定义函数return返回值lambda定义匿名函数类与对象class定义类del删除变量或对象引用异常处理try尝试执行代码except捕获异常finally无论是否异常都会执行raise主动抛出异常模块导入import导入模块from从模块中导入as起别名作用域名global声明全局变量nonlocal声明使用外层函数变量异步编程async定义异步函数await等待异步执行结果其他is判断是否为同一个对象身份判断in判断成员是否存在yield生成器返回值暂停函数执行pass占位语句assert断言判断7.常见的算术运算符运算符名称示例说明加法a b两数相加-减法a - b两数相减*乘法a * b两数相乘/除法a / b返回浮点数结果//整除a // b向下取整%取余a % b取余数**幂运算a ** ba 的 b 次方涉及到浮点数的算术运算时可能会损失精度计算机底层逻辑是基于二进制来进行存储和处理的 二进制无法精确表示某些十进制小数示例print(0.1 0.2) # 0.30000000000000004 **# 解决方式金融场景必须掌握** # 1.使用 decimal 模块推荐 适用于金额计算 from decimal import Decimal a Decimal(0.1) b Decimal(0.2) print(a b) # 0.3 # 2.使用 round 控制精度但不适合金融核心计算。 round(0.1 0.2, 2)8.常见的赋值运算符运算符示例等价于a 10将右侧的值赋给左侧变量a 5a a 5-a - 5a a - 5*a * 5a a * 5/a / 5a a / 5//a // 5a a // 5%a % 5a a % 5**a ** 2a a ** 29.常见的位运算符运算符示例等价于a ba a ba^a ^ ba a ^ ba 1a a 1a 1a a 110.常见比较运算符运算符含义示例结果等于3 3True!不等于3 ! 2True大于5 3True小于3 5True大于等于5 5True小于等于3 5True运算符含义示例is是否是同一个对象a is bis not是否不是同一个对象a is not b运算符含义in是否包含not in是否不包含11.Python 特殊赋值形式a, b 1, 2 # 多变量赋值 a, b b, a # 变量交换 a b c 10 # 链式赋值 a, b, c [1, 2, 3] # 解包赋值12.if 控制语句定义if 用于根据条件判断是否执行某段代码。在 if 中以下情况会被判断为 FalseFalse、None、0、0.0、、[]、{}、set()if 条件1: 代码块1 elif 条件2: 代码块2 else: 代码块3# 条件表达式三目运算符 # 结果1 if 条件 else 结果2 age 20 status 成年 if age 18 else 未成年13.match … case 语句:定义用于根据不同模式匹配不同情况执行代码。match 表达式: case 模式1: 代码块1 case 模式2: 代码块2 case _: 默认代码块status 200 match status: case 200: print(成功) case 404: print(未找到) case 500: print(服务器错误) case _: print(未知状态)14.while循环定义while 用于在条件为 True 时反复执行代码块。while 条件表达式: 代码块while 条件表达式: 代码块 else: 代码块 # 如果 while 正常结束没有被 break 打断执行 else。被 break 打断else 不执行。15.for 循环定义用于遍历可迭代对象iterable。本质是一种轮询遍历机制对对象进行逐个处理。可迭代对象list、tuple、str、dict、set、range()、生成器for 变量 in 可迭代对象: 代码块range() 函数 Python 内置函数用于生成一个整数序列常用于 for 循环左闭右开。参数含义start起始值默认 0stop结束值不包含step步长默认 1range(stop) range(start, stop) range(start, stop, step)示例# 遍历字符串 for ch in hello: print(ch) # 遍历字典 key for k in d.keys(): print(k) # 遍历字典 value for v in d.values(): print(v) # 遍历字典 key 和 value for k, v in d.items(): print(k, v) # enumerate() 获取索引 names [Tom, Jack] for index, name in enumerate(names): print(index, name) # zip() 多对象同时遍历 a [1,2,3] b [a,b,c] for x, y in zip(a, b): print(x, y) # for else for i in range(3): print(i) else: print(循环正常结束) # 没有被 break 打断才执行 else如果 break 了else 不执行 # 列表推导式for 的简写 nums [x*x for x in range(5)] nums [] for x in range(5): nums.append(x*x)16.while 和 for的区别while循环用于在某个条件满足时一直循环循环的次数通常是未知的只知道循环开始和结束的条件。for循环用于对一个已知的数据集进行遍历或已知次数的循环遍历每一个元素。whilefor适合条件不确定次数适合确定次数需要手动控制变量自动迭代容易写死循环更安全17.python 数据容器列表、元组、字典、集合、字符串18.序列元素按特定顺序排列并且可以通过索引访问元素的容器类型称为序列。19.索引从前向后正向索引从下标0开始从后向前反向索引下标从-1开始。20.切片对数据截取其中一部分的操作列表、字符串、元组都支持切片左闭右开区间。语法nums[start:end:step] start:开始索引不指定默认为0第一个元素的索引 end:结束索引不指定默认为列表长度查到列表末尾 step:步长不指定默认为121.列表list列表是 Python 中最常用的可变、有序序列类型。特点有序、可变、可重复、可存任意类型nums list((1, 2, 3)) # 从元组创建 chars list(hello) # 从字符串创建 empty list()语法# 访问元素 nums [10, 20, 30] print(nums[0]) # 10 print(nums[-1]) # 30倒数第一个 # 切片 nums[0:2] # [10, 20, 30] nums[:1] # [1020] nums[::2] # 步长为2 # 添加元素 nums.append(4) # 在列表的尾部追加元素 nums.insert(0, 99) # 在指定索引之前插入该元素 nums.extend([5,6]) # 追加多个元素 # 删除元素 nums.remove(2) # 删除第一个匹配到的值 按照值 nums.pop() # 删除并返回指定位置元素 按照索引 del nums[0] # 修改元素 nums[0] 100 # 列表推导式 nums [x*x for x in range(5)]分类方法作用示例添加append(x)末尾添加一个元素lst.append(4)添加extend(iterable)追加多个元素lst.extend([5,6])添加insert(i, x)在指定索引之前插入元素lst.insert(0, 99)删除remove(x)删除第一个匹配值lst.remove(2)删除pop()默认删除最后一个元素lst.pop()删除pop(i)删除指定索引位置元素lst.pop(0)删除clear()清空列表lst.clear()删除del删除指定元素或列表del lst[0]查找index(x)返回元素索引lst.index(3)查找count(x)统计元素出现次数lst.count(2)排序sort()原地排序lst.sort()排序sort(reverseTrue)倒序排序lst.sort(reverseTrue)排序reverse()反转列表顺序lst.reverse()复制copy()浅拷贝lst.copy(22.解包Unpacking把容器类型list / tuple / dict / set 等里的元素“拆开”取出来。常见用途有赋值解包、函数参数解包、字典解包。赋值解包# 列表 / 元组可以直接拆开赋值 data [1, 2, 3] a, b, c data print(a) # 1 print(b) # 2 print(c) # 3 # 本质[1,2,3] - a1 b2 c3 # 如果数量不匹配会报错ValueError: too many values to unpack星号解包 *# 如果元素数量不确定可以用 *。 data [1, 2, 3, 4, 5] a, *b data print(a) # 1 print(b) # [2,3,4,5]函数参数解包 *def add(a, b, c): return a b c data [1,2,3] result add(*data) print(result) # 等价于add(1,2,3)字典解包 **# 字典可以拆成 关键字参数。 def create_user(name, age): print(name, age) data { name: Tom, age: 18 } create_user(**data) # 等价于create_user(nameTom, age18循环解包data [(1,2), (3,4), (5,6)] for a,b in data: print(a,b)组包packing把多个独立的值“打包”成一个容器通常是 tuple 或 dict。a,b,c 1,2,3 data a, b, c. # data (1, 2, 3)# 当函数参数使用 *args 时Python 会 把多个参数组包成 tuple。 def test(*args): print(args) test(1,2,3). # 输出(1,2,3)23.列表推导式使用简洁语法通过循环 表达式 可选条件来生成一个新的列表。基本结构[表达式 for 变量 in 可迭代对象] [表达式 for 变量 in 可迭代对象 if 条件] [x for x in range(5)]# [0, 1, 2, 3, 4] [x for x in range(10) if x % 2 0]# [0, 2, 4, 6, 8]24.字符串常用方法方法说明示例upper()全部转大写hello.upper() → HELLOlower()全部转小写HELLO.lower() → hellocapitalize()首字母大写hello.capitalize() → Hellotitle()每个单词首字母大写hello world.title() → Hello Worldswapcase()大小写互换Hello.swapcase() → hELLO方法说明find()查找字符串找不到返回 -1index()查找字符串找不到报错count()统计出现次数startswith()是否以某字符串开头endswith()是否以某字符串结尾split()按分隔符拆分rsplit()从右侧拆分splitlines()按换行拆分join()合并字符串replace()替换字符串translate()字符映射替换strip()去两边空格lstrip()去左边空格rstrip()去右边空格isdigit()是否数字isalpha()是否字母isalnum()是否字母或数字isspace()是否空格islower()是否全小写isupper()是否全大写25.格式化字符串format()name Tom age 18 print(name:{}, age:{}.format(name, age))f-string推荐name Tom age 18 print(fname:{name}, age:{age})26.元组可以存储不同的数据类型、元素可以重复、有序、不可以修改支持索引、切片元组名称 元素1,元素2,... 元组名 tuple([1, 2, 3])注意单元素元组定义时需要在末尾加上逗号(’A’,)说明在元组解包时使用函数参数解包 ****代表收集剩余的元素生成的是一个列表。27.集合set是一种无序、不重复、可变的数据容器用于存储唯一元素。注意空集合的定义不能使用{},{}是用来定义空字典的由于集合是无序的因此不支持下标索引。注意集合的元素必须是不可变类型# 空集合的定义 s set() # ✅ 正确 s {} # ❌ 这是空字典常用方法分类方法作用示例添加add(x)向集合中添加一个元素s1.add(t)添加update(iterable)添加多个元素可迭代对象s1.update([a,b])删除remove(x)删除指定元素不存在会报错s1.remove(a)删除discard(x)删除指定元素不存在不报错s1.discard(a)删除pop()随机删除并返回一个元素s1.pop()清空clear()清空集合s1.clear()查找in / not in判断元素是否存在a in s1复制copy()浅拷贝集合s2 s1.copy()集合运算union() /并集集合运算intersection() / 交集s1 s2集合运算difference() / -差集s1 - s2集合运算symmetric_difference() / ^对称差集s1 ^ s2关系判断issubset()判断是否为子集s1.issubset(s2)关系判断issuperset()判断是否为超集s1.issuperset(s2)关系判断isdisjoint()判断是否无交集s1.isdisjoint(s2)28.字典dict一种无序、可变、键值对key:value存储的数据容器。特点键值对key:value存储key 不可重复、可变注意key 必须是不可变类型、不可重复value 可以是任何数据类型的。注意字典是没有索引下标的不能根据索引获取值只能根据key获取value 逻辑上仍然按“无序容器”理解。# 空字典的定义 s dict() s {}常用方法分类方法作用示例添加/更新update()合并字典d.update({a:1})获取get()安全获取值d.get(a)删除pop()删除并返回值d.pop(a)删除popitem()删除最后一项d.popitem()遍历keys()获取所有 keyd.keys()遍历values()获取所有 valued.values()遍历items()获取键值对d.items()复制copy()浅拷贝d.copy()29.数据容器对比特性字符串 (str)列表 (list)元组 (tuple)集合 (set)字典 (dict)有序性有序有序有序无序有序Python3.7重复元素允许允许允许不允许key不允许重复可变性不可变可变不可变可变可变索引访问支持支持支持不支持不支持但支持 key 访问切片操作支持支持支持不支持不支持元素类型字符任意任意不可变类型key不可变value任意查找效率O(n)O(n)O(n)O(1)O(1)使用场景文本处理有序集合固定数据去重/查重键值映射30.函数函数是将一段具有特定功能的代码封装起来并通过函数名进行调用的代码块。函数需要先定义再执行。函数定义时内部代码并没有运行在调用时才执行。函数中通过缩进来描述归属关系关系基本语法结构def 函数名(参数): 函数体 return 返回值部分说明def定义函数的关键字函数名函数的标识参数输入数据可选函数体实现功能的代码return返回结果可选31.函数参数形参形式参数函数定义时括号里的参数只能在函数内部使用局部变量。实参实际参数函数在实际调用时传递的参数。函数定义时如果有多个参数需要用逗号隔开。return 语句只有返回功能没有输出打印功能如果要输出需要结合print()函数实现。参数组合使用顺序**位置参数 → 默认参数 → *args →kwargsdef f(a, b): ... # 位置参数 f(1, 2) # 调用函数时根据函数定义的位置来传递参数传递顺序要和定义顺序一致。 # 关键字参数 f(a1, b2) # 调用函数时根据函数定义时形参名称作为关键字“键值”的形式传参不要求顺序 # 默认参数 def f(a, b10): # 调用函数时如果函数没有给参数传值则参数使用默认值。 ... # 可变参数 def f(*args): # 接收多个位置参数本质是 tuple元组 ... def f(**kwargs): # 接收多个关键字参数本质是 dict字典 ...可变参数# *args位置可变参数 def f(*args): print(args) f(1, 2, 3) # 输出(1, 2, 3) # **kwargs关键字可变参数 def f(**kwargs): print(kwargs) f(a1, b2) # {a: 1, b: 2}强制关键字参数:# 强制 * 后面的参数必须用 key方式传 def create_user(name, *, age, city): ...参数类型普通参数数字、布尔值、元组、列表、字典、集合等。 特殊参数函数32.函数注释标准Docstring格式如下功能说明必须业务背景 / 实现意图说明建议参数说明必须返回值说明必须异常说明必须是否涉及权限、事务、加密等安全操作视情况33.函数的变量作用域全局变量在函数之外定义的变量称之为全局变量在整个文件中包括函数内都可以使用通常定义在文件顶部。局部变量在函数内部定义的变量称之为局部变量只能在该函数内部使用外部无法访问。global明确告诉python解释器在函数内部使用全局变量使得可以在函数内部修改全局变量的值。注意尽量避免在函数内部使用全局变量。考虑使用函数参数和返回值来传递数据而不是依赖全局变量。global主要用于程序的状态、配置和计数器等场景中。34.匿名函数(lambda)是一种没有函数名的简洁函数通常用于定义简单的一次性函数单行表达式。注意函数逻辑比较简单单行表达式且只在一个地方使用可以考虑使用匿名函数简化书写通常作为高阶函数的参数使用注意匿名函数可以返回值也可以不返回值返回值时不需要return表达式的值就是它的返回值。定义lambda 参数列表: 函数体 lambda : print(-----) nums [1, 2, 3] result list(map(lambda x: x * 2, nums)) # [2, 4, 6]特点说明无函数名不用 def单表达式只能写一行逻辑自动返回不需要 return轻量级常用于临时函数35.函数的类型注解对函数参数和返回值进行类型说明的语法用于提高代码可读性和可维护性。def 函数名(参数: 类型) - 返回类型: ... def add(a: int, b: int) - int: return a b容器类型# 列表 def f(nums: list[int]) - list[int]: return nums # 字典 def f(data: dict[str, int]) - dict[str, int]: return data # 元组 def f() - tuple[int, str]: return 1, a # Optional可为空 from typing import Optional def f(name: Optional[str]) - Optional[str]: return name # Union多种类型 from typing import Union def f(x: Union[int, str]) - None: ...36.模块module是一个包含 Python 代码的文件.py用于组织和复用代码。一个 .py 文件 一个模块模块的核心作用代码复用、功能划分、避免命名冲突37.模块的导入导入方式写法调用方式示例标准导入import 模块名模块名.函数random.randint()别名导入import 模块名 as 别名别名.函数rd.randint()局部导入from 模块名 import 函数函数randint()局部别名from 模块名 import 函数 as 别名别名rint()全量导入from 模块名 import *直接用函数randint()38.自定义模块自定义模块就是开发者自己编写的 .py 文件用于封装和复用代码。# 定义模块 # my_module.py def add(a, b): return a b def sub(a, b): return a - b # 使用模块 import my_module print(my_module.add(1, 2))name是 Python 内置变量表示当前模块的名称all_ 用于控制 from xxx import * 时导入哪些内容特性nameall类型内置变量可选变量作用判断模块执行方式控制 import *常用程度⭐⭐⭐⭐⭐⭐⭐是否必须必须理解很少用39.包package是一个包含多个模块.py 文件的目录用于组织和管理代码。my_project/ │ ├── utils/ ← 包 │ ├── __init__.py │ ├── math.py │ └── string.py │ ├── services/ ← 包 │ ├── __init__.py │ └── user.py # __init__.py的作用 # 1. 标识该目录为包旧版本必须 # 2. 初始化包 # 3. 控制导入行为40.模块与包的区别概念说明模块一个 .py 文件包一个目录包含多个模块41.面向对象面向对象 用“类”定义结构用“对象”承载数据用“方法”完成行为面向对象是一种以“对象”为核心通过类来组织代码的编程思想。核心概念概念说明类Class模板/蓝图定义“这个东西有什么”对象Object类的实例真正的数据载体属性Attribute数据存数据方法Method行为操作数据基础示例class User: # 类 def __init__(self, name): self.name name # 属性 def say(self): # 方法 print(self.name) u User(Tom) # 对象 u.say()构造方法def __init__(self, ...): # 作用 # 初始化对象 # 在创建对象时自动执行 # self 当前对象本身self 把数据绑定到当前对象面向对象三大特性封装、继承、多态self 和 ****init self 当前对象 # 谁调用self 就是谁 init 创建对象时自动执行 # 用来初始化属性42.类class用于描述一类事物的结构模板由属性和方法组成本质类 属性数据 方法行为语法定义class 类名: pass # 创建对象 对象 类名() 对象.属性 值示例class Car: pass c1 Car() c1.brand BMW c1.name X5 c1.price 500000 # 查看属性 print(c1.__dict__) # 对象的属性本质存储在 __dict__字典中 {brand: BMW, name: X5, price: 500000}注意定义类不推荐使用动态的方法添加属性会导致代码难维护实际开发应在init中定义。实际开发类的定义class 类名: def __init__(self, 参数列表): self.属性名 参数值示例class Car: # __init__ 方法是初始化的方法会在对象创建时自动调用可以在该方法中为对象设置对应的属性 # self是第一个参数表示当前所创建出来的实例对象。 def __init__(self, brand, name, price): self.brand brand self.name name self.price price说明def 定义在类外面称之为函数定义在类中的函数称之为方法。43.实例方法属于对象的方法需要通过对象调用默认第一个参数是 self语法定义class 类名: def __init__(self, 参数列表): self.属性名 参数值 def 方法名(self, 参数): ... def 方法名(self, 参数): ... # 创建对象 对象 类名(参数列表) 对象.方法名实参44.魔法方法python 中以xxx形式存在的特殊方法用于让对象支持内置操作自动调用本质魔法方法 Python 预定义的“钩子方法”特点方法名固定不能乱写自动触发不需要手动调用让对象“像内置类型一样工作”常见魔法方法方法触发方式init创建对象strprint()repr调试输出lenlen()addeqgetitemobj[]setitemobj[]callobj()45.属性类或对象中用于存储数据的变量实例属性实例属性属于每个具体对象的属性每个对象都是独立的。各个对象特有的数据类属性类属性属于类本身的属性所有的实例共享所有的对象共享的数据或配置。类型定义位置是否共享修改影响实例属性init不共享只影响当前对象类属性类中共享影响所有对象46.异常Exception程序在运行过程中发生的错误或意外情况异常的作用捕获错误防止程序崩溃提高程序稳定性常见异常示例1 / 0 # ZeroDivisionError除零错误 int(abc) # ValueError类型转换错误 lst [1,2] lst[5] # IndexError索引越界异常处理基本结构try: a int(abc) except ValueError: print(转换失败)完整结构try: ... except: ... else: ... finally: ...主动抛出异常raise Exception(错误信息)结构说明try尝试执行except捕获异常else没有异常时执行finally无论如何都会执行47.异常结构BaseException │ ├── SystemExit # 退出程序sys.exit() ├── KeyboardInterrupt # 用户中断Ctrl C ├── GeneratorExit # 生成器关闭 │ └── Exception # ⭐ 所有业务异常的基类重点 │ ├── ArithmeticError # 数学运算错误父类 │ └── ZeroDivisionError # 除零错误 │ ├── LookupError # 查找错误父类 │ ├── IndexError # 列表/元组索引越界 │ └── KeyError # 字典 key 不存在 │ ├── TypeError # 类型错误类型不匹配 ├── ValueError # 值错误值不合法 ├── NameError # 变量未定义 ├── AttributeError # 属性不存在 │ ├── FileNotFoundError # 文件不存在 ├── ImportError # 导入失败 │ └── ModuleNotFoundError # 模块不存在 │ ├── RuntimeError # 运行时错误状态异常 ├── NotImplementedError # 方法未实现 │ └── AssertionError # 断言失败

相关文章:

python 基础学习文档

✨博文作者:烟雨孤舟 💖 喜欢的可以 点赞 收藏 关注哦~~ ✍️ 作者简介: 一个热爱大数据的学习者 ✍️ 笔记简介:作为大数据爱好者,以下是个人总结的学习笔记,如有错误,请多多指教! 1. 标识符命…...

Guru:终端AI集成工具的设计原理与实战应用

1. 项目概述:Guru,你的终端AI伙伴 如果你和我一样,大部分工作时间都“焊”在终端里,那么你一定经历过这样的场景:想快速写一段脚本,得切到浏览器,打开某个AI聊天页面,粘贴代码&#…...

Rust内存安全:所有权与借用 vs 引用计数,该如何选择?

所有权与借用 vs 引用计数Rust的标志性成就,是在不使用垃圾回收器的情况下实现内存安全。它通过一套严格的所有权系统达成这一目标,但该系统特意设置了一个“逃生出口”:引用计数。在Rust程序中,每个值在任何给定时刻都只有一个所…...

Transformer叠加态MoE:动态参数激活的NLP新范式

1. 项目概述在自然语言处理领域,Transformer架构已经成为事实上的标准。但传统的Transformer模型存在一个根本性限制:每个输入token都会激活整个模型的所有参数,即使这些参数中只有一小部分真正相关。这种"全激活"模式导致了巨大的…...

2026 AI 爆发之年:从 DeepSeek V4 开源到科交会热潮,一站式聚合平台成全民刚需

2026 年 4 月 26 日,国内科技圈迎来双线沸腾时刻:一边是第四届中国科交会在合肥正式启幕,以 “科技打头阵 创新赢未来” 为主题,集中展示 AI、量子、智能制造等前沿成果,成为新质生产力的重要展示窗口;另一…...

三分钟掌握Trippy:现代网络诊断工具的终极使用指南

三分钟掌握Trippy:现代网络诊断工具的终极使用指南 【免费下载链接】trippy A network diagnostic tool 项目地址: https://gitcode.com/GitHub_Trending/tr/trippy Trippy是一款功能强大的现代网络诊断工具,它将传统的traceroute和ping功能完美…...

AI时代,代码还要学吗?Python\+Java高效学习指南(附AI协同秘籍)

最近被很多朋友问同一个问题:“现在AI都能一键生成代码了,还费劲学Python、Java干嘛?” 尤其是有一点代码基础的人,更纠结——自己能写点基础代码,又能用上AI,到底该深耕代码,还是干脆依赖AI“躺…...

TEKLauncher:方舟生存进化终极管理工具,5分钟搞定游戏配置

TEKLauncher:方舟生存进化终极管理工具,5分钟搞定游戏配置 【免费下载链接】TEKLauncher Launcher for ARK: Survival Evolved 项目地址: https://gitcode.com/gh_mirrors/te/TEKLauncher TEKLauncher是一款专为《方舟:生存进化》设计…...

别再手动“投喂”AI了:OpenClaw让大模型长出“手”和“眼”,而永动虾让它1分钟开跑

你有没有遇到过这种情况:明明让AI写一份周报,它却需要你一次次复制粘贴数据;想让AI自动处理几十份合同,但每次都要手动上传文件;甚至希望AI像人一样操作电脑、识别界面……但卡在“第一步”就寸步难行?本质…...

AI智能体浏览器自动化实战:绕过反爬虫与验证码的终极方案

1. 项目概述:为AI智能体赋予“真实浏览器之手”如果你正在使用Claude Code、Cursor、OpenClaw这类AI编程助手,并且尝试过让它们帮你自动完成一些网页操作——比如抓取商品价格、监控新闻动态、或者自动填写表单——那你大概率经历过这样的挫败&#xff1…...

超级编导源码流出,技术大拿深度对比超级编导与超级智剪云混剪架构

引言:当“源码”遇见“架构选型”近日,技术社区中关于“超级编导源码流出”的讨论引发了不少开发者的关注。无论这一传闻的真实性如何,它都将一个核心问题推到了技术决策者面前:在构建或集成短视频矩阵视频混剪工具时,…...

终极指南:如何用Prompt Optimizer节省90%的LLM API成本

终极指南:如何用Prompt Optimizer节省90%的LLM API成本 【免费下载链接】prompt-optimizer Minimize LLM token complexity to save API costs and model computations. 项目地址: https://gitcode.com/gh_mirrors/pr/prompt-optimizer 你是否在为LLM API的高…...

用Python和Pygame复刻简化版植物大战僵尸:从数学建模到游戏开发的保姆级教程

用Python和Pygame复刻植物大战僵尸:从数学模型到游戏逻辑的工程实践 当数学建模遇上游戏开发,会碰撞出怎样的火花?十年前那道经典的SPSSPRO数学建模题,将"植物大战僵尸"的规则抽象成数学模型,而今天我们将用…...

Docker Sandbox + Llama3/DeepSeek部署实操:1小时构建不可逃逸、不可提权、不可侧信道泄露的AI推理沙箱

更多请点击: https://intelliparadigm.com 第一章:Docker Sandbox 运行 AI 代码隔离技术概览 Docker Sandbox 是一种轻量级、可复现的容器化执行环境,专为安全运行未经信任的 AI 代码(如用户提交的推理脚本、自定义训练逻辑或第…...

VS Code MCP权限体系设计:RBAC+策略即代码(Policy-as-Code)双模管控,附GRC兼容配置清单

更多请点击: https://intelliparadigm.com 第一章:VS Code MCP权限体系设计:RBAC策略即代码(Policy-as-Code)双模管控,附GRC兼容配置清单 VS Code 通过 Microsoft Cloud Platform(MCP&#xff…...

这个AI插件直接“接管编辑器”?Unity开发要变天了!

在过去两年里,AI 工具几乎席卷了整个开发领域,但对于 Unity 开发者来说,大多数 AI 插件仍停留在“聊天工具”的层面:写点示例代码、解释概念,却无法真正融入项目。 而 Brody AI – Your Agentic Developing Homie 的出…...

Linux 进程间通信(IPC):管道与信号量完全指南

引言 在 Linux 系统编程中,进程间通信(IPC,Inter-Process Communication) 是一个核心课题。进程是独立运行的单位,默认情况下彼此隔离。但很多时候,我们需要让进程之间交换数据或同步执行顺序——这就是进…...

Sqlserver 学习笔记

这次的学习内容主要是关于数据库的使用。数据库和表的创建,增删改查的内容一,数据库(1)数据库的创建create database StudentDB --创建数据库 on primary --定义在主文件组上的文件 ( nameStudentDB_data, --逻辑名称 filenameD:\…...

G5080,TS3380,G2810,MG3680,G3810,TS3440,IX6780,MP288,TS8380报错5B00,P07,E08,1700,5b04废墨垫清零,亲测有效

下载:点这里下载 备用下载:https://pan.baidu.com/s/1WrPFvdV8sq-qI3_NgO2EvA?pwd0000 常见型号如下: G系列 G1000、G1100、G1200、G1400、G1500、G1800、G1900、G1010、G1110、G1120、G1410、G1420、G1411、G1510、G1520、G1810、G1820、…...

4 个开源轮子,0 个后端大佬:我们是怎么让 AI 客服自己“卷”起来的

搭建智能体客服自动化平台的真实过程深夜十一点,客服小晴在群里发了一条消息:“同一个用户关于退换货的问题,我已经解释了五遍规则,他还在问‘能不能特殊处理’。” 紧接着是第二句:“要是今晚再这样下去,我…...

CL4SE:上下文学习如何提升LLM在软件工程中的表现

1. CL4SE:软件工程中的上下文学习革命在2023年ChatGPT引爆AI热潮后,大型语言模型(LLM)在软件工程领域的应用呈现爆发式增长。但开发者们很快发现一个关键问题:同样的模型,为什么在A公司的代码生成任务上表现…...

RAG系统安全攻防:知识提取攻击与多层级防御策略

1. RAG系统安全攻防全景图:从知识提取攻击到多层级防御检索增强生成(Retrieval-Augmented Generation, RAG)系统通过整合外部知识库显著提升了大语言模型的生成能力,但这种开放性架构也引入了新的安全风险。知识提取攻击&#xff…...

Mac本地高效训练Flux.jl模型的完整指南

1. 项目概述最近在Mac上本地训练Flux模型的需求越来越普遍。作为一名长期在Mac平台进行机器学习开发的工程师,我发现很多同行在配置本地Flux训练环境时都会遇到各种"坑"。今天我就来分享一套经过实战检验的完整方案,帮助你在Mac上高效运行Flux…...

Caveman开源项目:用提示词工程优化AI对话,节省75%的Token成本

1. 项目概述:当AI学会“说人话”,我们到底在省什么?如果你和我一样,每天要和Claude、GPT这类大模型对话几十上百次,那你肯定对一种现象深恶痛绝:AI的“废话文学”。明明一句话就能说清楚的事,它…...

探索 MCP 协议:构建下一代 AI Agent 的标准化基石

探索 MCP 协议:构建下一代 AI Agent 的标准化基石 引言 随着大语言模型(LLM)能力的飞速提升,AI Agent(智能体)正逐渐从简单的对话机器人演变为能够自主调用工具、操作数据库和执行复杂任务的智能实体。然而…...

探索 MCP (Model Context Protocol):构建智能体与外部工具的桥梁

探索 MCP (Model Context Protocol):构建智能体与外部工具的桥梁 摘要 随着大语言模型(LLM)能力的增强,如何让模型安全、高效地访问外部数据和工具成为了人工智能领域的核心挑战。Model Context Protocol (MCP) 作为一种新兴的标准…...

【025】类加载:双亲委派与应用隔离

前面我们聊过 JVM 运行时数据区(022 篇)和对象创建(022 篇),这篇来深入聊聊类加载。 你有没有遇到过这些问题: 明明引入了 jar 包,却报 ClassNotFoundException升级了一个依赖库,结果…...

深入解析 MCP (Model Context Protocol):构建 AI Agent 的标准化连接器

深入解析 MCP (Model Context 协议):构建 AI Agent 的标准化连接器 引言 随着大语言模型(LLM)能力的飞速发展,AI Agent(智能体)正逐渐从简单的对话机器人演变为能够执行复杂任务的自动化实体。然而&#xf…...

GitMem:基于Git的开发者代码记忆管理工具设计与实践

1. 项目概述:一个面向开发者的记忆增强工具最近在和一些独立开发者朋友交流时,发现一个普遍存在的痛点:项目做多了,代码写久了,很多曾经用过的精巧实现、解决过的棘手Bug、甚至是自己写过的工具函数,时间一…...

交通运输部:综合客运枢纽连接系统与集疏运体系规划设计导则 2026

本导则为2026 年 7 月 1 日实施的交通运输行业标准,明确综合客运枢纽连接系统与集疏运体系的规划设计要求,适用于新建、扩建、改建枢纽,核心围绕分级、连接、集疏运、路网、组织管理五大维度展开。一、基础定义与分级核心定义:综合…...