认识pycharm和python
一、读入(新建&打开项目)
1.创建项目储存位置:在非c盘部分新建一个文件夹专门存放python的项目
2.配置环境:然后进入pycharm,在右下角配置好我们的虚拟环境。
3.读入项目:之后点击pycharm左上角File,新建项目或读入先前项目。
4.具体操作:右键进行创建子项目的相关操作。
注意:Directory(文件夹)和Python Package(Python包)虽相似但有些许不同,不同点如下:
- 文件夹:
-
- 文件夹是操作系统中的标准目录,用于存储文件和子文件夹。
- 在PyCharm中,可以将文件夹添加到项目中,并将文件放在文件夹中。文件夹通常用于组织项目文件,但它们不是Python模块或包。
- 在Python代码中,无法通过import语句导入文件夹内的内容。
- Python包:
-
- Python包是一种特殊的目录结构,它包含一个名为__init__.py的特殊文件,用于表示该目录是一个包。
- 包内可以包含模块(Python文件)和子包(其他包)。这使得代码组织更加有层次和结构。
- Python包允许使用import语句导入包内的模块和子包,这样可以更好地组织和封装代码。
一般创建文件夹选择Directory即可,内部创建Python文件选择Python File即可。
这里我们新建一个python文件,命名为test1.py。
二、认识python的库
1.导入库:(一般库不用自己特意导入,除非报错提示你缺了这个库再导入)
比如缺少math这个库时,要从网上下载到本地中进行调用。点击pycharm下面的Terminal,进入控制台,输入命令pip install math即可进行安装。
因为正常下载是链接外网,经常导致下载过慢或下载失败;所以可以导入清华源进行下载,但是清华源可能没有收录某个最新版本,还是需要调用其他源进行下载
永久替换服务器为清华镜像源:
控制台输入
Plain Text复制代码
pip3 install pip -U
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# "pip install pip -U" 是用于执行升级pip的命令;
临时调用某个源(如清华源):
控制台输入
Plain Text复制代码
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xxx
# 这里注意,xxx是需要下载的包的名字,例如:
# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torch
注意:当运行报错时,十有八九是缺少库,具体可以阅读报错内容。然后对应安装即可。
2.调用库:格式主要为import...和 from...import...
例如调用math库中sqrt函数,及求平方根:
运行结果如下:
3.阅读库里的函数功能:
以上面的sqrt函数举例:鼠标浮在sqrt上方时,会弹出简介,如sqrt()的括号里要是浮点数(有小数点的数字就是浮点数),会返回平方根。
如果想了解源码构成,可以Ctrl+左键点击函数,跳转到源码界面阅读。
三、路径问题
1.绝对路径:从本地硬盘到文件位置是绝对路径,优点是在本地无需考虑这方便的报错。
2.相对路径:在将项目文件传送给别人时,别人的本地路径可能会因为不一致而报错。这时可以采用相对路径进行快捷访问,python文件中,'.\'表示python文件所在文件的目录,可以快捷输入文件名访问。
课后练习:
1.库的调用练习:
安装好cv库( pip install opencv-python-headless)后调用练习
思考并尝试查阅资料解决:
程序是调用了什么模型才可以运行人脸识别这一功能?并思考什么代码决定了本地调用了视频摄像头?如何改成本地运行的图片/视频?
1.人脸识别模型:
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml') 上述代码的作用是创建一个CascadeClassifier对象,用于加载人脸检测所需的级联分类器。
2.调用视频摄像头:
cap = cv2.VideoCapture(0)
创建一个VideoCapture对象,用于从摄像头或视频文件中读取帧。
3.改成本地运行的图片/视频:
# 本地图片路径 image_path = 'path_to_your_image.jpg'
# 本地视频路径 video_path = 'path_to_your_video.mp4'
# 如果要使用本地图片,可以打开下面这段代码
# image = cv2.imread(image_path)
# gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# 如果要使用本地视频,可以打开下面这段代码
# cap = cv2.VideoCapture(video_path)
在原有的程序中添加上述代码,需要时将注释符划掉,不需要时注释掉即可。
2.读取文件练习:
我是利用pandas库来计算最大值和最小值,先下载pandas库,之后在程序中调用,下面通过绝对路径读取本地文件11.csv和22.csv,再利用pandas库中函数求出最大值和最小值,并求出两者之和即可。具体代码和运行结果如下: