分享一份非常强势的python面试题:360+小米+BAT多家公司面试题汇总

小米面试题算法Python数据结构与算法(2)--算法分析,2024年Python开发突破20k有哪些有效的路径 学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助! 阅读详情

前言

我是一个地地道道的东北人,有着哈尔滨和大庆两地的混血,出生在大庆,小学、初中、高中都在大庆让胡路区念的,大学考的远点,在大庆的另外一个区,萨尔图区,名字叫做东北石油大学,是一个不出名的双非普通一本院校,我读的专业也不是这个学校好的专业,是一个万金油专业,电子信息工程。

也就是说,我从出生,一直到大学毕业,整整22年的时间,都在那个我最熟悉的城市,大庆。

我不知道大家对这个城市有没有了解,大庆油田、铁人王进喜,而我,就是一个石油子弟,这个称呼大家可能不太熟悉,但是在10年那段时间,这个称呼可以保证给你分配一份国企的工作。因为城市的原因,我的长辈、哥哥姐姐基本上都在中石油上班,我在大三之前的念头一直都是毕业之后会去油田上班,拿着普通的工资,在一个三线城市,有车子和房子,没有贷款压力,每天早九晚五,一直到退休。

然后,经过变革,油田子女的福利没有了,我毕业的时候,我爸问我以后想做什么,我说我没有想过,但是其实说实话,我不太喜欢国企的氛围,我这个人喜欢交朋友,也比较外向。但是我不太喜欢那种应酬,而且我也酒精过敏,并且我觉得那种朝九晚五,一眼望到头的工作不太适合我,虽然很稳定,但是我这个人骨子里还是有点不安分的。

我记得在临近毕业的时候,也就是2019年的5月份,身边的人都陆陆续续找工作了,我那时候还不知道以后要干什么,就看到身边的人有很多都在学习编程语言,python啊,什么的,于是我就打开了智联招聘,搜索一下相关的岗位,然后有一个招聘说什么岗前培训,培训完直接上岗(相信大家都知道了这是一个培训机构),然后要去北京面试,看看是否符合培训标准,报销来回路费,于是,我真、真、真的就去了,并且稀里糊涂办理了贷款,交了学费。哎,年轻啊,没有被社会鞭挞过,等我从北京回来的时候,就背了小2W的贷款了。

然后,我们毕业了。

毕业在家呆了几天,到了培训的时间,我真的就拿了一个超级大的行李箱,就是下面这个,里面还有一个被子,很多换洗的衣服,超级沉,自己坐上了大庆到北京的火车,开启了我的软件之路。

学习方案

下面是学校给我列的一百天计划里面的学习框架,我在这里放上来。

Day01~15 - Python语言基础

Day01 - 初识Python

Python简介 - Python的历史 / Python的优缺点 / Python的应用领域

搭建编程环境 - Windows环境 / Linux环境 / MacOS环境

从终端运行Python程序 - Hello, world / print函数 / 运行程序

使用IDLE - 交互式环境(REPL) / 编写多行代码 / 运行程序 / 退出IDLE

注释 - 注释的作用 / 单行注释 / 多行注释

Day02 - 语言元素

程序和进制 - 指令和程序 / 冯诺依曼机 / 二进制和十进制 / 八进制和十六进制

变量和类型 - 变量的命名 / 变量的使用 / input函数 / 检查变量类型 / 类型转换

数字和字符串 - 整数 / 浮点数 / 复数 / 字符串 / 字符串基本操作 / 字符编码

运算符 - 数学运算符 / 赋值运算符 / 比较运算符 / 逻辑运算符 / 身份运算符 / 运算符的优先级

应用案例 - 华氏温度转换成摄氏温度 / 输入圆的半径计算周长和面积 / 输入年份判断是否是闰年

Day03 - 分支结构

分支结构的应用场景 - 条件 / 缩进 / 代码块 / 流程图

if语句 - 简单的if / if-else结构 / if-elif-else结构 / 嵌套的if

应用案例 - 用户身份验证 / 英制单位与公制单位互换 / 掷骰子决定做什么 / 百分制成绩转等级制 / 分段函数求值 / 输入三条边的长度如果能构成三角形就计算周长和面积

Day04 - 循环结构

循环结构的应用场景 - 条件 / 缩进 / 代码块 / 流程图

while循环 - 基本结构 / break语句 / continue语句

for循环 - 基本结构 / range类型 / 循环中的分支结构 / 嵌套的循环 / 提前结束程序

应用案例 - 1~100求和 / 判断素数 / 猜数字游戏 / 打印九九表 / 打印三角形图案 / 猴子吃桃 / 百钱百鸡

Day05 - 构造程序逻辑

基础练习 - 水仙花数 / 完美数 / 五人分鱼 / Fibonacci数列 / 回文素数

综合练习 - Craps赌博游戏

Day06 - 函数和模块的使用

函数的作用 - 代码的坏味道 / 用函数封装功能模块

定义函数 - def语句 / 函数名 / 参数列表 / return语句 / 调用自定义函数

调用函数 - Python内置函数 / 导入模块和函数

函数的参数 - 默认参数 / 可变参数 / 关键字参数 / 命名关键字参数

函数的返回值 - 没有返回值 / 返回单个值 / 返回多个值

作用域问题 - 局部作用域 / 嵌套作用域 / 全局作用域 / 内置作用域 / 和作用域相关的关键字

用模块管理函数 - 模块的概念 / 用自定义模块管理函数 / 命名冲突的时候会怎样(同一个模块和不同的模块)

Day07 - 字符串和常用数据结构

字符串的使用 - 计算长度 / 下标运算 / 切片 / 常用方法

列表基本用法 - 定义列表 / 用下表访问元素 / 下标越界 / 添加元素 / 删除元素 / 修改元素 / 切片 / 循环遍历

列表常用操作 - 连接 / 复制(复制元素和复制数组) / 长度 / 排序 / 倒转 / 查找

生成列表 - 使用range创建数字列表 / 生成表达式 / 生成器

元组的使用 - 定义元组 / 使用元组中的值 / 修改元组变量 / 元组和列表转换

集合基本用法 - 集合和列表的区别 / 创建集合 / 添加元素 / 删除元素 / 清空

集合常用操作 - 交集 / 并集 / 差集 / 对称差 / 子集 / 超集

字典的基本用法 - 字典的特点 / 创建字典 / 添加元素 / 删除元素 / 取值 / 清空

字典常用操作 - keys()方法 / values()方法 / items()方法 / setdefault()方法

基础练习 - 跑马灯效果 / 列表找最大元素 / 统计考试成绩的平均分 / Fibonacci数列 / 杨辉三角

综合案例 - 双色球选号 / 井字棋

Day08 - 面向对象编程基础

类和对象 - 什么是类 / 什么是对象 / 面向对象其他相关概念

定义类 - 基本结构 / 属性和方法 / 构造器 / 析构器 / str方法

使用对象 - 创建对象 / 给对象发消息

面向对象的四大支柱 - 抽象 / 封装 / 继承 / 多态

基础练习 - 定义学生类 / 定义时钟类 / 定义图形类 / 定义汽车类

Day09 - 面向对象进阶

属性 - 类属性 / 实例属性 / 属性访问器 / 属性修改器 / 属性删除器 / 使用slots

类中的方法 - 实例方法 / 类方法 / 静态方法

运算符重载 - add / sub / or /getitem / setitem / len / repr / gt / lt / le / ge / eq / ne / contains

类(的对象)之间的关系 - 关联 / 继承 / 依赖

继承和多态 - 什么是继承 / 继承的语法 / 调用父类方法 / 方法重写 / 类型判定 / 多重继承 / 菱形继承(钻石继承)和C3算法

综合案例 - 工资结算系统 / 图书自动折扣系统 / 自定义分数类

Day10 - 图形用户界面和游戏开发

使用tkinter开发GUI

使用pygame三方库开发游戏应用

“大球吃小球”游戏

Day11 - 文件和异常

  • 读文件 - 读取整个文件 / 逐行读取 / 文件路径

  • 写文件 - 覆盖写入 / 追加写入 / 文本文件 / 二进制文件

  • 异常处理 - 异常机制的重要性 / try-except代码块 / else代码块 / finally代码块 / 内置异常类型 / 异常栈 / raise语句

  • 数据持久化 - CSV文件概述 / csv模块的应用 / JSON数据格式 / json模块的应用

Day12 - 字符串和正则表达式

  • 字符串高级操作 - 转义字符 / 原始字符串 / 多行字符串 / in和 not in运算符 / is开头的方法 / join和split方法 / strip相关方法 / pyperclip模块 / 不变字符串和可变字符串 / StringIO的使用

  • 正则表达式入门 - 正则表达式的作用 / 元字符 / 转义 / 量词 / 分组 / 零宽断言 /贪婪匹配与惰性匹配懒惰 / 使用re模块实现正则表达式操作(匹配、搜索、替换、捕获)

  • 使用正则表达式 - re模块 / compile函数 / group和groups方法 / match方法 / search方法 / findall和finditer方法 / sub和subn方法 / split方法

  • 应用案例 - 使用正则表达式验证输入的字符串

Day13 - 进程和线程

  • 进程和线程的概念 - 什么是进程 / 什么是线程 / 多线程的应用场景

  • 使用进程 - fork函数 / multiprocessing模块 / 进程池 / 进程间通信

  • 使用线程 - thread模块 / threading模块 / Thread类 / Lock类 / Condition类 / 线程池

Day14 - 网络编程入门和网络应用开发

  • 计算机网络基础 - 计算机网络发展史 / “TCP-IP”模型 / IP地址 / 端口 / 协议 / 其他相关概念

  • 网络应用模式 - “客户端-服务器”模式 / “浏览器-服务器”模式

  • 基于HTTP协议访问网络资源 - 网络API概述 / 访问URL / requests模块 / 解析JSON格式数据

  • Python网络编程 - 套接字的概念 / socket模块 / socket函数 / 创建TCP服务器 / 创建TCP客户端 / 创建UDP服务器 / 创建UDP客户端 / SocketServer模块

  • 电子邮件 - SMTP协议 / POP3协议 / IMAP协议 / smtplib模块 / poplib模块 / imaplib模块

  • 短信服务 - 调用短信服务网关

Day15 - 图像和文档处理

  • 用Pillow处理图片 - 图片读写 / 图片合成 / 几何变换 / 色彩转换 / 滤镜效果

  • 读写Word文档 - 文本内容的处理 / 段落 / 页眉和页脚 / 样式的处理

  • 读写Excel文件 - xlrd模块 / xlwt模块

  • 生成PDF文件 - pypdf2模块 / reportlab模块

Day16~Day20 - Python语言进阶

  • 常用数据结构

  • 函数的高级用法 - “一等公民” / 高阶函数 / Lambda函数 / 作用域和闭包 / 装饰器

  • 面向对象高级知识 - “三大支柱” / 类与类之间的关系 / 垃圾回收 / 魔术属性和方法 / 混入 / 元类 / 面向对象设计原则 / GoF设计模式

  • 迭代器和生成器 - 相关魔术方法 / 创建生成器的两种方式 /

  • 并发和异步编程 - 多线程 / 多进程 / 异步IO / async和await

Day21~30 - Web前端入门

  • 用HTML标签承载页面内容

  • 用CSS渲染页面

  • 用JavaScript处理交互式行为

  • jQuery入门和提高

  • Vue.js入门

  • Element的使用

  • Bootstrap的使用

Day31~35 - 玩转Linux操作系统

  • 操作系统发展史和Linux概述

  • Linux基础命令

  • Linux中的实用程序

  • Linux的文件系统

  • Vim编辑器的应用

  • 环境变量和Shell编程

  • 软件的安装和服务的配置

  • 网络访问和管理

  • 其他相关内容

Day36~40 - 数据库基础和进阶

  • 关系型数据库MySQL

    • 关系型数据库概述

    • MySQL的安装和使用

    • SQL的使用

      • DDL - 数据定义语言 - create / drop / alter

      • DML - 数据操作语言 - insert / delete / update / select

      • DCL - 数据控制语言 - grant / revoke

    • 相关知识

      • 范式理论 - 设计二维表的指导思想

      • 数据完整性

      • 数据一致性

    • 在Python中操作MySQL
  • NoSQL入门

    • NoSQL概述

    • Redis概述

    • Mongo概述

Day41~55 - 实战Django

Day41 - 快速上手

  • Web应用工作原理和HTTP协议

  • Django框架概述

  • 5分钟快速上手

  • 使用视图模板

Day42 - 深入模型

  • 关系型数据库配置

  • 管理后台的使用

  • 使用ORM完成对模型的CRUD操作

  • Django模型最佳实践

  • 模型定义参考

Day43 - 静态资源和Ajax请求

  • 加载静态资源

  • 用Ajax请求获取数据

Day44 - 表单的应用

  • 表单和表单控件

  • 跨站请求伪造和CSRF令牌

  • Form和ModelForm

  • 表单验证

Day45 - Cookie和Session

  • 实现用户跟踪

  • cookie和session的关系

  • Django框架对session的支持

  • 视图函数中的cookie读写操作

Day46 - 报表和日志

  • 通过HttpResponse修改响应头

  • 使用StreamingHttpResponse处理大文件

  • 使用xlwt生成Excel报表

  • 使用reportlab生成PDF报表

  • 使用ECharts生成前端图表

  • 配置日志和Django-Debug-Toolbar

Day47 - 中间件的应用

  • 什么是中间件

  • Django框架内置的中间件

  • 自定义中间件及其应用场景

Day48 - 前后端分离开发入门

  • 返回JSON格式的数据

  • 用Vue.js渲染页面

Day49 - RESTful架构和DRF入门 Day50 - RESTful架构和DRF进阶 Day51 - 使用缓存

  • 网站优化第一定律

  • 在Django项目中使用Redis提供缓存服务

  • 在视图函数中读写缓存

  • 使用装饰器实现页面缓存

  • 为数据接口提供缓存服务

Day52 - 文件上传和富文本编辑

  • 文件上传表单控件和图片文件预览

  • 服务器端如何处理上传的文件

  • 富文本编辑器概述

  • wangEditor的使用

Day53 - 短信和邮件

  • 常用短信网关平台介绍

  • 使用螺丝帽发送短信

  • Django框架对邮件服务的支持

Day54 - 异步任务和定时任务

  • 网站优化第二定律

  • 配置消息队列服务

  • 在项目中使用celery实现任务异步化

  • 在项目中使用celery实现定时任务

Day55 - 单元测试和项目上线

  • Python中的单元测试

  • Django框架对单元测试的支持

  • 使用版本控制系统

  • 配置和使用uWSGI

  • 动静分离和Nginx配置

  • 配置HTTPS

Day56~60 - 实战Flask

Day56 - Flask入门 Day57 - 模板的使用 Day58 - 表单的处理 Day59 - 数据库操作 Day60 - 项目实战

Day61~65 - 实战Tornado

Day61 - 预备知识

  • 并发编程

  • I/O模式和事件驱动

Day62 - Tornado入门

  • Tornado概述

  • 5分钟上手Tornado

  • 路由解析

  • 请求处理器

Day63 - 异步化

  • aiomysql和aioredis的使用

Day64 - WebSocket的应用

  • WebSocket简介

  • WebSocket服务器端编程

  • WebSocket客户端编程

  • 项目:Web聊天室

Day65 - 项目实战

  • 前后端分离开发和接口文档的撰写

  • 使用Vue.js实现前端渲染

  • 使用ECharts实现报表功能

  • 使用WebSocket实现推送服务

Day66~75 - 爬虫开发

Day66 - 网络爬虫和相关工具

  • 网络爬虫的概念及其应用领域

  • 网络爬虫的合法性探讨

  • 开发网络爬虫的相关工具

  • 一个爬虫程序的构成

Day67 - 数据采集和解析

  • 数据采集的标准和三方库

  • 页面解析的三种方式:正则表达式解析 / XPath解析 / CSS选择器解析

Day68 - 存储数据

  • 如何存储海量数据

  • 实现数据的缓存

Day69 - 并发下载

  • 多线程和多进程

  • 异步I/O和协程

  • async和await关键字的使用

  • 三方库aiohttp的应用

Day70 - 解析动态内容

  • JavaScript逆向工程

  • 使用Selenium获取动态内容

Day71 - 表单交互和验证码处理

  • 自动提交表单

  • Cookie池的应用

  • 验证码处理

Day72 - Scrapy入门

  • Scrapy爬虫框架概述

  • 安装和使用Scrapy

Day73 - Scrapy高级应用

  • Spider的用法

  • 中间件的应用:下载中间件 / 蜘蛛中间件

  • Scrapy对接Selenium抓取动态内容

  • Scrapy部署到Docker

Day74 - Scrapy分布式实现

  • 分布式爬虫的原理

  • Scrapy分布式实现

  • 使用Scrapyd实现分布式部署

Day75 - 爬虫项目实战

  • 爬取招聘网站数据

  • 爬取房地产行业数据

  • 爬取二手车交易平台数据

Day76~90 - 数据处理和机器学习

Day76 - 机器学习基础
Day77 - Pandas的应用
Day78 - NumPy和SciPy的应用
Day79 - Matplotlib和数据可视化
Day80 - k最近邻(KNN)分类
Day81 - 决策树
Day82 - 贝叶斯分类
Day83 - 支持向量机(SVM)
Day84 - K-均值聚类
Day85 - 回归分析
Day86 - 大数据分析入门
Day87 - 大数据分析进阶
Day88 - Tensorflow入门
Day89 - Tensorflow实战
Day90 - 推荐系统

Day91~100 - 团队项目开发

第91天:团队项目开发准备

  1. 软件过程模型
  • 经典过程模型(瀑布模型)

    • 可行性分析(研究做还是不做),输出《可行性分析报告》。

    • 需求分析(研究做什么),输出《需求规格说明书》和产品界面原型图。

    • 概要设计和详细设计,输出概念模型图、物理模型图、类图、时序图等。

    • 编码 / 测试。

    • 上线 / 维护。

    • 敏捷开发(Scrum)- 产品所有者、Scrum Master、研发人员 - Sprint

      • 产品的Backlog(用户故事、产品原型)。

      • 计划会议(评估和预算)。

      • 日常开发(站立会议、番茄工作法、结对编程、测试先行、代码重构……)。

      • 修复bug(问题描述、重现步骤、测试人员、被指派人)。

      • 评审会议(Showcase)。

      • 回顾会议(当前周期做得好和不好的地方)。

补充:敏捷软件开发宣言

  • 个体和互动 高于 流程和工具

    • 工作的软件 高于 详尽的文档

    • 客户合作 高于 合同谈判

    • 响应变化 高于 遵循计划

另外,进步最大的阶段,还是学校安排做项目实训的时候,同学们几人一组,组成开发团队,然后分析项目,划分任务,根据平时所学,进行实战。会给大家提前进入职场的感觉,当然过程中会遇到大大小小的问题,同学们一起商量,互相帮助,最后项目成型以后,真的是觉得很有成就感,进步也是最快的。

在整个学习过程当中,我是没有碰到什么瓶颈的,因为我的学习习惯就是不去积压问题,发现不清楚的点,第一时间去解决,所以学起来没有多困难。通过这半年的学习,除了专业技能的明显提升以外,家人都说我比之前更懂事了,生活也变得更规律,对时间和知识的管理更加的完善,对于我个人来说,的确变化很大。

面试真题

因为自己大厂和创业公司都会去面,给我的感觉是,大厂的考察深度会更深一点,比如问你怎么用python定位一些内存满、CPU满的问题,怎么做mysql性能优化等等。而小公司问的更多是一些基础问题,以及看你之前经验的一个匹配度。

我这里从我亲身的面试经历,精选出了30道面试常考题,涉及到了python面试的方方面面,大家可以自行测试。

python基础

  1. python是什么样的语言,和其他语言的区别。

  2. python中的线程和进程,以及使用场景,你知道协程吗?

  3. GIL是什么,为什么会有GIL,去掉会怎样,有了GIL为什么还要给程序加锁?

  4. 迭代器、可迭代对象、生成器分别是什么?生成器的作用和使用场景?

  5. python中的装饰器是什么?如何实现?使用场景?

  6. python中的元类是什么?

  7. python中的可变对象和不可变对象之间的区别。

  8. python的魔术方法你知道哪些,new,init,call的区别是什么

  9. django的中间件是什么

  10. celery的原理,如何配置worker的权重

项目

  1. 如何定位内存过高或CPU过高的问题

  2. 画一下你的项目的结构

  3. 项目中你遇到的最大的困难是什么,是如何解决的?

  4. 项目中你最有成就感的地方是什么?

  5. 你业余是怎么学习编程的?看哪些书?有自己做过什么项目?

web

  1. HTTP/GET/POST/PUT/PATCH之间的区别

  2. 状态码的含义以及出现场景,301,302,404,500,502,504等

  3. cookie和session的区别和联系

  4. 从url请求到返回,中间经历了什么

  5. HTTP和HTTPS的区别,HTTPS如何进行加密的

数据库

  1. mysql的索引是什么,如何建立索引,B+树的结构

  2. mysql中的事务是什么,隔离等级是什么

  3. 如何优化sql语句

  4. mysql的性能优化等

操作系统

  1. 堆和栈的区别

  2. 什么是io多路复用

  3. nginx的配置

算法

  1. 找到整数列表的最大k个数,时间复杂度

  2. 输入一维数组array和n,找出和值为n的任意两个元素

  3. 常见的排序算法,时间复杂度分析

  4. 生成一个旋转矩阵
    虽然大厂的面试都挂了,但最终拿到了深信服的offer。选择了这家公司入职。

学习经验总结

(一)调整好心态

心态是一个人能否成功的关键,如果不调整好自己的心态,是很难静下心来学习的,尤其是现在这么浮躁的社会,大部分的程序员的现状就是三点一线,感觉很累,一些大龄的程序员更多的会感到焦虑,而且随着年龄的增长,这种焦虑感会越来越强烈,那么唯一的解决办法就是调整好自己的心态,要做到自信、年轻、勤奋。这样的调整,一方面对自己学习有帮助,另一方面让自己应对面试更从容,更顺利。

(二)时间挤一挤,制定好计划

一旦下定决心要提升自己,那么再忙的情况下也要每天挤一挤时间,切记不可“两天打渔三天晒网”。另外,制定好学习计划也是很有必要的,有逻辑有条理的复习,先查漏补缺,然后再系统复习,这样才能够做到事半功倍,效果才会立竿见影。

(三)不断学习技术知识,更新自己的知识储备

对于一名程序员来说,技术知识方面是非常重要的,可以说是重中之重。**要面试大厂,自己的知识储备一定要非常丰富,若缺胳膊少腿,别说在实际工作当中,光是面试这一关就过不了。**对于技术方面,首先基础知识一定要扎实,包括自己方向的语言基础、计算机基础、算法以及编程等等。

结合自身的一个学习经历,总结了一套非常系统的复习包,包括思维脑图、linux基础、python基础知识、面向对象、项目实战、常见面试算法题汇总等等。如果你有需要,我也可以分享给你!
在这里插入图片描述

Linux基础
image
Python基础
image
面向对象
image
项目飞机大战
image


面试也没有其他的诀窍,只看你对这些知识点准备的充分程度。

接下来附上相关的我搜集整理的24套腾讯、小米、阿里、中国移动2019-2021面试真题解析,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

Python面试宝典

经验总结

这是我在工作、面试中学习并总结到的一些知识点, 都是一些比较典型的、常被问到的问题。如果你平时没有注意去总结的话,那么当你面试被问到的时候可能会是一脸懵圈,就算这个问题你知道怎么回事,但是你平时没有认真总结, 你也可能会出现逻辑混乱的情况,从而错失工作机会。

有些知识点不经常使用就会忘记,但是面试还会问,对此,我也是深受其害,所以我决定将这些遇见的问题整理下来,分享出去,帮助更多的人,我们共同进步。 所谓“温故而知新”,没事的时候多翻看一下这些知识,没准就会有新的收获。你没时间整理的东西,我都帮你写好了。有需要的小伙伴扫描下方二维码即可免费获取!
在这里插入图片描述

天线学习笔记——串馈网络设计 工程中通常更倾向于使用50Ω、70.7Ω、100Ω的固定阻抗的带宽,实际中可以分别使用固定阻抗的带宽和计算得到的带宽进行仿真,观察二者的性能,取性能更优者即可。本系列是一个记录天线设计的笔记,分享出来也希望能够帮助到大家,后续本系列文章还会不定期更新,如有需要可关注,任何问题均可在评论区或私信提出,看到必回。如果对大家有帮助可进行打赏哦~ 阅读详情

相关推荐

群晖NAS变身私有Git服务器:DS218+部署与TortoiseGit客户端实战指南

本文详细介绍了如何将群晖NAS(如DS218+)变身为私有Git服务器,并配置TortoiseGit客户端实现高效代码管理。通过硬件检查、系统更新、Git Server套件安装及权限配置等步骤,帮助开发者在局域网内搭建安全、高速的代码托管环境,特别适合小团队协作。

weixin_29252171的博客 223

年轻人不相信眼泪,但相信副业!!

敢问当代年轻人谁没动过搞副业的念头呢?的横空出世,更是让担心饭碗不保的年轻人把。每年轻人中,就有调查显示,的年轻人都有过也有的年轻人,尽管没做过副业,却有着。没想到,看起来勤恳上班的打工人,几乎全都打过的小算盘。搞副业最狠的城市,北上广挤不进前三年轻人的达到成为城市副业榜的。至于的年轻人,副业能力则不敌新一线,分别位列。副业赚了多少钱:少数赢家的年轻人近年轻人副业月真正。

大模型教程的博客 157

Python+AI能源管理实战:从电力负荷预测到智能调度的全流程开发

本系统展示了Python在能源管理领域的强大能力,通过AI技术实现了从预测到优化的智能决策闭环。随着碳中和目标的推进,智能能源系统将成为新型电力系统的核心大脑。📌 专业建议:系统部署需考虑网络安全防护,关键控制指令应设置多重验证机制!关注我的优快云账号获取能源系统安全最佳实践~下期预告:我们将探索Python在智慧医疗中的应用,开发基于多模态数据的智能诊断辅助系统。想提前获取代码?评论区留言"智慧医疗"获取GitHub源码链接!

资深全栈架构师,乐于在 优快云 分享技术见解,与大家携手共进,共攀技术巅峰! 625

小米面试编程题Python面试题大全(三,作为程序员一定不要仅仅追求物质

WSGI:web服务器网关接口,是一套协议。用于接收用户请求并将请求进行初次封装,然后将请求交给web框架。实现wsgi协议的模块:wsgiref,本质上就是编写一socket服务端,用于接收用户请求(django)werkzeug,本质上就是编写一个socket服务端,用于接收用户请求(flask)uwsgi:与WSGI一样是一种通信协议,它是uWSGI服务器的独占协议,用于定义传输信息的类型。uWSGI:是一个web服务器,实现了WSGI的协议,uWSGI协议,http协议。

2401_83974087的博客 3156

Cadence仿真实战:从零构建高精度带隙基准电压源

本文是一份详细的Cadence仿真实战指南,指导读者从零开始构建高精度带隙基准电压源。文章首先解释了带隙基准电压源稳定输出电压的原理,然后逐步演示了在Cadence Virtuoso环境中如何搭建测试电路、测量关键温度系数、计算并搭建核心电路,并通过参数扫描和迭代调优来驯服温度漂移,最终实现低漂移的基准电压输出。

weixin_29207533的博客 242

银河麒麟桌面操作系统V10(SP1)ssh服务安装与配置

在国产化的大背景下,各种国产操作系统逐步进入运维人员的视野,ssh作为linux远程连接工具,是运维人员必需的工具之一。本文主要介绍在银河麒麟桌面操作系统V10(SP1)上安装和配置ssh服务。

zhengshaolin128的博客 7802

LeetCode 1278. 分割回文串 III

截止到目前我已经写了 600多道算法题,其中部分已经整理成了pdf文档,目前总共有1000多页(并且还会不断的增加),大家可以免费下载 下载链接:https://pan.baidu.com/s/1hjwK0ZeRxYGB8lIkbKuQgQ 提取码:6666 371,背包问题系列之-基础背包问题 //字符串的子串[left,right]变成回文串所需要修改的字符数 private int change(String s, int left, int right) { int cou.

数据结构和算法 858

【点云语义分割】Ubuntu20.04下RangeNet++环境配置与实战指南

本文详细介绍了在Ubuntu20.04系统下配置和运行RangeNet++点云语义分割模型的完整实战指南。内容涵盖从Cuda、cudnn到TensorRT的深度学习环境搭建,RangeNet++源码编译的详细步骤与常见问题解决,以及如何运行首个分割Demo并可视化结果。最后,还探讨了处理自定义点云数据格式和进行性能调优的进阶技巧,旨在帮助开发者和研究者快速部署并应用这一先进的点云语义分割技术。

rnn9storyteller的博客 516

小米nlp面试学习 Python 的 5 大理由,干货分享

🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。🍅 知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

2401_83974064的博客 1782

YOLOv11【第六章:模型压缩与极致优化篇·第4节】Lamp 剪枝算法:无需超参的自动化剪枝策略!

🏆 本文收录于专栏 《YOLOv11实战:从入门到深度优化》。本专栏围绕 YOLOv11 的改进、训练、部署与工程优化 展开,系统梳理并复现当前主流的 YOLOv11 实战案例与优化方案,内容目前已覆盖 分类、检测、分割、追踪、关键点、OBB 检测 等多个方向。

**My Coding Family** 1210

180.在 Vue3 中使用 OpenLayers 实现多个多边形的绘制、编辑、删除与清空

【摘要】本文介绍如何在Vue3+TypeScript环境下使用OpenLayers实现多边形地图交互功能。通过Composition API封装核心逻辑,实现了多边形绘制、编辑、删除及清空等操作。关键技术包括:使用VectorLayer管理图形数据,Draw/Modify/Select交互控制,以及通过ref()管理交互状态。文中提供了完整代码示例,并解决了交互对象叠加问题,为开发GIS应用提供了基础模块。该方案支持扩展为数据库存储、后端交互等高级功能。

小彭的博客 769

大数据学长面试-------小米面试题

大数据学长面试-------小米面试题

m0_46914845的博客 1623

HMC7044调试指南与FPGA开发

最后,我们介绍了在FPGA开发中使用HMC7044的几个常见应用场景,包括时钟分配、时钟同步、高精度时钟生成和时钟域交叉。根据您的应用需求,您可以选择不同的时钟分配方案,例如使用PLL生成特定频率的时钟信号,或者通过分频器生成较低频率的时钟信号。HMC7044可以提供精确的时钟同步功能,确保各个FPGA板之间的时钟信号保持一致,从而实现可靠的数据传输和协同操作。HMC7044可以实现时钟域之间的交叉,通过生成和分配不同频率的时钟信号,使得不同时钟域的模块能够协同工作。FPGA开发中的HMC7044应用。

CqpFsharp的博客 3614

Python基础------小米、华为简单的笔试题

小米 示例: 输入 ‘hello xiao mi’ 输出 ‘mi xiao hello’ s = 'hello xiao mi' # 法一: # 利用字符串特性 li = s.split(' ') print(' '.join(li[::-1])) >>>mi xiao hello # 法二: # 元组可以赋值给多个变量 s = tuple(s.split(' ')) a,...

qq_35197351的博客 512

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

小米的面试过程及面试题

小米的面试过程及面试题 1.自我介绍 这个不用说了,自己介绍一下自己。 2.数据库MySql和SQLServer以及Oracle的区别? 他是看了我写了一篇这样的博客才问的,可惜我都忘了自己写了啥!吃亏了,博客太久了,都忘记看了。 ----1.Oracle:最贵,功能最多,安装最不方便,Oracle环境里的其他...

stay hungry ! stay foolish! 1万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

小米笔试题「小米大礼包」Python代码

本文首发于我的个人博客:Suixin’s Blog 前几天一位朋友问我一道小米的笔试编程题,一看题目,这么简单?直接遍历list再用if判断不就行了。事实证明我还是too naive,写了几句便写不下去了……WTF…… 话不多说,上题。 事实上,题目的本质为判断一个集合是否有子集之和等于一个固定的数字。可将问题分为两个子问题: 包含最后一个数字,循环其余N-1个数字判断是否等于M-set...

KEEP CODING 1052

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

小米面试总结(附答案)

1.自我介绍,包括自己做的项目、技术栈、遇到的问题以及怎么解决的。 与前文类似,略

二营长 8299

小米Python后端面试题

电话面 时长:30m 说一下对浏览器缓存的理解; 说一下MySQL优化; 说一下redis; 说一下从输入url到返回都发生了什么; 域名怎么解析的; 一面 1h 编程实现翻转单链表; MySQL中varchar和char的区别; HTTP协议常用的状态码; 对Redis的了解; GIL; 对加密的了解; 二面 1h,电面面试官,应该是小组或者部门leader; 设计一个类似...

weixin_30507481的博客 425

python(出勤记录,小米笔试题反转)

一:出勤记录: 给定一个字符串来代表一个学生的出勤纪录,这个纪录仅包含以下三个 字符: ‘A’ : Absent 缺勤 ‘L’ : Late迟到 ‘P’: Present,到场 如果一个学生的出勤纪录中不超过一个’A’(缺勤)并且不超过两个连续的’L’(迟到), 那么这个学生会被奖赏。 你需要根据这个学生的出勤纪录判断他是否会被奖赏。 示例 1: 输入: “PPALLP” 输出: True 示例...

试试看吧。 703

一道Python面试题,让我明白了殊途同归,却开始怀疑自己

无意间,看到这么一道Python面试题:以下代码将输出什么? deftestFun(): temp=[lambdax:i*xforiinrange(4)] returntemp foreveryLambdaintestFun(): print(everyLambda(2)) 脑中默默一想,这还用说么,肯定是: 0 2 4...

602

整理的最全 python常见面试题(基本必考)

整理的最全 python常见面试题(基本必考) python2018-05-17 作者大蛇王 1、大数据的文件读取 ① 利用生成器generator ②迭代器进行迭代遍历:for line in file 2、迭代器和生成器的区别 1)迭代器是一个更抽象的概念,任何对象,如果它的类有next方法和iter方法返回自己本身。对于string、list...

weixin_30326741的博客 2311

小米的面试过程及面试题~

本文以一位童鞋的面试经历为例,为大家详细介绍一下小米公司的面试过程和遇到的面试题,供大家参考。1.自我介绍这个不用说了,自己介绍一下自己。2.数据库My Sql和SQL ...

java面试笔试 9676

非科班1年工作经验,拿下今日头条 Python 开发面经分享(经历知乎、360)

作者丨rapospectre https://www.rapospectre.com/blog/2017-backend-interview-share 0.背景 博主本人 2015 年毕业于郫县某 985 大学通信工程系,因为大学期间一直自己创业所以错过了大四秋招春招,毕业后又在北京继续创业一年,但在创业公司一直无法沉淀技术累积,于16年年底萌生进大公司学习的想法,于是从16年年底开始通过社招找工作。虽然大学就开始做研发,但无奈简历只看毕业工作经验,所以本人简历只有一年工作经验。 在此总结一篇文章给各位参

weixin_41817636的博客 1483
上一篇: 自学python?一般人我还是劝你算了吧
下一篇: python入门教程python开发字典数据类型
程序员_大白
博客等级 码龄5年 1万+粉丝 4001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值