Python入门
2024-10-06 16:51:59 0 举报
AI智能生成
Python入门
作者其他创作
大纲/内容
针对GPU的
CUDA英文全称是Compute Unified Device Architecture,其是有NVIDIA推出的运算平台,平台内嵌的并行架构计算可以使GPU解决复杂的计算问题。可以这么理解,GPU的强大算力是在CUDA的运算平台中发挥的。所以,想要发挥GPU强大的算力,就需要下载cuda。
#查看cuda版本:三种方式nvcc -Vnvcc --versioncat /usr/loacal/cuda/version.txtcat /usr/loacal/cuda/version.json
cuda是操纵GPU的,anaconda是操作python的。深度学习代码通过python实现,python与cuda通信,通过python运行cuda,调用GPU完成计算。
cuda
cuDNN,深度神经网络库是 CUDA的一个子库,以高度优化的方式实现深度学习(如前向和反向卷积、池化层、归一化和激活层)的GPU加速,其广泛应用的深度学习框架,包括 Caffe2、Chainer、Keras、MATLAB、MxNet、PaddlePaddle、PyTorch 和 TensorFlow。CUDA Toolkit 包括了一些列cuda包,用以开发cuda、编译、部署环境等一系列包,具体详见cuda toolkit
cudnn
针对Python的
conda 是一个开源软件包管理系统和环境管理系统,适用于Windows、macOS和Linux等系统,其作用是快速安装、运行和更新软件包及其依赖项,其虽然是为python开发的,但适用语言包括Python,R,Ruby,Lua,Scala,Java,JavaScript,C / C ++,FORTRAN等。
conda 是一个流行的开源包管理系统和环境管理系统,用于安装、管理和部署软件包和环境。它主要与 Anaconda 或 Miniconda 发行版相关联,这两者都是 Python 的发行版,提供了一整套的科学计算和数据分析工具。
Conda 是一个开源的包管理和环境管理系统。它能够轻松地安装、升级和卸载软件包,同时管理不同的环境,使得在同一系统上运行不同版本的软件变得容易。Conda 与 Python 语言无关,可以用于管理任何语言的软件包。包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。
介绍
Conda
Miniconda是一款小巧的python环境管理工具,安装包大约只有50M多点,其安装程序中包含conda软件包管理器和Python,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。就只包含最基本的东西,其他的库得自己装。
Miniconda
Anaconda是一个打包的集合,里面预装好了Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等,拥有众多packages、科学计算工具等,就是把很多常用的不常用的库都给你装好了。
所谓发行版本,是指其整合了conda,并对其进行了包装。这一思想可参考linux的发行版本。
Anaconda 一个开源的python和R语言的发行版本,anaconda中的“ana”来源于“analyst“,用于计算科学(数据科学、机器学习、大数据处理和预测分析),anaconda透过conda进行软件包管理,致力于简化软件包管理系统和部署。
anaconda和conda的关系:anaconda中不仅包含conda,还包括数据管理平台(如oracle)、编译器(如jupyter notebook)、社区交流等。而conda在anaconda的作用是管理包和环境。
Anaconda
QA1:conda与PIP的区别
QA
环境介绍
指定使用清华的源进行安装
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip安装模块
python
必须安装anconda或者miniconda
https://www.nuomiphp.com/a/stackoverflow/zh/6372f9919bcb182b487e2726.html
可不可以不安装anconda或者miniconda,只安装conda不可以
安装
升级全部库: conda upgrade --all升级一个包 conda update packagename安装包:conda install packagename也可以安装多个包: conda installl numpy pandas scipy安装固定版本的包:conda install numpy =1.10移除一个包:conda remove packagename查看所有包:conda list
基本使用
conda
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
https://repo.anaconda.com/archive/
安装包下载地址
wget https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh
下载地址
bash Anaconda3-2024.02-1-Linux-x86_64.sh
看下安装介绍,通常就回车---阅读协议,回车---yes---选择安装路径,默认的话直接回车---输入yes默认启动conda
source activate
如果未启动,到 /root/anaconda3/bin 下执行
source ~/.bashrc
使用命令更新终端
conda -V查看版本号,如果有显示则表示成功
这时会看到命令最前面有(base)表示使用的是base环境
下载完成后运行脚本安装
查看anaconda当前存在的所有虚拟环境
conda env list
创建新环境
conda create --name py3-10-14 python==3.10.14
激活或者切换其他虚拟环境
conda activate py3-10-14
退出虚拟环境
conda deactivate
删除虚拟环境
conda remove -n py3-10-14 –all
安装 jupyter notebook
conda install jupyter notebook
pytorch 2.2.0 版本的安装
conda install pytorch=2.2.0 torchvision torchaudio cpuonly -c pytorch
运行以下命令来搜索可用的 torch 版本
conda search -f torch
安装 cpu版本的pytorch
conda install pytorch-cpu=2.2.0 -c pytorch
常用操作
Ubuntu
anaconda
下载链接:https://repo.anaconda.com/miniconda/
mkdir -p ~/miniconda3wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.shbash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3rm -rf ~/miniconda3/miniconda.sh~/miniconda3/bin/conda init bash~/miniconda3/bin/conda init zsh
安装步骤
conda deactivate
返回到基础环境或系统环境
输入完前面就会多个(base)
source ~/.bashrc 就会进入
重新加载你的 Bash shell 的配置文件,以便应用最新的更改
运行
环境安装
windows
MAC
安装python环境即python解释器
官方下载tar.gz的包,重新通过源码编译的方式进行安装,安装完后指定python3.10版本,然后借这个pip进行安装
原系统中有自带的python,但是想在安装一个版本,并将用这个版本上去通过pip包进行管理
QA1:
ubuntu
linux上默认会安装一个2.7.5版本的python环境
https://www.python.org/downloads/source/
下载所需版本的源码包,通常下载tar.gz源码包
yum -y group install \"Development tools\"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make
准备编译环境,任选其一即可
解压:tar -zxvf Python-3.9.7.tgz
./configure --prefix=/usr/local/python3
make && make install
rm -f /usr/bin/python
删除系统默认的python2的软连接
ln -s /usr/local/python3/bin/python3.9 /usr/bin/python
ln -s /usr/local/python3/bin/pip3.9 /usr/bin/pip
建立软连接
python -V
验证是否成功
centos
Linux
python安装
.whl 文件是 Python Wheel 的缩写,是一种 Python 包的二进制分发格式。Wheel 格式被设计为取代传统的 egg 格式,并在 Python 包的安装、分发和管理方面提供更好的性能和可靠性。
QA1:whl是什么
基础环境介绍、安装及配置
OOP的全称是\"面向对象编程\",英文全称是\"Object-Oriented Programming\"。在面向对象编程范 paradigm 下,程序的设计和组织是基于对象的概念,对象是程序的基本单元,通过定义和操作对象,实现程序的功能。OOP 通过封装、继承和多态等概念来组织和管理代码,使得代码更加模块化、可重用和易维护。这种编程范式被广泛应用于许多编程语言,包括Python、Java、C++等。
面向对象的编程语言
Python编译器
Python介绍
pip 是 Python 的包管理器,用于安装和管理 Python 包(也称为模块或库)。它是 Python 的标准包管理工具,能够让用户轻松地安装、升级、卸载 Python 包。
pip
Python安装代码编辑器和代码编译器以及运行环境
创建项目
Print
number = input(\"请输入数字: \") # input用于获取键盘输入print(number)print(type(number)) # input获得的数据是字符型print(number + 10) # 报错,不能把字符和数字做运算print(int(number) + 10) # int可将字符串10转换成数字10print(number + str(10)) # str将10转换为字符串后实现字符串拼接
input
输入输出
在python中 ,单双引号不区分,表示一样的意义
Python 变量
Python 命名规则
运算优先级:算数运算符>比较运算符>逻辑运算符
算数运算符
比较运算符
逻辑运算符
print(5 / 2) # 2.5print(5 // 2) # 丢弃余数,只保留商print(5 % 2) # 求余数print(5 ** 3) # 5的3次方print(5 > 3) # 返回Trueprint(3 > 5) # 返回Falseprint(20 > 10 > 5) # python支持连续比较print(20 > 10 and 10 > 5) # 与上面相同含义print(not 20 > 10) # False
Python 基础运算
单行注释用#
多行注释
Python 注释
int 整数
float 浮点数
表示逻辑上的真(True)或假(False)。
布尔值
表示空值或缺失值。
none
sentence = 'tom\\'s pet is a cat' # 单引号中间还有单引号,可以转义sentence2 = \"tom's pet is a cat\" # 也可以用双引号包含单引号sentence3 = \"tom said:\\\"hello world!\\\"\"sentence4 = 'tom said:\"hello world\"'# 三个连续的单引号或双引号,可以保存输入格式,允许输入多行字符串words = \"\"\"helloworldabcd\"\"\"print(words)py_str = 'python'len(py_str) # 取长度py_str[0] # 第一个字符'python'[0]py_str[-1] # 最后一个字符# py_str[6] # 错误,下标超出范围py_str[2:4] # 切片,起始下标包含,结束下标不包含py_str[2:] # 从下标为2的字符取到结尾py_str[:2] # 从开头取到下标是2之前的字符py_str[:] # 取全部py_str[::2] # 步长值为2,默认是1py_str[1::2] # 取出yhnpy_str[::-1] # 步长为负,表示自右向左取py_str + ' is good' # 简单的拼接到一起py_str * 3 # 把字符串重复3遍't' in py_str # True'th' in py_str # True'to' in py_str # False'to' not in py_str # True
字符串
列表是有序列对象,但它是容器类型,列表中可以包含各种数据列表用中括号括起来
列表
元组与列表基本上是一样的,只是元组不可变,列表是可以变的元组用小括号括起来
元组
字典是key-value(键-值)对形式的,是无序的,通过键取出值,用大括号括起来
字典
集合
Python 数据类型
Python 交互模式
单个的数据也可作为判断条件。任何值为0的数字、空对象都是False,任何非0数字、非空对象都是True。
if 基本判断条件为true则执行下面的语句
if a < b: smaller = aelse: smaller = bprint(smaller)s = a if a < b else b # 和上面的if-else语句等价print(s)
条件表达式、三元运算符
getpass函数跟input函数一样都可以用来获取终端输入的内容。只是getpass函数会隐藏用户在终端输入的内容,不会明文显示。
import getpass # 导入模块username = input('username: ')# getpass模块中,有一个方法也叫getpasspassword = getpass.getpass('password: ')if username == 'bob' and password == '123456': print('Login successful')else: print('Login incorrect')
判断用户名密码是否正确
这边以一个猜数练习作为示例
score = int(input('分数: '))if score >= 90: print('优秀')elif score >= 80: print('好')elif score >= 70: print('良')elif score >= 60: print('及格')else: print('你要努力了')
成绩分类01
score = int(input('分数: '))if score >= 60 and score < 70: print('及格')elif 70 <= score < 80: print('良')elif 80 <= score < 90: print('好')elif score >= 90: print('优秀')else: print('你要努力了')
成绩分类02
石头剪刀布
改进的石头剪刀布
嵌套/多条件语句
Python 条件语句
for循环遍历数据对象
range用法及数字累加
列表中先给定两个数字,后面的数字总是前两个数字之和。
列表实现斐波那契数列
for循环
猜数,五次机会
猜数一直到猜对
猜数
三局两胜
sum100 = 0counter = 1while counter < 101: sum100 += counter counter += 1print(sum100)
while循环,累加至100知道循环次数的情况下最好使用for循环
break是结束循环,break之后、循环体内代码不再执行。
while-break
计算100以内偶数之和。continue是跳过本次循环剩余部分,回到循环条件处。
sum100 = 0counter = 0while counter < 100: counter += 1 # if counter % 2: if counter % 2 == 1: continue sum100 += counterprint(sum100)
while-continue
while循环
Python 循环语句
Python 格式化字符串
Python 函数
Python 引入模块
子主题
封装
继承
多态
Python 面向对象编程
Python 创建类
Python 类继承
绝对路径
相对路径
文件路径
读取
写入
文件操作
Python 文件路径
基础操作
这个方式可以拷贝,但不推荐
推荐使用这个方式;每次读取4K,读完为止:
拷贝文件就是以r的方式打开源文件,以w的方式打开目标文件,将源文件数据读出后,写到目标文件。
拷贝
Python 文件操作
Python 异常处理
Python 测试
Python高阶和匿名函数
Python入门
Python学习笔记
0 条评论
下一页