自学AI大模型-C语言
本文章,记录本人的笔记和学习进度,如有笔记错误或者没学到的知识,麻烦大佬指点一下
2026年4月1日--2026年4月10日学习内容
python
1、类型
string 字符串类型int 整形(有符号)float 浮点型(有符号)
2、type
type 可以输出变量是什么类型type(变量名)
3、转义变量
int(x)float(x)str(x)数据类型转换 任何类型都能转成字符串str 字符串全是数字的时候,才能转成float类型
4、标识符的命名规则
标识符的意思是(变量名字、方法名字、类的名字)
命名规则:
内容限定(命名中只能允许英文、中文、数字、下划线_)数字不能开头 大小写敏感(注意大小写的区分) 不可使用关键字建议i变量起名字:见名知意、下划线命名、英文字母全小写
5、数学运算符
+ - * / //取整除 %取余 **指数
6、赋值运算符
标准赋值:= 复合赋值+= -= *= /= //= %= **=
7、字符串的三种写法
三引号可以包裹大段文字,可以适配文字里面的符号问题
转移字符的作用:
1、有特殊功能,被转义字符包裹后,将没有特殊功能了。
2、没有特殊功能,被转义字符串包裹,有特殊功能了
8、字符串的拼接
字符串的拼接:例子:print(“我叫”+“某某某”) 输入:我叫某某某 注意:!!!要是字符拼接数字的话,要转成字符型int(x),才能拼接,否则会打印报错
!!! 扩展:print("_"*20) 输出结果是:_______________________。python独有的语法糖,除python外禁用
9、精度控制:
m.n m和n都是数字 m是总体宽度,n是小数控制到多少位 例子%2.5d
10、字符串格式化
%表示:我要占位 s表示:将变量变成字符串放入占位的地方 优点:拼接数字类型,就不需要转字符串类型了,还拼接方便注意:有几个占位符就提供几个变量 常用的占位符:字符串%s 整形%d 浮点数%f 。 %s万金油,通用
例子:
name='某某某'
print('我叫%s'%name)
字符串格式化2:
优点:快速、优雅注意:字符串之前要用f标记精度控制:f(文字{变量:m.n 类型 })
name='某某某'
age=12
print(f'我叫{name},年龄{age:2.2f}')
11、表达式的格式化:
定义:有结果的就是表达式,给出具体结果给变量就是表达式
12、input语句(函数)的使用
使用方法:name=input()进阶用法:name=input(请告诉我你是谁)
13、逻辑运算符
&&逻辑于 ||逻辑或 not非
14、if语句
if():{} else
15、while循环
while 条件: 条件满足时,做的事情1 条件满足时,做的事情2 条件满足时,做的事情3 .......(省略)......
i=0
while i<10:
print(i)
i+=1
16、for循环
for 循环:语句1:range(num) 例如num=5 则是:[ 0,1,2,3,4 ]语句2:range( num1,num2 ) 例如range( 5,10 ) 则是[ 5,6,7,8,9 ]语法3:range(num1,num2,step) ;例如 range(5,10,2) 则是[ 5,7,9 ]
17、函数的定义语法
def 函数名 (传入参数) 函数体 return 返回值函数使用步骤:1、先定义函数 2、后调用函数注意事项:1、参数不需要,可以省略 2、返回值不需要可以省略
18、函数返回值
没有返回值,也有内容,是None 空
def add(x,y):
sum=x+y
return sum
add(3,3)
print(add(3,3))
19、函数的规范注释
def add(x, y):
'''
:param x: 相加的第一个数
:param y: 相加的第二个数
:return: 返回两数相加
'''
return x + y
add(1, 2)
20、函数的嵌套执行顺序
见到函数就往里
def func_a():
print('1111')
def func_b():
print('2222')
func_a()
print('3333')
def func_c():
print('4444')
func_b()
print('5555')
func_c()
进结果是

21、变量作用域
全局变量、局部变量左找右可以 右找左不行外部定义内部可以找到 内部定义外部找不到global函数在函数内部定义变量,可以把局部变量可以转为全局变量
不带global:
num=10
def hhh1():
num=100
print('局部',num)
hhh1()
print('全局',num)
![]()
带global:
num=10
def hhh1():
global num
num=100
print('局部',num)
hhh1()
print('全局',num)
![]()
22、函数ATM案例练习
deposit1=10000 #存款
def text():
print('某某某,你好,欢迎来到xxx银行,请选择操作')
print('查询余额 [输入1]')
print('存款 [输入2]')
print('取款 [输入3]')
print('退出 [输入4]')
def deposit():
global deposit1
print(f'某某某,你好,你的余额是{deposit1}元')
def depositAmount():
global deposit1
depositAmount1 = 0 # 存款金额
depositAmount1= int(input('请输入您的存款金额:'))
print(f'您存入{depositAmount1}')
deposit1 = deposit1 + depositAmount1
print(f'您的账户余额是:{deposit1}')
def withdrawalAmount():
global deposit1
withdrawalAmount1 = 0 # 取款金额
withdrawalAmount1 = int(input('请输入您的取款金额:'))
print(f'您取出{withdrawalAmount1}')
deposit1 = deposit1 - withdrawalAmount1
print(f'您的账户余额是:{deposit1}')
text()
while True:
num = int(input('请输入您的选择'))
if num == 1:
deposit()
elif num == 2:
depositAmount()
elif num == 3:
withdrawalAmount()
else:
print('谢谢你')
break
23、list列表基础
列表的内容可以混合其他类型
列表嵌套
lis=[[1,2,3,4],[5,6,7,8]]
列表的反向下表
正向:1,2,3,4,5
反向:-5,-4,-3,-2,-1-
1到-2是从右到左
# 反向下标,从右到左
list_name=['11','22','33']
print(list_name[-1])
print(list_name[-2])
print(list_name[-3])

嵌套列表下标

list_name[1] [0] 就是取到大列表里的1,小列表里的0
例子:
list_num=[[1,2,3],[4,5,6],[7,8,9]]
print(list_num[2] [2])
![]()
24、数组方法
.index--查询某个所在的下表
.insert--在列表指定下表位置,插入心元素。注意:如果超过了列表范围,则在尾部插入元素
.append--在尾部添加元素.extend--在列表尾部新增一批元素
del 列表[下标]--删除
.pop(下标)--删除
.remove(元素)--删除某元素在列表第一个匹配项
.clear--清空列表数据
.count(元素)--统计某元素在列表内的元素
元素 in 变量--查询元素是否在列表中
列表的特点:
可以容纳多个元素(上线为2**63-1、922337036854775807个)
可以容纳不同类型的元素(混装)
数据是有序存储的(有下标序号)
允许重复数据存在可以修改(增加或删除元素等)
25、while循环遍历数组
num=[1,2,3,4]
index=0
while index<len(num):
print(num[index])
index+=1
26、for循环遍历数组
lit=[1,2,3,4,5,6,7,8,9]
for i in lit:
print(i)
27、while和for循环的对比
while循环和for循环,都是循环语句,但细节不同:
for循环更简单 while更灵活
在循环控制上:
while循环可以自定循环条件,并自行控制
for循环不可以自定循环条件,只可以一个个从容器内取出数据
在无限循环上:
while循环可以通过条件控制做到无限循环
for循环理论上不可以,因为别遍历的容器容量不是无限的
在使用场景上:
while循环适用于任何想要循环的场景
for循环适用于,遍历数据容器的场景或简单的固定次数数循环场景
27、元组
元组一旦定义完成,就不可修改
元组内list数组不可替换
元组内list元素可以替换
28、字典部分先略过,有时间补充一下
29、文件操作
用法:f=open('文件地址,'r',encoding='utf8')
注意:要用双反斜杠!!! 读写文件之后,最后都要关闭文件 .close
推荐:先写open 再写close 后做操作
三大步:1、打开 2、读取 3、关闭
read( )--全部读写
read( num )--填值可以控制读取几行
readline( )--调用一次读取一行
readlines( )--全部读取 最后要.strip清除空格
close( )--关闭文件
-r 只读
-w 写入 如果文件不存在则新建 如果文件存在则覆盖掉文件里的内容
-a 追加
with open语法
如果以这种语法写,文件会自动关闭,即自动调用close
with open('D:\\Desktop\\新建 文本文档.txt','r',encoding='utf8') as f:
for line in f:
print(line.strip())
文件读取练习题
#!!!!先处理行,再处理列
# 1\打开文件
num=0
f=open("D:\\Desktop\\练习题.txt",'r',encoding='utf-8')
for line in f.readlines():
line=line.strip() #读取文件,并取消换行
for word in line.split(" "): #以空格为界限,拿到每一个单词
if 'itheima' in word: #遍历word,跟想要的单词进行比对,然后++
num+=1
print(num)
# 关闭文件
f.close()
文件追加
f=open("D:\Desktop\练习题.txt",'a',encoding='utf-8')
f.write('\nhhhhh')
f.close()
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)