01阶段:大模型语言入门
一、Python语法基础
1.为什么Python如此受欢迎?
面向对象,解释型计算机程序设计语言。
Python兼容性差,很多版本不会向上兼容,推荐使用10/11/12版本,居中版本一般相对稳定。
Python本质上是一个脚本语言。
Python设计哲学:优雅、明确、简单、可读性强。
不要带着Java的思想来看Python,不是一个东西!!!
2.Python解释器
Python解释器有这几种:
•CPython官网提供的解释器就是C语言实现的,所以称之为CPython,也是最常用的Python实现,课程中使用的就是CPython作为解释器。
•JPython就是JAVA语言实现的解释器,讲Python代码编程成Java字节码执行。
•IronPython是运行在微软Net平台上的Python解析器,直接把Python代码编译成Net字节码。
•PyPy使用Python语言实现的Python解析器。
3.Python语言简洁性
print "Hello World"二.Python环境搭建
1.简介与安装
(1)Anaconda安装
Anaconda(水蟒):是一个科学计算软件发行版,集成了大量常用扩展包的环境,包含了conda、Python等180多个科学计算包及其依赖项,并且支持所有操作平台。
下载地址:https://www.anaconda.com/
(2)开发工具PyCharm下载
下载地址:https://www.jetbrains.com/pycharm/
(3)创建安装python虚拟环境
•PyCharm关联虚拟环境
•虚拟环境的创建和关联【重点】
•创建虚拟环境的目的:base基础环境的包太多了,一打开项目加载半天,兼容性问题,一个项目要创建一个虚拟环境,虚拟环境是一个项目配一个,python兼容性非常不好
•anaconda好处就是:一个软件里面安装了多个,而原生的解释器得不断地装多个,anaconda是一个里面安装了多个虚拟环境
•D:\app\Anaconda3\envs文件夹检查虚拟环境是否安装成功
1.搜索Anaconda Prompt
2.执行conda create -n kyai4 python=3.10
3.切换虚拟环境命令conda activate kyai4
4.退出虚拟环境命令conda deactivate
(如果没找到新建的虚拟环境就是用管理员模式重新创建一下虚拟环境)
2.Python基础使用
(1)python注释
"""" 多行注释 三引号 """ # 单行注释用井号 """ 注释:就是对代码进行解释说明的文字 """(2)python标识符
""" 标识符:程序中的各种名字 常见的名字有:变量名 函数名 类名 方法名... 1.标识符命名规则(必须遵守): 组成:只能有字母、数字、下划线、汉字 注意:不能以数字开头、不能是关键字、严格区分大小写 2.标识符命名规范(建议遵守): 不建议用汉字 命名方法:蛇形命名法(student_name) 大驼峰命名法(StudentName) 小驼峰命名法(studentName) """ #(注意:python里面建议都用蛇形命名法,只有类用大驼峰)(3)python字面量/常量
""" 字面量:就是程序中被写下来的固定的值 举例:"你好" '你好' 10 3.14 True False 注意:python中的单引号和双引号的功能是一样的,窦都经常用于包裹字符串 """ #需求:打印一个字符串 print("hello world") print('hello world') #需求:打印一个整数 print(10) #需求:打印一个浮点数 print(3.14) #需求:打印一个布尔值 print(True) print(False)(4)python变量
""" 变量:程序中用于记录数据变化的抽象概念 变量定义格式:变量名 = 变量值 上述格式解释:把=后面的变量值赋值给=前面的变量 """ #需求:打印一个字符串变量 a = "Hello Word" print(a) #需求:打印一个整数变量 b = 10 print(b) #需求:打印一个浮点数变量 c = 3.14 print(c) #需求:打印一个布尔变量 d = True print(d)(5)python的数据类型
""" 数据类型:python中的字面量对应的类型 常见的有: 字符串:str 整数:int 浮点数:float 布尔值:bool 注意:变量本身没有类型,只有字面量数据才有类型 type(x):查看x的数据类型 """ # 1.查看字面量类型 print(type('你好')) # <class 'str'> print(type(10)) # <class 'int'> print(type(3.14)) # <class 'float'> print(type(True)) # <class 'bool'> #2.type()查看变量的类型,本质查看的是变量记录的数据的类型 a = 'hello world' print(type(a)) b = 10 print(type(b)) c = 3.14 print(type(c)) d = True print(type(d))""" str(x):把指定的x转换为字符串类型(任意类型都能转换为字符串) int(x):把指定的x转换为证书类型(中文不能转,浮点数转换会丢失精度) float(x):把指定的x转换为浮点数类型(中文不能转,整数转换类似乘以1.0) """ # str(x):把指定的x转换为字符串类型 print(10 + 20) # 30 print("10" + "20") # 1020 print(str(10) + str(20)) # 1020 # int(x):把指定的x转换为证书类型 # print(int('你好')) # 报错 print(int(3.14)) # 3 print(int(3.94)) # 3 # float(x):把指定的x转换为浮点数类型 print(float(3)) # 3.0 # print(float('你好')) # 报错(6)python输出数据函数
""" print(各种数据):把括号的数据打印到控制台 如何查看源代码:按住ctrl+鼠标左键点击进入 print(*args,sep=' ',end='\n') 参数解释: *args:代表可以打印多个内容,用逗号分隔 sep:代表打印的多个内容在控制台上用默认的空格分隔 end:代表所有内容打印完后默认是换行操作 """ print(1,2,3,4) print(1,2,3,4,sep='/',end='!!!') # 1/2/3/4!!!(7)python输入数据函数
""" 输入函数使用格式:变量 = input(提示语) input(提示语): 上述格式解释: 1.先把提示语展示到控制台 2.input()等待并接收用户的输入内容 3.把接收到的内容赋值给左边的变量 """ # 需求:依次接收用户录入的用户名,年龄,身高 name = input("请输入用户名:") age = input("请输入年龄:") height = input("请输入身高:") # 注意:input()默认接收的都是字符串类型 print('你输入的内容类型:',type(name),type(age),type(height)) print("用户名:",name,"年龄:",age,"身高:",height) # 格式化输出变量 # 方式1:占位符%s给字符串占位 %d给数字占位 %f给浮点数占位 print("您输入的姓名为%s,年龄为%s,身高为%s"%(name,int(age),float(height))) #方式2:format方式(推荐) print(f"您输入的名字是:{name},年龄是:{age},身高是:{height}")(8)python运算符
""" 算数运算符:+、-、*、/、//、%、** 赋值运算符:= 复合赋值运算符:+=、-=、*=、/=、//=、%=、**= 比较运算符:==、!=、>、>=、<、<= 逻辑运算符:and、or、not """ # 算数运算符:+、-、*、/、//、%、** print(10 + 3) # 13 print(10 - 3) # 7 print(10 * 3) # 30 print(10 / 3) # 3.3333333333333335 print(10 // 3) # 3 print(10 % 3) # 1 print(10 ** 3) # 1000 # 赋值运算符:= a = 10 print(a) # 10 # 复合赋值运算符:+=、-=、*=、/=、//=、%=、**= a += 3 # a = a + 3 print(a) # 13 a -= 3 # a = a - 3 print(a) # 10 a *= 3 # a = a * 3 print(a) # 30 a /= 3 # a = a / 3 print(a) # 10.0 a //= 3 # a = a // 3 print(a) # 3.0 a %= 3 # a = a % 3 print(a) # 0.0 a **= 3 # a = a ** 3 print(a) # 0.0 # 比较运算符:==、!=、>、>=、<、<= print(10 == 3) # False print(10 != 3) # True print(10 > 3) # True print(10 >= 3) # True print(10 < 3) # False print(10 <= 3) # False print("========") # 逻辑运算符:and、or、not print(False and False) # False print(False and True) # False print(True and True) # True print(False or False) # False print(False or True) # True print(not True) # false(9)random随机数
# 1.导包 import random # 2.生成随机数 注意:包左包右 random_num = random.randint(1,10) print(random_num)(10)if判断
""" if格式有三种: 格式1如下 if条件: 满足条件执行的代码 格式2如下 if条件: 满足条件执行的代码 else: 不满足条件执行的代码 格式3如下 if条件1: 满足条件1执行的代码 elif条件2: 满足条件2执行的代码 ... else: 不满足所有条件执行的代码 """ # 需求1:判断年龄大于18就可以去网吧了 age = 18 if age >= 18: print("可以去网吧了") # 需求2:判断年龄大于18就可以去网吧了,否则回去写作业吧 age = 17 if age >= 18: print("可以去网吧了") else: print("回去写作业吧") #需求3:考试成绩等级判断 score = 60 if 0<= score <= 100: print("分数正常,接下来判断等级") if score >= 90: print("优秀") elif score >= 80: print("良好") elif score >= 60: print("及格") else: print("不及格") else: print("分数异常")(11)for循环和while循环
""" for循环格式如下 x:起始值默认0 y:计数值(不含) z:步长 for 临时变量 in range(x,y,z): 循环体 while循环格式如下 while 条件: 循环体 """ # 需求1:打印1-5 for i in range(1,6): print(i) j = 1 while j <= 5: print(j) j += 1 print('===========') # 需求2:循环依次打印135 for i in range(1,6,2): print(i) j = 1 while j <= 5: print(j) j += 2 print('===========')(12)猜数字游戏
""" 补充循环知识点: break:直接结束循环 continue:跳过本次循环,继续下一次循环 猜数字游戏分析 1.系统随机出1-100的数字作为底数 2.让用户无限猜,知道猜中位置 3.每次判断用户猜的数和底数大小,并给出提示 """ # 1.系统随机出1-100的数字作为底数 import random rand_num = random.randint(1, 100) # 2.让用户无限猜,知道猜中位置 while True: guess_num = int(input("请输入您本次猜的数:")) # 3.每次判断用户猜的数和底数大小,并给出提示 if 1<= guess_num <= 100: if guess_num > rand_num: print("您输入的数字太大了") elif guess_num < rand_num: print("您输入的数字太小了") else: print("恭喜您猜对了") break else: print("请输入1-100的数字")