1、计算 N!
def mian(n):
for i in range(1,n):
n*=i
return n
2.计算并返回任意多个整数的和(不能用for循环)·······
def mian(*x):
return sum(x)
3.返回item在lst中第一次的位置
def main(lst,item):
i=0
for num in lst:
if num==item:
return i
i+=1
return '不存在'
4.返回列表包含大于或等于所有整数平均值的整数
def main(lst):
avg=sum(lst)/len(lst)
lst2=[]
for i in lst:
if i>=avg:
lst2.append(i)
return lst2
5.返回一个元组,第一个元素为p整除q的商,第二个元素为p对q的余数
def main(p,q):
return (int(p/q),p-q*int(p/q))
6.返回正整数num各位数字之和
def main(num):
s=str(num)
ls=list(map(int,s))
return sum(ls)
7.列表去重
def main(lst):
return list({}.fromkeys(lst).keys())
8.列表字符串转化为小写
def main(lst):
for in range(len(lst)):
lst[i]=lst[i].lower()
return lst
9.列表字符串排序
def main(lst):
lst.sort(key=lambda ele:len(ele),reverse=True)
return lst
10.计算20,30,40的阶乘
from functools import reduce
from operator import mul
def main(n):
return reduce(mul,range(1,n+1))
print(main(20))
print(main(30))
print(main(40))
11.向量的内积
def main(vector1,vector2):
return sum(list(map(lambda num1,num2:num1*num2,vector1,vector2)))
12.最长字符串
def main(lst):
return max(lst,key=len)
13.去除列表中的0
def main(lst):
return list(filter(lambda x:x!=0,lst))
14.查找列表绝对值最大
def main(lst):
Max=0
for i in range(len(lst)):
if abs(lst[Max]<abs(lst[i])):
Max=i
return lst[Max]
15.删除偶数
def main(lst):
return [i for i in lst if i%2]
16.字符串填充
def main(s):
return s.center(20."#")
17.字符串数字汉字转换
def main(s):
nums=['零','一','二','三','四','五','六','七','八','九']
s2=''
for i in range(len(s)):
if s[i].isdigit():
num=int(s[i])
s2+=nums[num]
continue
s2+=s[i]
return s2
18.表中重复元素
def main(lst):
# 数据很水头两行可加可不加
if len(lst)==1:
return 1
set_lst=set(lst)
if len(set_lst)==len(lst):
return 1
elif len(set_lst)==1:
return 0
else:
return 2
19.回文
import re
def main(s):
s=re.sub('^A-Za-z','',s)
return s[::-1]==s
20.接受任意字符串s,要求返回最多的前三个字符
from collections import Counter
def main(s):
c=Counter(s)
c=Counter(dict(counts.most_common(3)))
return list(counts)
21.最大素数
def isPrime(num):
for i in range(2,n-1):
if num%i==0:
return False
return True
def main(n):
i=n
while i!=0
if isPrime(i):
return i
i-=1
return i
22.组合数C(n,i)
def main(n,i):
nums1,num2=1,1
i=min(i,n-i)
for x in range(1,i+1):
nums1 *=x
nums2 *=x+n-i
return nums2//nums1
23.用map()计算a+aa+aaa
def main(n,a):
l=list(range(1,n+1))
return sum(list(map(lambda x:int(str(a)*x),l)))
24.读取文件用逗号分隔开的整数*10
def main():
f=open('data24.txt')
s=f.read().split(',')
return list(map(lambda x:int(x)*10,s))
print(main())
25.集合的并集
def main(lst):
l=set()
for i in lst:
l=l|i
return l
26.计算sin()
from math import sin radians
def main(lst):
return list(map(lambda x:sin(radians(x)),lst))
27.时间间隔
from datetime import date
def main(year1,month1,day1,year2,month2,day2)
return abs((date(year1,month1,day1)-date(year2,month2,day2)).days)
28.闰年
def main(year):
if year%400==0 or (year%4==0 and year%100 !=0):
return 'yes'
return 'no'
29.max(func(x))
def main(func,lst):
return max(list(map(func,lst)))
30.截尾平均数,保留一位小数
def main(tup):
return round((sum(tup)-max(tup)-min(tup))/(len(tup)-2),1)
31.斐波那契
def main(n):
a,b=1,1
if(n==1):
return 1
sum=1
for i in range(n-1):
t=a
a=b
b+=t
sum+=a
return sum
32.字符串*n+传参默认值设置
def main(s,n=3):
return s*n
33.循环左移
def main(s, n):
return s[n:]+s[0:n]
34.模拟整数类型操作
class Number:
def __init__(self, value):
self.value = value
def __add__(self, another):
return self.value + another.value
def __str__(self):
return str(self.value)
def main(x, y):
return x+y
35.模拟整数/实数部分操作
class Number:
def __init__(self, value):
if type(value) != int and type(value) != float:
self.__value = 0
else:
self.__value = value
def __set(self, value):
if type(value) == int or type(value) == float:
self.__value = value
def __get(self):
return self.__value
value = property(__get, __set)
def main(x, y):
obj = Number(x)
obj.value = y
return (type(obj), obj.value)
36.并联
def main(*para):
sum=0
for i in para:
sum+=1/i
return round(1/sum,1)
37.黑洞数
def main(n):
n=str(n)
max=""
min=""
for it in sorted(n,reverse = True):
max +=str(it)
for it in sorted(n):
min+=str(it)
if int (max) -int(min)==int(n):
return True
else:
return False
38.水仙花数
def main(n):
n_str=str(n)
sum=0
l=len(n_str)
for i in n_str:
sum+=int(i)**l
if sum==n:
return True
else:
return False
39.列表绝对值之和
def main(lst):
return sum(list(map(abs,lst)))
40.返回不同编码的字符串,如果不是字符串返回‘参数必须是字符串’
def main(s):
try:
return(s.encode("UTF-8",s.encode("GBK"))
except:
return '参数必须是字符串'
41.字符串包含
def main(s1,s2,*s3)
if s2 not in s1:
return False
for s in s3:
if s not in s1:
return False
return True
42.计算圆的面积
from math import pi as PI
def main(r):
if isinstance(r,(int)) and r>0:
return round(PI*r*r,2)
else:
return '参数必须是大于0的整数或实数'
43.正整数周围相接能够组成的最大的数
from itertools import permutations
def main(lst):
max=0
lst=list(map(str,lst))
for i in permutations(lst):
a=''.join(i)
re=eval(a)
if re>max:
max=re
return max
44.n*n棋盘放米
def main(n):
return 2**(n*n)-1
45.返回变成小写之后最大的字符串
def main(lst):
try:
L=[x.lower() for x in lst if isinstance(x,str)]
return lst[L.index(max(L))]
except:
return '数据格式不正确'
46.众数
def main(lst):
list_set=set(lst)
frequency_dict={}
for i in list_set:
frequency_dict[i]=lst.count(i)
max_frequency=max(frequency_dict.values())
for key,value in frequency_dict.items():
if value==max_frequency:
m=key
return m
47.余弦定理求C
from math import cos,radians
def main(a,b,theta):
try:
if a<=0 or b<=0:
return '数据不对'
return round((a*a+b*b-2*a*b*cos(radians(theta)))**0.5,1)
except:
return '数据不对'
48.列表差
def main(vector1,vector2):
try:
if len(vector1)!=len(vector2):
return'数据不对'
return sum(list(map(lambda x,y:abs(x-y),vector1,vector2)))
except:
return '数据不对'
49.成绩字母转换
def main(score):
try:
if score>=90 and score<=100:
return 'A'
elif score>=80 and score <90:
return 'B'
elif score>=70 and score <80:
return 'C'
elif score>=60 and score <70:
return 'D'
elif score>=0 and score <60:
return 'F'
else:
return '数据不对'
except:
return '数据不对'
50.小于n的最大斐波那契数
def main(n):
a,b=1,1
while b<n:
t=a
a=b
b=t+b
return a
51.鸡兔同笼
def main(n,m):
y=(m-2*n)/2
x=(4*n-m)/2
if y-int(y) or x-int(x) or x<0 or y<0:
return '数据不对'
return int(x),int(y)
52.列表中最大值的位置
def main(lst):
m= max(lst)
l=[]
for i in range(len(lst)):
if lst[i]==m:
l.append(i)
return l
53.文件后+_new
from os.path import splitext
import os
def main(s):
name,bac=os.path.splitext(s)
name+='_new'
return name+bac
54.列表元素相加等于10
from itertools import combinations
def main(lst):
l=[]
for i in combinations(lst,3):
if i[0]+i[1]+i[2]==10:
l.append(i)
return l
55.返回只出现一次的字符
def main(s):
s1=''
for i in s:
if s.count(i)==1:
s1+=i
return s1
56.列表数据重复
def main(lst):
set_lst=set(lst)
if len(set_lst)==len(lst):
return 1
elif len(set_lst)==1:
return 0
else:
return 2
57.去除多余空格
import re
def main(s):
s=s.strip()
s=re.sub(' +',' ',s)
return s
58返回最长的数字字符串
from re import findall
import re
def main(s):
try:
nums=re.findall(r'\d+',s)
nums.sort(key=lambda num:len(num),reverse=True)
return nums[0]
except:
return '没有数字'
59.列表最大公约数
from math import gcd
from funcrools import reduce
def main(lst):
return reduce(gcd,lst)
60.查找docx文件关键字
from docx import Document
def main():
dt=Document('data60.docx')
for i in range(len(dt.paragraphs)):
if '山东' and '烟台' in dt.paragraphs[i].text:
return dt.paragraphs[i].text
print(main())
61.docx整数相加
from docx import Document
def main():
dt=Document('data60.docx')
sum=0
table=dt.tables
table=table[0]
for i in range(0,len(table.rows)):
for j in range(0,len(table.row_cells(i)):
sum+=int(table.cell(i,j).text)
return sum
print(main())
62.千分位的逗号
def main(s):
try:
l=len(s)
if l<=3:
return int(s)
i=l-4
while i>=0:
if s[i]!=',':
return '数据错误'
i-=4
s=s.replace(',','')
return int(s)
execpt:
return '数据错误’
63.去除前导0
def main(s):
a=''
s1=''
for i in s:
if str.isdigit(i):
a+=i
else:
s1+=str(int(a))
s1+=i
a=''
return s1+str(int(a))
64.日期补0
def main(s):
s1=''
s1+=s[0:5]
a=''
for i in range(5,len(s)):
if s[i].isdigit():
a+=s[i]
else:
s1+=a.rjust(2,'0')
s1+=s[i]
a=''
return s1+a.rjust(2,'0')
65.插入千分符
def main(num):
s=str(num)
l=len(s)
if l<=3:
return str(num)
i=l%3
s1=''
if i:
s1=s[0:i]
s1+=','
while i<l:
s1+=s[i:i+3]
s1+=','
i+=3
return s1.rstrip(',')
66.整数拆分
def main(num):
try:
num=int(num)
s=str(num)
s1=''
for i in s:
s1+=i
s1+=','
return s1.rstrip(',')
except:
return '数据错误'
67.>=start第num个素数
def main(start,num):
while num>0:
if isPrime(start):
num-=1
start+=1
return start-1
68.丑数
def main(num):
while num % 2 == 0:
num = num / 2
while num % 3 == 0:
num = num / 3
while num % 5 == 0:
num = num / 5
if num == 1:
return True
else:
return False
69.正整数按各位数字相加之和大小排序的列表
def f(num):
s=0
while num:
s+=num%10
num/=10
return s
def main(lst):
lst.sort(key=f)
return lst
70.奇数位,偶数位之和
def main(lst):
odd=sum(lst[::2])
even=sum(lst[1::2])
return (even,odd)
71.判断列表中是否为实数
def main(lst):
try:
l=list(map(lambda x:int(x),lst))
return True
except:
return False
72.i>8&i%2==0
def main(lst):
try:
l=[]
for i in lst:
if isinstance(i,int):
if i>8 and i%2==0:
l.append(i)
else:
return '数据不符合要求'
except:
return '数据不符合要求'
73.字符串比对
def main(s1,s2):
num=0
for i,j in zip(s1,s2):
if i==j:
num+=1
return num
74.字符串拼接
def main(s1,s2):
m=min(len(s1),len(s2))
for i in range(m,0,-1):
if s1[-i:]==s2[:i]:
return s1+s2[i:]
return s1+s2
75.多个数的最大公约数
from math import gcd
from functools import reduce
def main(*integers):
try:
l=len(integers)
if l==0: return '必须提供至少一个整数'
return reduce(gcd,integers)
except:
return '必须都是整数'
76.二进制连续的0
import math
def main(n):
return int(math.log2(n&-n))
77.小猴吃桃
def f(n):
if n==1:
return 1
else:
return f(n-1)*2+2
def main(n):
return f(n)
78.计算颜色()
from operator import itemgetter
from docx import Document
from docx.shared import RGBColor
def main():
word=Document('data78.docx')
colors={}
for p in word.paragraphs:
for r in p.runs:
color=r.font.color.rgb
if color not in (RGBColor(0,0,0),None):
colors[color]=colors.get(color,0)+1
colors=sorted(colors.items(),key=itemgetter(1),reverse=True)
return tuple(map(str,map(itemgetter(0),colors[:3])))
print(main())
79.连乘
from operator import mul
from functools import reduce
def main(lst):
return reduce(mul,lst)
80.|a-b|
from operator import sub
def main(a,b):
return sum(map(abs,map(sub,a,b)))
81.a//b,a%b
def main(a,b):
return(a//b,a%b)
82.字符串s2在s1中的个数
def main(s1,s2):
l=list(set(list(s2)))
sum=0
for i in l:
sum+=s1.count(i)
return sum
83,返回闭区间所有整数之和
def main(start,end)
return sum(range(start,end),end)
84.返回绝对值的最大整数
def main(data):
return max(data,key=abs)
85.中位数
def main(data):
data_local=data[:]
data_local=sorted(data_local)
return data_local[len(data_local)//2]
86.素数
def main(num):
for n in range(2,num+1)[::-1]:
f=1
for i in range(2,int(n**0.5)+1):
if n%i==0:
f=0
break
if f:
return n
87.全局变量修改
x=3
def main(num):
global x
x=num
return globals()['x']
88.返回圆的面积
from math import pi as PI
def main(r):
if isinstance(r,(int,float)) and r>0:
return round(PI*r*r,3)
else:
return '半径必须为大于0的整数或实数'
89.返回对应位置字符相同的数量
def main(origin, userInput):
return sum(map(lambda oc,uc:oc==uc,origin,userInput))
90.约瑟夫环(因为不会用cycle,直接按思路来过了)
def main(lst,k):
d=k-1
for i in range(len(lst)-1):
del lst[d]
d=(d+k-1)%len(lst)
return lst[0]
91.替换字符
def main(s):
s=s.replace('a','A')
s=s.replace('e','E')
s=s.replace('i','I')
s=s.replace('u','U')
return s
92.计算字符串左边空格
def main(s):
i=0
while s[i]=='' and i<len(s):
i+=1
return i
93.计算第几天
def is_a_leap_year(year):
if year % 100 != 0 and year % 4 == 0:
return True
if year % 100 == 0 and year % 400 ==0:
return True
return False
def main(year,month,day):
leap_year = is_a_leap_year(year)
if leap_year:
day_list = [0,31,29,31,30,31,30,31,31,30,31,30,31]
else:
day_list = [0,31,28,31,30,31,30,31,31,30,31,30,31]
for i in range(month):
day+= day_list[i]
return day
94.判断升序
def main(data):
pre=0
for i in range(1,len(data)):
if data[pre]>data[i]:
return False
pre+=1
return True
95.拼音排序
from pypinyin import pinyin
def main(s):
s=sorted(s,key=lambda c:pinyin(c))
ans=''
for i in s:
ans+=i
return ans
96.密码判断
def main(pwd):
l=len(pwd)
if l<6:
return 'weak'
check = [0,0,0,0]
for char in pwd:
if char.islower():
check[0] = 1
if char.isupper():
check[1] = 1
if char.isdigit():
check[2] = 1
if not (char.isalpha()|char.isdigit()|char.isspace()):
check[3] = 1
if check_num==1:
return 'weak'
elif check_num==2:
return 'below_middle'
elif check_num==3:
return above_middle'
else:
return 'strong'
97.大小写判断
def main(s):
a=0
b=0
for ch in s:
if ch.isupper():
a+=1
if ch.islower():
b+=1
return (a,b)
98.多项式计算
def main(factors,x)
coeffs=factors
n = len(coeffs)
exponents = range(n-1, -1, -1)
powers_of_x = [x**i for i in exponents]
return reduce(lambda acc, pair: acc + pair[0]*pair[1], zip(coeffs, powers_of_x), 0)
99.上台阶
def main(n):
if n<3:
return n
if n==3:
return 4
x,y,z=1,2,4
for i in range(4,n+1):
t=x+y+z
z=y
y=z
z=t
return z
100.文件最长一行
def main():
with open("data100.txt") as file:
l=file.readlines()
return max(list(map(lambda s:len(s),l)))
print(main())
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
几个月前,我读了一篇关于rubygem的博客文章,它可以通过阅读代码本身来确定编程语言。对于我的生活,我不记得博客或gem的名称。谷歌搜索“ruby编程语言猜测”及其变体也无济于事。有人碰巧知道相关gem的名称吗? 最佳答案 是这个吗:http://github.com/chrislo/sourceclassifier/tree/master 关于ruby-寻找通过阅读代码确定编程语言的rubygem?,我们在StackOverflow上找到一个类似的问题:
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonconditionalassignmentoperator对于这样一个简单的问题表示歉意,但是谷歌搜索||=并不是很有帮助;)Python中是否有与Ruby和Perl中的||=语句等效的语句?例如:foo="hey"foo||="what"#assignfooifit'sundefined#fooisstill"hey"bar||="yeah"#baris"yeah"另外,类似这样的东西的通用术语是什么?条件分配是我的第一个猜测,但Wikipediapage跟我想的不太一样。
什么是ruby的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
我想解析一个已经存在的.mid文件,改变它的乐器,例如从“acousticgrandpiano”到“violin”,然后将它保存回去或作为另一个.mid文件。根据我在文档中看到的内容,该乐器通过program_change或patch_change指令进行了更改,但我找不到任何在已经存在的MIDI文件中执行此操作的库.他们似乎都只支持从头开始创建的MIDI文件。 最佳答案 MIDIpackage会为您完成此操作,但具体方法取决于midi文件的原始内容。一个MIDI文件由一个或多个音轨组成,每个音轨是十六个channel中任何一个上的
网络编程套接字网络编程基础知识理解源`IP`地址和目的`IP`地址理解源MAC地址和目的MAC地址认识端口号理解端口号和进程ID理解源端口号和目的端口号认识`TCP`协议认识`UDP`协议网络字节序socket编程接口`sockaddr``UDP`网络程序服务器端代码逻辑:需要用到的接口服务器端代码`udp`客户端代码逻辑`udp`客户端代码`TCP`网络程序服务器代码逻辑多个版本服务器单进程版本多进程版本多线程版本线程池版本服务器端代码客户端代码逻辑客户端代码TCP协议通讯流程TCP协议的客户端/服务器程序流程三次握手(建立连接)数据传输四次挥手(断开连接)TCP和UDP对比网络编程基础知识
本文主要介绍在使用Selenium进行自动化测试或者任务时,对于使用了iframe的页面,如何定位iframe中的元素文章目录场景描述解决方案具体代码场景描述当我们在使用Selenium进行自动化测试的时候,可能会遇到一些界面或者窗体是使用HTML的iframe标签进行承载的。对于iframe中的标签,如果直接查找是无法找到的,会抛出没有找到元素的异常。比如近在咫尺的例子就是,CSDN的登录窗体就是使用的iframe,大家可以尝试通过F12开发者模式查看到的tag_name,class_name,id或者xpath来定位中的页面元素,会抛出NoSuchElementException异常。解决
2022/8/4更新支持加入水印水印必须包含透明图像,并且水印图像大小要等于原图像的大小pythonconvert_image_to_video.py-f30-mwatermark.pngim_dirout.mkv2022/6/21更新让命令行参数更加易用新的命令行使用方法pythonconvert_image_to_video.py-f30im_dirout.mkvFFMPEG命令行转换一组JPG图像到视频时,是将这组图像视为MJPG流。我需要转换一组PNG图像到视频,FFMPEG就不认了。pyav内置了ffmpeg库,不需要系统带有ffmpeg工具因此我使用ffmpeg的python包装p
ValidPalindromeGivenastring,determineifitisapalindrome,consideringonlyalphanumericcharactersandignoringcases. [#125]Example:"Aman,aplan,acanal:Panama"isapalindrome."raceacar"isnotapalindrome.Haveyouconsiderthatthestringmightbeempty?Thisisagoodquestiontoaskduringaninterview.Forthepurposeofthisproblem