differ

[Python]小甲鱼Python视频第034课(with else)课后题及参考解答

非 Y 不嫁゛ 提交于 2021-02-18 12:29:47
# -*- coding: utf-8 -*- """ Created on Sun Feb 24 13:36:33 2019 @author: fengs """ """ 0. 在 Python 中,else 语句能跟哪些语句进行搭配? if while with except """ """ 1. 请问以下例子中,循环中的 break 语句会跳过 else 语句吗? def showMaxFactor(num): count = num // 2 while count > 1: if num % count == 0: print('%d最大的约数是%d' % (num, count)) break count -= 1 else: print('%d是素数!' % num) num = int(input('请输入一个数:')) showMaxFactor(num) 会跳过 """ """ 2. 请目测以下代码会打印什么内容? try: print('ABC') except: print('DEF') else: print('GHI') finally: print('JKL') ABC GHI JKL """ """ 3. 使用什么语句可以使你不比再担心文件打开后却忘了关闭的尴尬? with open as f: .... #f.close(); #不要写

函数(定义、参数、return、变量、作用域、预解析)

孤者浪人 提交于 2021-02-11 13:26:11
一、函数定义 1.方式一 function 函数名(参数){ 函数体 }——————函数声明的方法 function fn(a){ console.log(a); }; 2.方式二 var 变量名 = function(参数){ 函数体 }——————函数表达式 var fn= function (a){ console.log(a); }; 3.注意的问题: 函数必须先定义,再调用 // 先声明 function fn(a){ console.log(a); } // 调用函数 fn(1); 函数最好一个功能一个函数 函数推荐使用驼峰式命名 function getMax(a,b){ if (a< b){ console.log(b); } else { console.log(a); } }; getMax( 2,3); // 3 有名字的函数称为命名函数;反之,没有名字的函数称为匿名函数 方式二定义的函数称为函数表达式,把一个函数给一个变量,调用函数用 变量名(参数) 函数表达式声明的函数后面要加分号 区别:函数声明的方法重名会覆盖,函数表达式相当于变量的再赋值 function f1(){ console.log( "我是第一个函数" ); }; function f1(){ console.log( "我是第二个函数,我覆盖了第一个函数" ) }; f1(); //

Git之rebase、merge和cherry pick的区别详解—面试常问

天涯浪子 提交于 2021-02-02 13:07:24
git flow 镇楼 转载请注明出处: https://www.cnblogs.com/NaughtyCat/p/differ-with-rebase-merge-cherry-pick.html merge 这个简单,初学者常用。比如主分支是Dev,最新版本是01。然后小明基于此,搞了个feature 分支A,业务:打酱油 然后在上面多次提交,完成功能迭代开发,如A1 ---> A2 ---> A3(作者【 CoderBaby 】) Dev 分支 merge A branch,最后Dev 分支的历史log就变成: Dev01 ---> A1 ---> A2 ---> A3 附图如下: rebase 中文翻译过来,变基。这个搞完,提交历史会比较清爽,哈哈 a) merge会有两条提交历史记录线路,有个菱形图(C2, C3, C4, C5间关系) b)rebase只有一条提交历史记录线路图,无菱形图(C2, C3, C4'),并且少了一个提交对不,C4好像不存在 附图如下:                          after merge                          after rebase 官网说明请移步 : https://git-scm.com/book/en/v2/Git-Branching-Rebasing rebase、merge的区别参见

二叉搜索树 | 将有序数组转换为二叉搜索树

白昼怎懂夜的黑 提交于 2021-01-27 03:28:50
Given an array where elements are sorted in ascending order, convert it to a height balanced BST. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1. Example: Given the sorted array: [-10,-3,0,5,9], One possible answer is: [0,-3,9,-10,null,5], which represents the following height balanced BST: 0 / \ -3 9 / / -10 5 思路: 其实就是构建一个二叉搜索树,对于搜索树,有三个特点: 1、根节点左边的都比根节点小。 2、根节点右边的都比根节点大。 3、左孩子和右孩子都是搜索树。 因此通过递归构建左孩子,右孩子。 class Solution(object): def sortedArrayToBST(self, nums): """ :type nums: List

2021年第三期培训(新手必须掌握的命令)

十年热恋 提交于 2021-01-16 13:22:05
2.3 常用系统工作命令 1.echo命令 echo命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | $变量]”。 例如,把指定字符串“Linuxprobe.com”输出到终端屏幕的命令为: [root@linuxprobe ~]# echo Linuxprobe.Com 该命令会在终端屏幕上显示如下信息: Linuxprobe.Com 2.date命令 date命令用于显示及设置系统的时间或日期,格式为“date [选项] [+指定的格式]”。 [root@linuxprobe ~]# date Mon Aug 24 16:11:23 CST 2017 按照“年-月-日 小时:分钟:秒”的格式查看当前系统时间的date命令如下所示: [root@linuxprobe ~]# date "+%Y-%m-%d %H:%M:%S" 2017-08-24 16:29:12 3.reboot命令 reboot命令用于重启系统,其格式为reboot。 [root@linuxprobe ~]# reboot 4.poweroff命令 poweroff命令用于关闭系统,其格式为poweroff。 [root@linuxprobe ~]# poweroff 5.wget命令 wget命令用于在终端中下载网络文件,格式为“wget [参数] 下载地址”。 6.ps命令

理解HTTP之keep-alive

可紊 提交于 2020-12-31 08:53:17
理解HTTP之keep-alive 在前面一篇文章中讲了 TCP的keepalive ,这篇文章再讲讲HTTP层面keep-alive。两种keepalive在拼写上面就是不一样的,只是发音一样,于是乎大家就都迷茫了。HTTP层面的keep-alive是我们接触比较多的,也是大家平时口头上的"keepalive"。下面我们就来谈谈HTTP的keep-alive 短连接&长连接&并行连接 再说keep-alive之前,先说说HTTP的短连接&长连接。 短连接 所谓短连接,就是每次请求一个资源就建立连接,请求完成后连接立马关闭。每次请求都经过“创建tcp连接->请求资源->响应资源->释放连接”这样的过程 长连接 所谓长连接(persistent connection),就是只建立一次连接,多次资源请求都复用该连接,完成后关闭。要请求一个页面上的十张图,只需要建立一次tcp连接,然后依次请求十张图,等待资源响应,释放连接。 并行连接 所谓并行连接(multiple connections),其实就是并发的短连接。 keep-alive 具体client和server要从短连接到长连接最简单演变需要做如下改进: client发出的HTTP请求头需要增加Connection:keep-alive字段 Web-Server端要能识别Connection:keep-alive字段

LeetCode 108. Convert Sorted Array to Binary Search Tree (将有序数组转换成BST)

点点圈 提交于 2020-12-16 05:34:00
108. Convert Sorted Array to Binary Search Tree Given an array where elements are sorted in ascending order, convert it to a height balanced BST. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1. Example: Given the sorted array: [-10,-3,0,5,9], One possible answer is: [0,-3,9,-10,null,5], which represents the following height balanced BST: 0 / \ -3 9 / / -10 5 /* * * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) :

LeetCode

时光毁灭记忆、已成空白 提交于 2020-12-16 01:09:38
Topic Tree Depth-first Search Description https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/ Given an array where elements are sorted in ascending order, convert it to a height balanced BST. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1. Example : Given the sorted array: [-10,-3,0,5,9], One possible answer is: [0,-3,9,-10,null,5], which represents the following height balanced BST: 0 / \ -3 9 / / -10 5 Analysis 基本解题思想就是获取数组中位数,再以中位数的下标为界,分成两子数组,递归获取中位数,从而构建一棵BST

POJ 3264.Balanced Lineup-RMQ(ST)详解

被刻印的时光 ゝ 提交于 2020-12-12 22:42:41
先写一道水题的博客,为后面要写的博客做一个铺垫。 ヾ(◍°∇°◍)ノ゙ RMQ(Range Minimum/Maximum Query),即区间最值查询,对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j之间的最小/大值。 时间复杂度: 1、朴素(即搜索),O(n)-O(qn) online。 2、 线段树 ,O(n)-O(qlogn) online。 3、ST(实质是 动态规划 ),O(nlogn)-O(q) online。 ST算法(Sparse Table),以求最大值为例,设d[i,j]表示[i,i+2^j-1]这个区间内的最大值,那么在询问到[a,b]区间的最大值时答案就是max(d[a,k], d[b-2^k+1,k]), 其中k是满足2^k<=b-a+1(即长度)的最大的k,即k=[ln(b-a+1)/ln(2)]。d的求法可以用 动态规划 ,d[i, j]=max(d[i, j-1],d[i+2^(j-1), j-1])。 传送门: 一篇写的容易理解的博客 2/21/2018 5:12:00 PM -------------------------------------------------------分割线-------------------------------------------------------

006. 文本处理工具 P2 (常见文本处理工具)

北城以北 提交于 2020-11-13 09:53:34
1 常见文本处理工具 cat -E:显示行结束符$ -A:显示所有控制符 -n:对显示出的每一行进行编号 -b:非空行编号 -s:压缩连续的空行成一行 [root@localhost ~]# cat a -A $ localhost.localdomain$ a b c$ a ^I^I d$ [root@localhost ~]# cat a -E $ localhost.localdomain$ a b c$ a d$ [root@localhost ~]# cat a -n 1 2 localhost.localdomain 3 a b c 4 a d [root@localhost ~]# cat a -b 1 localhost.localdomain 2 a b c 3 a d 4 c ### nl 相当于cat -b [root@localhost ~]# nl b 1 a 2 b 3 c 4 b 5 e 6 f ### tac 逆向显示文本内容 [root@localhost ~]# tac b f e b c b a ### rev 将同一行的内容逆向显示 [root@localhost ~]# echo {1..10} | rev 01 9 8 7 6 5 4 3 2 1 ### hexdump 查看非文本文件内容 [root@localhost ~]#