学习进度及学习笔记

python基础学习进度

笔记:

常用占位符3个:

字符串:%s        整数:%d        浮点数:%f

字符串格式化——数字精确度控制

m.n        m控制数字宽度,n控制小数点

布尔类型(bool)

True真        False假

end=' '不换行        \t 多行字符串进行对齐                \n换行

continue 中断本次循环,进入下一次循环

list列表,支持嵌套

列表.index(元素)查找元素所在下标

列表.insert(下标,元素),插入指定元素

列表.append(元素),将元素追加到尾部,一个元素,extend是多个元素

del_list[下标]删除元素        list.pop[下标]删除元素   list.clear清空内容  list.count(元素)计数

元组        不可修改元素

变量名=(1,“元素”,True) or 变量名=tuple( )

如果单个元素,后面加一个逗号 

字符串str        正向从0计数,逆向从-1计数        不可以修改

str.replace(字符串1,字符串2),=new_str 新字符串

字符串split,将字符串进行切分

字符串.strip去除前后空格及换行

切片:[开始:结束:步长]
集合set {} 不重复,无序,不支持下标索引,可修改

set.difference 取差集        set.difference_update消除差集

只可用for循环

字典dict         键值对key,value可以是任意类型,key不可以重复,不可以下标索引

新增元素:字典[key]=value        字典.pop(key),获得指定key的value,同时字典被修改,指定key的数据被删除        字典.clear清空字典        字典.keys获取全部的key        只能用for循环   用len()统计字典内元素数量

数据容器

len()统计元素个数     max()元素 最大   min()元素最小

list()给指定容器转换为列表        str()给指定容器转换为字符串

tuple()给指定容器转换为元组        set()给指定容器转换为集合  

容器通用排序功能 sorted(容器,[reverse=True])

将容器进行排序从小到大,(reverse=True)反向排序降序

函数的多种传参方式
函数参数种类:
位置参数,关键字参数,缺省参数,不定长参数

位置参数:调用函数时根据函数定义的参数位置来传递参数

关键字参数:函数调用时通过“键=值”形式传递

缺省参数:默认参数

不定长参数:可变参数 位置传递*args  关键字传递**kwargs

函数本身是可以作为参数,传入另一个函数中进行使用的,其作用在于:传入计算逻辑,而非传入数据

lambda匿名函数:

lambda关键字可以定义匿名的函数(无名称),只可临时使用一次

文件:
open()打开函数:

open(name:文件名称,mode:打开方式,r:只读;w:写入;a:追加,encoding:编码格式)

读操作相关方法:

文件对象.read (num)  num表示读取字节数         文件.readlines全部读取并封装到列表中   

readline():一次只读取一行                        for循环读取文件行

close()关闭文件对象                                with open()as if通过with open语法打开文件,可以自动关闭  

写操作方法:

write写入到内存中        flush刷新 将内存中积攒的内容写入到硬盘中

close方法带有flush功能

w模式:文件不存在时会创建文件,存在时会清空文件内容

文件的追加:

追加写入方法与w模式一致

注意:a模式,文件不存在会创建文件

a模式,文件存在,会在原有内容后继续写入

异常
异常的捕获:

try:可能发生错误的代码

except:如果出现异常执行的代码    

捕获指定或多个异常:            

try:print(name)except( NameError ,name)as e:

捕获所有异常:except Exception as e:

异常else:表示如果没有异常要执行的代码

异常的finally:表示无论是否异常都要执行的代码,如关闭文件

异常具有传递性

Python模块(Module)

模块的导入:[from 模块名]  import[zx模块|类|变量|函数|*] [as别名]

_all_:如果一个模块文件中有'_all_'变量,当使用'from xxx import *'导入时,只能导入这个列表的元素

json数据格式

json是一种轻量级的数据交换格式,采用字符串存储和表示数据

data=json.dumps(data)   将python数据转化为json数据,如果有中文带上ensure_ascii=False,保证中文正常输出

data=json.loads(data)  将json数据转化为python列表或字典

pyecharts

全局配置可以用set_glob al_opts方法进行配置

#升职加薪问题
info_dict = {
    "王力宏":{
        "部门":"科技部",
        "工资":"3000",
        "级别":1
    },
    "周杰伦":{
        "部门":"市场部",
        "工资":"5000",
        "级别":2
    },
    "林俊杰":{
        "部门":"市场部",
        "工资":"7000",
        "级别":3
    },
    "张学友":{
        "部门":"科技部",
        "工资":"4000",
        "级别":1
    },
    "刘德华":{
        "部门":"市场部",
        "工资":"6000",
        "级别":2
    },
}
print(f"原字典为:{info_dict}")
for name in info_dict:
    if info_dict[name]["级别"] == 1:
        employee_info_dict = info_dict[name]
        employee_info_dict["级别"] = 2
        employee_info_dict["工资"] =  int(employee_info_dict["工资"]) * 1.1
        info_dict[name] = employee_info_dict
print(f"修改后的字典为:{info_dict}")
练习:

银行取款练习题:

money=5000000
name=None
name=input("请输入姓名:")
def query(show_header):                     #定义一个函数,用于查询余额
    if show_header:                           #如果show_header为True,则打印表头
        print("————————查询余额————————")
    print(f"{name}你好,你的余额是{money}元")

def saving(num):                                 #定义一个函数,用于存款
    print("————————存款————————")
    global money
    money+=num
    print(f"{name}你好,你的存款是{num}元,存款成功")
    query(False)

def get_money(num):                                #定义一个函数,用于取款
    print("————————取款————————")
    global money
    money-=num
    print(f"{name}你好,你的取款是{num}元,取款成功")
    query(False)

def main():                                        #定义一个函数,用于主菜单
    print("————————主菜单————————")
    print(f"{name}你好,欢迎来到ATM系统,请选择操作:")
    print("查询余额\t【输入1】")
    print("存款\t\t【输入2】")
    print("取款\t\t【输入3】")
    print("退出\t\t【输入4】")
    return input("请输入你的选择:")

while True:                                        #循环,直到用户输入4为止
    keyboard_input=main()
    if keyboard_input=="1":                        #如果用户输入1,则调用query函数
        query(True)
        continue
    elif keyboard_input=="2":                       #如果用户输入2,则调用saving函数
        saving(int(input("请输入存款金额:")))
        continue
    elif keyboard_input=="3":                       #如果用户输入3,则调用get_money函数
        get_money(int(input("请输入取款金额:")))
        continue
    else:                                           #如果用户输入4,则退出循环
        print("退出成功")
        break

 函数传参

'''def test_func(compute):
    result = compute(1, 2)
    print(f"compute参数的类型是:{type(compute)}")
    print(f"计算结果是:{result}")
def compute(a, b):
    return a + b
test_func(compute)'''
def test_func(compute):
    result = compute(1, 2)
    print(f"计算结果是:{result}")
test_func(lambda x, y: x + y)

 单词计数练习

f=open("D:/word.txt","r",encoding="UTF-8")       #打开文件
#content=f.read()
#content.count("itheima")
#print(f"itheima出现的次数为:{content.count('itheima')}")  #输出出现的次数
count=0
for line in f:
    line=line.strip()
    words=line.split(" ")
    for word in words:
        if word=="itheima":
            count+=1
print(f"itheima出现的次数为:{count}")

f.close()

 文件备份

fr=open("D/bill.txt","r",encoding="UTF-8")   #打开文件,读文件
fw=open("D/bill.txt.bak","w",encoding="UTF-8")      #打开文件,写文件
for line in fr:
    line=line.strip()         #去掉字符串前后的空格
    if len(line.split(","))<5:
        continue
    if line.split(",")[4]=="测试":          #将字符串以逗号为分隔符,分成列表,索引为4的元素为“测试”
        continue
    fw.write(line)
    fw.write("\n")
fr.close()
fw.close()
def str_reverse(s):
    """
    反转字符串
    :param s: 字符串
    :return: 反转后的字符串
    :param s:
    :return:
        """
    return s[::-1]
def substr(s,x,y):
    return s[x:y]
if __name__ == '__main__':
    print(str_reverse('hello'))
    print(substr('hello',1,3))
​
def print_file_info(file_name):
    """
    打印文件内容
    :param file_name: 文件名称
    :return:
    """
    f=None
    try:
        f=open(file_name,'r',encoding='utf-8')
        content=f.read()
        print("文件内容为:",content)
    except Exception as e:
        print("文件打开失败",e)
    finally:
        if f:
            f.close()
if __name__ == '__main__':
    print_file_info("D:/bill.txt")

​

 折线图:

#导包
from pyecharts.charts import Line
from pyecharts.options import TitleOpts,LegendOpts,ToolboxOpts,VisualMapOpts
#创建一个折线图对象
line = Line()
#添加x轴数据
line.add_xaxis(["中国","美国","英国"])
#添加y轴数据
line.add_yaxis("GDP",[30,20,10])
#调用render方法,生成文图像
#设置全局配置项
line.set_global_opts(
    title_opts=TitleOpts(title="GDP展示",pos_left="center",pos_bottom="1%"),
    legend_opts=LegendOpts(is_show=True),
    toolbox_opts=ToolboxOpts(is_show=True),
    visualmap_opts=VisualMapOpts(is_show=True),
)
line.render()

论文了解的知识:

MRI (Magnetic resonance image)

        磁共振成像(MRI)是一种医学影像技术,利用磁共振现象和计算机技术,生成人体内部组织的高分辨率影像。通过在人体中产生强大的磁场和无害的无线电波,MRI可以显示出人体内部的器官、血管、神经和其他组织的结构,从而帮助医生诊断疾病、评估损伤、制定治疗方案。

        MRI具有较高的分辨率和对软组织的优秀成像效果,可以显示出大脑、脊柱、关节、内脏器官等结构的细节,而且不需要使用任何放射线。因此,MRI被广泛用于临床诊断和研究领域,是一种非侵入性、无痛苦、安全可靠的影像检查手段。

                                                                                                    (百度百科)

SWI
Susceptibility weighted imaging
        磁敏感加权成像(SWI)以T2*加权梯度回波序列作为序列基础,根据不同组织间的磁敏感性差异提供图像对比增强,可同时获得磁距图像(magnitudeimage)和相位图像(phase image)。 SWI在显示脑内小静脉及出血方面敏感性优于常规梯度回波序列,具有较高的临床应用价值。                                                                                                (百度百科)
       新生儿颅内出血(Neonatal intracranial hemorrhage,NICH )是新生儿时期严
重脑损伤的类型之一,尤其于早产儿中多见,临床预后较差,重症者死亡率高,
幸存者亦常遗留智力发育障碍、脑性瘫痪等神经系统后遗症 [1-3] 。成人颅内出血
多见于血管畸形、外伤,而新生儿颅内出血则与胎龄、宫内窘迫、出生窒息、母
体因素等相关 [4-6]
        新生儿颅内出血依据部位的不同可分为多种类型,包括早产儿颅内出血中
最常见的脑室周围 - 脑室内出血 (periventricular-intraventricular hemorrage,
PVH-IVH) ,又称为生发基质 - 脑室内出血 (germinal matrix
hemorrhage-intraventricular hemorrhage,GM-IVH) 、产伤性颅内出血中最常见的硬
膜下出血( subdural hemorrhage,SDH [7] 、多见于足月儿因小静脉栓塞后静脉性
梗死导致的脑实质出血 (intraparenchymal haemorrhage,IPH) [8] 、小脑出血
cerebellar hemorrhage,CH )以及新生儿中十分常见的原发性蛛网膜下腔出血
subarachnoid hemorrhage,SAH [9] 。脑室周围 - 脑室内出血、脑实质出血、蛛网
膜下腔出血等多与颅内脑组织缺氧有关,蛛网膜下腔出血多是由于脑组织缺氧引
起的蛛网膜下腔毛细血管渗血,故对新生儿缺血缺氧性脑损伤中脑静脉改变的相
关研究日益增多,有助于了解新生儿缺血缺氧性脑损伤的病理生理机制,以期可
以指导临床治疗并为推测预后提供科学依据。
[1] 张伟,吴婉芳,王秀芳 . 新生儿颅内出血及缺氧缺血性脑病临床表现与预后关系的探讨
[J]. 新生儿科杂志 ,1993(06):254-256.

MinIP
Minimum intensity projection
最小强度投影 最小强度投影(MinIP) 是一种医学影像后处理技术,主要用于从三维数据(如CT或MRI)中提取并突出显示 低信号(低密度/低强度)结构。其原理是沿着某一投影方向(如轴位、冠状位或矢状位)选择每个像素点路径上的 最小值,生成二维图像。
                                                                                (deepseek)
髓静脉( medullary veins )包括深髓静脉及浅髓静脉,主要位于大脑半球和
小脑半球白质内,沟通着颅内深静脉系统及浅静脉系统。深髓静脉引流深部白质
静脉血,经室管膜下静脉引流入大脑内静脉。在出现累及深部脑白质的病变时,
常出现相应髓静脉的改变,表现为血管数量增多、宽度增大 [19-21]
[19] Benninger K L, Maitre N L, Ruess L, et al. MR Imaging Scoring System for White Matter
Injury after Deep Medullary Vein Thrombosis and Infarction in Neonates[J]. AJNR Am J
Neuroradiol,2019,40(2):347-352.
髓静脉( medullary veins )包括深髓静脉及浅髓静脉,主要位于大脑半球和
小脑半球白质内,沟通着颅内深静脉系统及浅静脉系统。深髓静脉引流深部白质
静脉血,经室管膜下静脉引流入大脑内静脉。在出现累及深部脑白质的病变时,
常出现相应髓静脉的改变,表现为血管数量增多、宽度增大 [19-21]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值