当前位置:   article > 正文

CSDN C4 Python工程师基础能力认证考试 参与经验分享_c4-见习工程师能力 csdn

c4-见习工程师能力 csdn

10月16号参加了C4 Python工程师基础能力认证考试,这里给大家分享分享经验

首先考试报名必须要先通过C1的见习工程师考试,C1那个考试挺简单的,主要是JS的技巧,有些问答知识百度一下就知道了。

官方页面上考试的介绍
在这里插入图片描述

我觉得只要大家学过一整个Python的语法,基本都没问题,偶尔有点不清楚的,百度上一看就知道了

先讲讲考试的流程,流程可以在模拟考试上体验一把。

准备工作

OBS软件推流设置

考试要求是在OBS软件上摄像头打开,共享屏幕
这个OBS软件考试页面是有下载入口的,进去之后 是这样的界面
在这里插入图片描述
在左下方的来源里点击加号,添加上这两样就可以了
在这里插入图片描述

推流设置先点击上面菜单栏的文件,再点设置
在这里插入图片描述
进入这个界面后点击推流
在这里插入图片描述
使用自定义的服务,将考试页面提供的服务器地址和串流秘钥填入即可。
在这里插入图片描述

点击确定后,回到主界面点击右下角控件中的开始推流即可

在这里插入图片描述

git管理项目的用法

项目是来源于开源中国社区的,基本不存在网络问题,可以用git clone 地址的命令 下载项目文件。这个命令考试的时候会提供,直接复制粘贴 即可。
一般用这个Git Bash软件进行git操作,如果是第一次使用就要设置邮箱和用户名,但这个并不是非要真实的数据,只是输入即可。
在这里插入图片描述
在这里插入图片描述
Pycharm也可以用git,直接在terminal里面输入,前提是先安装过git bash,系统中有了这个工具

在这里插入图片描述

git clone下来之后即可打开文件夹开始编写代码,如果不指定文件夹的话,在Windows 中git bash软件会放在用户文件夹下面。如果你的用户名是hehe,那他就在hehe下面,路径 一般是C:\Users\hehe
写完这个代码后,进入到那个文件夹
这里如果位置不顺手的话,代码可以拷贝出来写,在提交前放进去就可以了。

cd clone下来的文件夹名字
  • 1

进入文件夹

git add . 
  • 1

可以将工作区的所有文件加入暂存区,注意add后面参数 是点号,不是空的

git commit -m '第一次提交'
  • 1

可以将暂存区的内容添加到 仓库,m后面的是提交的说明

git push
  • 1

将修改推送到远程服务器上

一般就是这几个步骤,如果中途软件有问题,版本 想回到以前的,如果提交过的话(指的 是commit过的)

git log
  • 1

看提交历史

git reset --hard  <id的前几位>
  • 1

指定回到的版本
即可回到指定的位置
git clone可以指定克隆到的项目的文件夹

git clone xxxxx   D:\test
  • 1

后面的文件夹必须是空的才可以
这个可以测试自己的推送有没有到位,是不是已经上了服务器。相当于又下载了一下。

Docker环境

考试要求的项目必须在Docker中运行,我们可以在 考试前先准备 个linux电脑安装好Docker软件,这个在考试中可以用来测试,这里t成功运行的话,基本上就没问题了,安装docker的方法在我以前的博文中有
部署个Docker环境并添加自己用的数据库
主要是编辑docker-compose.yml文件,定制Dockerfile。
常用的docker-compose.yml

version: "3.1"
services:
  # python环境
  python1:
    tty: true
    stdin_open: true
    build: code
    volumes:
      - ./code:/code

  # mysql
  mysql1:
    image: "mysql:latest"
    environment:
      MYSQL_ROOT_PASSWORD: sa123456
      MYSQL_DATABASE: db1
    ports:
      - 3307:3306
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

这类文件 是以缩进作为层级的
第一层version代表版本
services代表启动的服务
services下级2个
第一个python1构建的是一个python环境服务
tty代表一直运行,stdin_open打开输入流,build表示通过这个文件夹里面的Dockerfile构建,volumes表示挂载当前目录下的code文件夹到docker容器中的code文件夹里
里面的Dockerfile是这样的

FROM python:3.6
WORKDIR /code
RUN  python -m pip install --upgrade pip
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
  • 1
  • 2
  • 3
  • 4
  • 5

FROM后面的是镜像,WORKDIR代表的是工作目录
RUN相当于直接在系统的控制台输入指定
COPY把工作目录下的文件拷贝到容器中,这里是 拷贝,不是映射

第二个mysql1构建的是一个mysql数据库环境,在python中连接数据库的host参数就是这个名字
image是镜像来源,冒号后面是版本。这个可以通过docker search找到 ,更好的是在docker hub上面找到,复制后面的镜像拉取命令里的带版本的信息。
在这里插入图片描述
有些镜像是没有 latest的,所以这个标签有时候是特定的。
environment配置环境变量,这里设置了root密码和数据库名称
ports,端口映射,访问宿主机的3307代表访问Docker内部的3306

项目部署

项目结构

此次示例项目的结构是这样的,这也是我 考试的时候做的项目
在这里插入图片描述

我将他拷贝到我的linux电脑里,没有额外电脑的建议在各大云服务器网站找一台,买一台或搞个免费试用的都可以。

在这里插入图片描述

项目构建

进入到txt文件夹下,运行构建命令

docker-compose up -d --build
  • 1

系统会根据文件夹下的docker-compose.yml文件构建运行环境,自己的电脑能运行起来这个环境,那么基本上就没什么问题了。

在这里插入图片描述

运行程序

使用命令查看自己的容器id

docker ps -a
  • 1

找到那个叫文件夹_python的id

在这里插入图片描述

使用命令进去这个容器,id用前几位就可以了

docker exec -it <容器id> bash
  • 1

在这里插入图片描述

进去之后ls命令查看文件夹,可以看到自己已经进入了code文件夹内部

在这里插入图片描述

然后根据题目要求的运行方式运行程序。

这些步骤也要根据自己的情况写到README.md文件里面,作为别人按照文件部署的流程。

题型分析

在这里插入图片描述

终端交互应用

一般就直接运行文件,命令一般为

python3 code.py
  • 1

或者是带参数的

python main.py ./example
  • 1

web应用

一般要搭建一个web框架
docker-compose.yml中也要配置数据
比如加一个flask服务,最后通过浏览器访问

  python_flask:
    tty: true
    stdin_open: true
    build: code_web
    volumes:
      - ./code_web:/code
    ports:
      - 5000:5000
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

Dockerfile

FROM python:3.6
WORKDIR /code

ENV FLASK_APP=app.py
ENV FLASK_RUN_HOST=0.0.0.0
ENV FLASK_ENV=development

COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

EXPOSE 5000

CMD ["flask", "run"]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

这个服务开启了5000端口,在Dockerfile里做了 一些配置 ,但是这些配置其实都可以放到py文件里,然后运行命令启动文件。Dockerfile做基本配置即可。

工具链应用

主要是一些系统软件的调用,比如 调用一些linux下的软件做一些事情,一般找包含这个软件的镜像调用系统命令处理,或者在Dockerfile里面安装软件包

其他注意事项

在这个考试报名之后会有老师联系你,教你基本的操作,我感觉多练习还是很重要的。具体的题目就不讲了,也没必要讲,难度不大。
下面是考试题目上面附带的要求,给大家参考

视为考试不通过的情况

在这里插入图片描述
这三项是很重要的,特别是docker的操作,最好是自己先在真机上测试成功后再提交。

扣分的项目

在这里插入图片描述
这个可能每个题目要求不一样,要求7的容器类型一般指的就是前面代码中数据库连接host参数使用服务名的方式。

限定条件

在这里插入图片描述
这个不同题目肯定不一样,但是也必须仔细看清楚,对照这个要去来,一条一条的过 !
在老师辅导的时候我也问过了,考试 过程中如果自己突然不会了,是可以百度的,只要不是大段拷贝的抄袭,思路是可以借鉴的。有些工具链应用的题目可能会用到linux里面的功能,没用过的可能一头雾水,但只要百度下,我感觉你一下就能明白。

希望大家也能考试顺利!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/600801
推荐阅读
相关标签
  

闽ICP备14008679号