Excel中按一定按比例实现随机数将一个数随机分配为三个数?

1、一行代码实现1--100之和

利用sum()函数求和

2、如何在一个函数内部修改全局变量

函数内部global声明 修改全局变量

os:提供了不少与操作系统相关联的函数

sys: 通常用于命令行参数

4、字典如何删除键和合并两个字典

GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行。

多进程中因为每个进程都能被系统分配资源,相当于每个进程有了一个python解释器,所以多进程可以实现多个进程的同时运行,缺点是进程系统资源开销大

6、python实现列表去重的方法

先通过集合去重,在转列表

python2返回列表,python3返回迭代器,节约内存

9、一句话解释什么样的语言能够用装饰器?

函数可以作为参数传递的语言,可以使用装饰器

10、python内建数据类型有哪些

__init__是初始化方法,创建对象后,就立刻被默认调用了,可接收参数,如图

1、__new__至少要有一个参数cls,代表当前类,此参数在实例化时由Python解释器自动识别

2、__new__必须要有返回值,返回实例化出来的实例,这点在自己实现__new__时要特别注意,可以return父类(通过super(当前类名, cls))__new__出来的实例,或者直接是object的__new__出来的实例

4、如果__new__创建的是当前类的实例,会自动调用__init__函数,通过return语句里面调用的__new__函数的第一个参数是cls来保证是当前类实例,如果是其他类的类名,;那么实际创建返回的就是其他类的实例,其实就不会调用当前类的__init__函数,也不会调用其他类的__init__函数。

12、简述with方法打开处理文件帮我我们做了什么?

打开文件在进行读写的时候可能会出现一些异常状况,如果按照常规的plie作用

只要不满足其中任意一个要求,就不符合同源策略,就会出现“跨域”

63、简述多线程、多进程

1、操作系统进行资源分配和调度的基本单位,多个进程之间相互独立

2、稳定性好,如果一个进程崩溃,不影响其他进程,但是进程消耗资源大,开启的进程数量有限制

1、CPU进行资源分配和调度的基本单位,线程是进程的一部分,是比进程更小的能独立运行的基本单位,一个进程下的多个线程可以共享该进程的所有资源

2、如果IO操作密集,则可以多线程运行效率高,缺点是如果一个线程崩溃,都会造成进程的崩溃

IO密集的用多线程,在用户输入,sleep 时候,可以切换到其他线程执行,减少等待的时间

CPU密集的用多进程,因为假如IO操作少,用多线程的话,因为线程共享一个全局解释器锁,当前运行的线程会霸占GIL,其他线程没有GIL,就不能充分利用多核CPU的优势

any():只要迭代器中有一个元素为真就为真

all():迭代器中所有的判断项返回都是真,结果才为真

python中什么元素为假?

答案:(0,空字符串,空列表、空字典、空元组、None, False)

ImportError:无法引入模块或包,基本是路径问题

IndexError:下标索引超出序列边界

KeyError:试图访问你字典里不存在的键

NameError:使用一个还未赋予对象的变量

1、复制不可变数据类型,不管copy还是deepcopy,都是同一个地址当浅复制的值是不可变对象(数值,字符串,元组)时和=“赋值”的情况一样,对象的id值与浅复制原来的值相同。

2、复制的值是可变对象(列表和字典)

浅拷贝copy有两种情况:

第一种情况:复制的 对象中无 复杂 子对象,原来值的改变并不会影响浅复制的值,同时浅复制的值改变也并不会影响原来的值。原来值的id值与浅复制原来的值不同。

第二种情况:复制的对象中有 复杂 子对象 (例如列表中的一个子元素是一个列表), 改变原来的值 中的复杂子对象的值 ,会影响浅复制的值。

深拷贝deepcopy:完全复制独立,包括内层列表和字典

67、列出几种魔法方法并简要介绍用途

__new__:创建对象时候执行的方法,单列模式会用到

__str__:当使用print输出对象的时候,只要自己定义了__str__(self)方法,那么就会打印从在这个方法中return的数据

__del__:删除对象执行的方法

85、python字典和json字符串相互转化方法

前面的<>和后面的<>是对应的,可以用此方法

100、python传参数是传值还是传址?

Python中函数参数是引用传递(注意不是值传递)。对于不可变类型(数值型、字符串、元组),因变量不能修改,所以运算不会影响到变量自身;而对于可变类型(列表字典)来说,函数体运算可能会更改传入的参数变量。

101、求两个列表的交集、差集、并集

精简代码,lambda省去了定义函数,map省去了写for循环过程

104、常见的网络传输协议

105、单引号、双引号、三引号用法

1、单引号和双引号没有什么区别,不过单引号不用按shift,打字稍微快一点。表示字符串的时候,单引号里面可以用双引号,而不用转义字符,反之亦然。

2、但是如果直接用单引号扩住单引号,则需要转义,像这样:

3、三引号可以直接书写多行,通常用于大段,大篇幅的字符串

python垃圾回收主要以引用计数为主,标记-清除和分代清除为辅的机制,其中标记-清除和分代回收主要是为了处理循环引用的难题。

当有1个变量保存了对象的引用时,此对象的引用计数就会加1

当使用del删除变量指向的对象时,如果对象的引用计数不为1,比如3,那么此时只会让这个引用计数减1,即变为2,当再次调用del时,变为1,如果再调用1次del,此时会真的把对象进行删除

1、GET请求是通过URL直接请求数据,数据信息可以在URL中直接看到,比如浏览器访问;而POST请求是放在请求头中的,我们是无法直接看到的;

2、GET提交有数据大小的限制,一般是不超过1024个字节,而这种说法也不完全准确,HTTP协议并没有设定URL字节长度的上限,而是浏览器做了些处理,所以长度依据浏览器的不同有所不同;POST请求在HTTP协议中也没有做说明,一般来说是没有设置限制的,但是实际上浏览器也有默认值。总体来说,少量的数据使用GET,大量的数据使用POST。

3、GET请求因为数据参数是暴露在URL中的,所以安全性比较低,比如密码是不能暴露的,就不能使用GET请求;POST请求中,请求参数信息是放在请求头的,所以安全性较高,可以使用。在实际中,涉及到登录操作的时候,尽量使用HTTPS请求,安全性更好。

应用数据分析库pandas

109、简述多线程、多进程

1、操作系统进行资源分配和调度的基本单位,多个进程之间相互独立

2、稳定性好,如果一个进程崩溃,不影响其他进程,但是进程消耗资源大,开启的进程数量有限制

1、CPU进行资源分配和调度的基本单位,线程是进程的一部分,是比进程更小的能独立运行的基本单位,一个进程下的多个线程可以共享该进程的所有资源

2、如果IO操作密集,则可以多线程运行效率高,缺点是如果一个线程崩溃,都会造成进程的崩溃

IO密集的用多线程,在用户输入,sleep 时候,可以切换到其他线程执行,减少等待的时间

CPU密集的用多进程,因为假如IO操作少,用多线程的话,因为线程共享一个全局解释器锁,当前运行的线程会霸占GIL,其他线程没有GIL,就不能充分利用多核CPU的优势

破案1101起查缴财物6.9亿元!江苏打击整治养老诈骗专项行动战果显著

破案1101起查缴财物6.9亿元!江苏打击整治养老诈骗专项行动战果显著

每个参数可以使区域、单元格引用、数组、常数、公式或另一个函数的结果
2、SUMIF条件求和函数
SUMIF(区域,条件,求和区域)
如:=SUMIF(C2:C10,”女”,E2:E10)将C2:C10区域中单元格为“女”的所对应的E2:E10区域中满足该条件的单元格求和。
4、AVERAGEIF返回某个区域内满足给定条件的所有单元格的平均值(算术平均值)
7、COUNT计算数字个数
8、COUNTIF计算某个区域中满足给定条件的单元格数目
如:=COUNTIF(b2:b10,”男”)计算b2:b10区域中为“男”的单元格数目。
9、COUNTIFS将条件应用于跨多个区域的单元格,并计算符合所有条件的个数
"广州";  同理,criteria_range2为第二个条件区域,criteria2为第二个条件,依次类推。最终结果为多个区域中满足所有条件的单元格个数。
其结果与dcounta函数一致

countifs(条件所在区域1,条件1,条件所在区域2,条件2,……)
sumifs(际求和区域,条件所在区域1,条件1,条件所在区域2,条件2,……)
averageifs(实际求平均值区域,条件所在区域1,条件1,条件所在区域2,条件2,……)

10、dcounta对满足指定条件的数据库中记录字段(列)的非空单元格进行记数。
Database是构成列表或数据库的单元格区域。数据库是相关数据的列表。Field或是用双引号括住的列标签,或是表示该列在列表中位置的数字。Criteria是包含指定条件的单元格区域。区域包括列标签及列标签下满足某个条件的单元格。

如下表,统计“性别为男的人数”
若统计平均分在80以上的男同学人数:(第二个参数,列太多,则将其空着不填)

“文本分列向导-3步骤之2”对话框中单击“下一步”, “文本分列向导-3步骤之2”对话框中,在“列数据格式”栏中选中“日期”项,并在右边的下拉列表中选择“YMD”项,单击“完成”。
注:数据分列前,应先将公式计算结果进行“选择性粘贴”。
IF(MOD(MID(身份证单元格,17,1),2)=0,“女”,“男”),如果除以2所得到的余数是0,则结果显示为“女”,否则显示为“男”。
注:男,女两侧的双引号要用英文标点符号状态。
通过身份证号的年计算年龄:
通过出生日期计算年龄:
1步:先取身份证号中的出生日期,MID(身份证单元格,7,8),然后将其数据>分列,设置为日期格式
39、SUBTOTAL返回列表或数据库中的分类汇总
Function_num 为 1 到 11(包含隐藏值)或 101 到 111(忽略隐藏值)之间的数字,指定使用何种函数在列表中进行分类汇总计算。ref1……refn参数为要对其进行分类汇总计算的第1至29个命名区域或引用。必须是对单元格区域的引用。

40、VLOOKUP是一个查找函数,给定一个查找的目标,它就能从指定的查找区域中查找返回想要查找到的值。
语法:VLOOKUP(查找目标,查找范围,返回值的列数,精确OR模糊查找)
例:将表2中的职称调入表一中

40、FREQUENCY这是一个专门用于统计某个区域中数据的频率分布函数。
data_array为一数组或对一组数值的引用,用来计算频率。bins_array为一数组或对数组区域的引用,设定对data_array进行频率计算的分段点。
注:1、先要选中存放结果的单元格区域,再输入函数。

41、TRIMMEAN函数返回数据集的内部平均值,TRIMMEAN函数先从数据集的头部和尾部除去一定百分比的数据点,然后再求平均值。当希望在分析中剔除一部分数据的计算时,可以使用TRIMMEAN函数。
TRIMMEAN函数具有下列参数:
 第一,Array:需要进行整理并求平均值的数组或数值区域。 
 第二,Percent:计算时所要除去的数据点的比例,例如,如果 percent = 0.2,在 20 个数据点的集合中,就要除去4个数据点(20×0.2):即头部除去2个,尾部除去2个。(除去的数量在总数量中所占的百分比,如,6个评委,去掉一个最高分和一个最低分,则Percent参数为2/6)
除掉最高分和最低分,求剩下的平均分:
TRIMMEAN函数实例:评委打分计算最后得分
  实例说明:在跳高技能竞技赛中,10位评委分别为前三名的选手打分,计算出选手的最后得分。详见下图。

  第一步,选中B13单元格,在编辑栏输入公式:=TRIMMEAN(B2:B11,0.2),确定后,即可得到评委为戴品选手的打分,最后得分为9.20。
  第二步,选中B13单元格,向右复制公式,就可以得到评委为其余两位选手的打分,最后得分分别为:8.85和9.05。
42、index(查找函数)返回数组中指定的单元格或单元格数组的数值。

单元格区域/数组 行号 列号
如:Index(B3:D6,4,3)是指返回B3:D6数据区域中第4行第3列单元格的内容。
43、MATCH函数返回指定数值在指定数组区域中的位置
lookup_value:需要在数据表(lookup_array)中查找的值。可以为数值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。可以包含通配符、星号 (*) 和问号 (?)。星号可以匹配任何字符序列;问号可以匹配单个字符。
lookup_array:可能包含有所要查找数值的连续的单元格区域,区域必须是某一行或某一列,即必须为一维数据,引用的查找区域是一维数组。
match(0.5,A1:A9,1)=#N/A返回小于或等于0.5的最大数值在A1:A9中的位置。因为数组中所有值都大于查找值,所以返回错误。
match(10,A1:A9,1)=9返回小于或等于10的最大数值在A1:A9中的位置。因为数组中所有值都小于查找值,所以返回最后一个值的位置。
match_type = 0 时,为精确匹配。返回数组中第一个相同的值的位置,当数组中没有lookup_value时,返回错误。
44、ISNUMBER检测一个数据是否为数值,是,则返回“TRUE”,不是,则返回“FALSE”。
经常与if函数套用,判断真假

我要回帖

更多关于 表格筛选过后怎么统计筛选的人数 的文章

 

随机推荐