Day2--Python基础核心语法
Python基础核心语法 Day2 学习笔记
学习阶段:第1阶段(5.12-6月中旬)Python + 机器学习打底
学习主题:Python 常用内置函数(为医学图像/深度学习打牢最扎实基础)
📖 我的学习前言
今天是Python学习第二天,主攻最常用、最核心、最扎实的内置函数。
我要求自己:每个函数必须懂、每个代码必须会敲、每个难懂点必须弄明白,不跳步、不敷衍、不留知识盲区。
所有内容不超纲、不劝退、但极度充实,专门适配医学图像、深度学习方向,代码注释超详细,难懂地方全部用大白话拆开讲透,确保基础牢不可破。
一、输入输出函数(编程第一步,调试必用)
1. print() 输出函数(最高频)
作用:把内容打印在屏幕上,看数据、看图像尺寸、看模型结果、查错全靠它。
难懂点通俗讲:sep 是多个内容之间的分隔符,end 是结尾要不要换行。
f-string 格式化:就是让输出更整齐、好看、专业,AI代码通用。
# 1. 基础打印:直接输出文字
print("Python Day2 学习:常用函数打卡")
# 2. 打印变量:查看图像尺寸
img_h = 512 # 医学图像高度
img_w = 512 # 医学图像宽度
print("图像高度:", img_h)
# 3. 同时打印多个变量 sep=" | " 表示用竖线隔开,方便看
print("图像高", img_h, "图像宽", img_w, sep=" | ")
# 4. end=" " 表示不换行,所有内容打印在同一行(批量处理样本常用)
for i in range(3):
print(f"样本{i}", end=" ")
# 5. f-string格式化输出:保留2位小数,专业输出像素值、准确率
pixel_avg = 128.6789
print(f"\n图像平均像素:{pixel_avg:.2f}")
2. input() 输入函数
作用:让你手动输入内容,比如数据集路径、训练轮数。
⚠️ 超级重点
input 不管你输入什么数字,它都当成文字处理,所以输入数字必须加 int() 转换!
# 输入文字(直接用)
study_dir = input("请输入学习方向:")
print("我的学习方向:", study_dir)
# 输入数字(必须转int!否则会报错)
# 通俗讲:input拿到的是"文字",要变成"数字"才能计算
epoch_num = int(input("请输入训练轮数:"))
print("训练轮数:", epoch_num)
二、数据类型转换函数(医学图像预处理核心)
通俗总讲:数据类型不对,代码一定报错!
比如:像素要小数、文件名要文字、判断要对错,这四个函数是AI基础命脉。
1. int() 转整数
难懂点:int(128.99) 不是四舍五入,是直接砍掉小数!
# 小数转整数:直接去掉小数点后面,不四舍五入
pixel = 128.99
print(int(pixel)) # 输出 128
# 文字数字转整数(必须纯数字才能转)
print(int("255"))
2. float() 转小数(图像归一化必备)
通俗讲:深度学习必须用小数计算,所以像素值要转 float
# 整数变小数,用于图像归一化
print(float(255)) # 输出 255.0
3. str() 转字符串(文件名拼接必备)
通俗讲:数字不能直接和文字拼在一起,必须先转成文字
case_id = 1001 # 数字
# 拼接文件名:必须把数字转成字符串
file_name = "CT_" + str(case_id) + ".nii.gz"
print("医学图像文件名:", file_name)
4. bool() 转布尔值(判断数据是否有效)
难懂点大白话:
- 空的、0 → 都是 False(无效、没有、空)
- 非0、有内容 → 都是 True(有效、存在、有值)
print(bool(0)) # False 空/无效
print(bool(255)) # True 有效
print(bool([])) # False 空列表
print(bool([1,2,3])) # True 有数据
三、数学运算函数(像素计算必备)
不用导库,Python自带,专门处理图像像素值、统计指标。
# 1. abs() 绝对值:CT图像HU值有负数,必须转正
hu_value = -1024
print("CT值绝对值:", abs(hu_value))
# 2. max() / min() 最大最小值:图像归一化必备
pixel_list = [10, 55, 128, 255]
print("最大像素:", max(pixel_list))
print("最小像素:", min(pixel_list))
# 3. sum() 求和:统计总和
print("像素总和:", sum(pixel_list))
# 4. round() 四舍五入:保留精度,写论文必备
acc = 0.8976
print("保留2位小数:", round(acc, 2)) # 保留2位
print("直接取整:", round(acc)) # 四舍五入取整
四、列表操作函数(管理图像路径、数据集)
通俗讲:列表就是一个“文件夹”,用来装所有图像路径、标签。
1. len() 统计长度(最高频)
# 图像路径列表
img_list = ["CT001.png", "CT002.png", "CT003.png"]
# 统计有多少张图
print("数据集样本总数:", len(img_list))
2. 列表增删改查(全套完整版 + 详细注释)
# 创建空列表,用来装图像名称
imgs = []
# 1. append():在最后面添加(最常用)
imgs.append("MRI001")
imgs.append("MRI002")
print("添加后:", imgs)
# 2. insert(位置,内容):在指定位置插入
imgs.insert(0, "CT001") # 0表示插到最前面
print("插入后:", imgs)
# 3. remove(内容):删除指定的东西
imgs.remove("MRI001")
print("删除后:", imgs)
# 4. pop():删除最后一个
imgs.pop()
print("删最后一个:", imgs)
# 5. clear():清空所有
imgs.clear()
print("清空后:", imgs)
3. count() / index() 统计与查找
# 0=阴性 1=阳性
labels = [0,1,0,1,1,0]
# 统计阳性样本数量
print("阳性数量:", labels.count(1))
# 找到第一个阳性在第几个位置
print("第一个阳性位置:", labels.index(1))
五、字符串函数(筛选医学图像文件必备)
通俗讲:筛选 .nii.gz / .dcm 医学图像,全靠这几个函数!
file = " patient_001_CT.nii.gz "
# 1. strip():去掉前后多余空格(清洗脏数据)
clean_file = file.strip()
print("去空格:", clean_file)
# 2. split("_"):按下划线切开,提取患者ID、模态
print("分割后:", clean_file.split("_"))
# 3. replace():替换文字
print("替换CT为MRI:", clean_file.replace("CT", "MRI"))
# 4. startswith():判断是不是以xxx开头
print("是否是患者文件:", clean_file.startswith("patient"))
# 5. endswith():判断文件后缀(筛选医学图像 最最最重要!)
print("是NIfTI医学图像:", clean_file.endswith(".nii.gz"))
六、判断与迭代函数(为后续循环打基础)
1. isinstance() 判断类型(防止代码报错)
通俗讲:先检查数据类型对不对,再运行,避免代码崩溃
num = 255
# 判断是不是整数
print(isinstance(num, int))
name = "CT001"
# 判断是不是字符串
print(isinstance(name, str))
2. range() 生成数字序列
通俗讲:用来生成 0、1、2、3… 用于循环遍历图像
# 生成 0~4 的数字
for i in range(5):
print("正在处理第{}张图像".format(i))
✅ 我今天必须背会的函数清单
1. 输入输出
print()、input()
2. 类型转换
int()、float()、str()、bool()
3. 数学函数
abs()、max()、min()、sum()、round()
4. 列表操作
len()、append()、insert()、remove()、pop()、count()、index()
5. 字符串操作
strip()、split()、replace()、startswith()、endswith()
6. 判断迭代
isinstance()、range()
📝 我的今日学习总结(扎实、充实、无死角)
- 今天学的所有函数都是零基础第二天最标准、最核心、最扎实的内容,不简单、不超纲,刚好打牢地基。
- 所有代码注释100%全覆盖,难懂知识点全部用大白话拆开讲透,我完全能理解、能记住、能独立写出来。
- 所有函数都贴合医学图像、深度学习场景,不是无用语法,学完直接为后续数据集处理、图像预处理铺路。
- 今天解决:不会写代码、不懂函数用法、看不懂基础代码的问题,基础非常扎实。
📅 明日学习计划
Day3:Python 流程控制 if + for 循环,学习批量筛选医学图像、数据清洗、数据集处理逻辑。
–
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)