python江湖
编写代码实现从键盘输入两个浮点数计算以这两个浮点数为边长的长方形的面积,显示在控制台,数据长度为10,不足部分用 - 补齐,保留2位小数。
方法一:
# -*- coding = utf-8 -*-
# @Time : 2022/6/15 19:20
# @Author : lxw_pro
# @File : python二级练习.py
# @Software : PyCharm
a = float(input("请输入长方形的长度:"))
b = float(input("请输入长方形的宽度:"))
S = a*b
print("长方形的面积是:{:->10.2f}".format(S))
方法二:
a, b = input().split(',')
print("{:->10.2f}".format(float(a)*float(b)))
方法三:
def mj(a, b):
S = a*b
return S
c = float(input())
k = float(input())
print("{:->10.2f}".format(mj(c, k)))
利用random随机库里的函数,生成一个由四个大小写字母组成的验证码,显示在控制台,然后让用户输入验证码进行验证,不区分大小写,输入正确提示验证成功,错误提示验证失败!
方法一:
import random
sj = ''
for i in range(2):
zimu = chr(random.randint(65, 90)) + chr(random.randint(97, 122))
sj = sj + zimu
print(sj)
user_input = input()
# 把验证码和用户输入的字符全部变成小写或大写,然后对比
if user_input.upper() == sj.upper():
print("验证码正确")
else:
print("验证码错误,请重新输入")
方法二:
import random, string
s = string.ascii_letters
# 大写string.ascii_uppercase
# 小写string.ascii_lowercase
a = ''
for i in range(4):
r = random.choice(s)
# print(r, end='')
a += r
print(a)
sr = input()
if sr.lower() == a.lower():
print("验证正确")
else:
print("验证失败")
定义了一个拥有4个元素的字典Infor,用姓名作为字典的key,用部门和工资组成的列表作为字典的value,将每个人的部门和工资显示在控制台,例如:张三的工资是:5500,部门是:人力部;筛选出工资最高的员工,将其姓名和工资打印到控制台,例如:工资最高的员工是张三,其工资为5800。
方法一:
members = {'张三': ['人力部', 5500], '雨生': ['后勤部', 4500], '蛮全': ['市场部',6500], '伟哥': ['开发部', 8500]}
zd = {}
for key in members:
print(f'{key}的工资是:{members[key][1]}, 部门是{members[key][0]}')
for values in members.values():
zd[values[1]] = values[0]
max_val = max(zd.keys())
max_name = zd[max_val]
print(f'工资最高的部门是:{max_name},该部门工资是:{max_val}')
从data.txt文件读入一篇文章,用jieba库的函数cut的全模式做分词,统计词汇长度为2的词出现的次数,输出出现次数最多的前10个词汇及其出现次数。
提示:data.txt文件可以随便找一篇文章复制粘贴即可
import jieba
er = {}
with open('data.txt', 'r', encoding="utf-8") as f:
h = f.readlines()
for i in h:
q = jieba.lcut(i, cut_all=True)
for j in q:
if len(j) == 2:
if j in er:
er[j] += 1
else:
er[j] = 1
dp = list(er.items())
dp.sort(key=lambda x: int(x[1]), reverse=True)
for i in range(10):
print(f"{dp[i][0]}:{dp[i][1]}")
使用循环按示例要求输出10行内容,打印到控制台:

方法一:
import math
a = 0
b = 10
for i in range(b):
c = b - i
a += pow(10, i)
for j in range(c):
print(' ', end='')
print(pow(a, 2))
方法二:
import math
n, m, z = 10, 0, ' '
for i in range(n):
a = n - i
# print(a)
m += pow(10, i)
# print(m)
print(z*a, pow(m, 2))
定义一个函数,传入n个参数,然后通过字典的方式返回n个数的最大值、最小值和平均值,例如:{“max”:最大值,“min”:最小值,“average”:平均值},(思路:要使用到可变参数)
import math
def zd(n):
n = list(n)
da = max(n)
xx = min(n)
aa = sum(n)/len(n)
return da, xx, aa
n = [13, 14, 15, 9, 20, 52]
a = list(zd(n))
# fh = {f"“max”:{a[0]}, “min”:{a[1]}, “average”:{a[2]}"}
# print(fh)
pa = {}
pa['max'] = a[0]
pa['min'] = a[1]
pa['average'] = a[2]
print(pa)
已知变量a的值为100,变量b的值为200,请编写代码实现将a和b的值进行交换,并在控制台打印出来。
方法一:
a, b = 100, 200
a, b = b, a
print(a, b)
方法二:
a, b = 100, 200
h = a
a = b
b = h
print(a, b)
或
def jh(a, b):
t = a
a = b
b = t
print(a, b)
a, b = 100, 200
jh(a, b)
方法三:
a, b = 100, 200
a = a + b
b = a - b
a = a - b
print(a, b)
方法四:
a, b = 100, 200
a = a ^ b
b = a ^ b # b = (a^b)^b = a
a = a ^ b # a = (a^b)^a = b
print(a, b)
或
def demo(a,b):
a = a ^ b
b = a ^ b # b = (a^b)^b = a
a = a ^ b # a = (a^b)^a = b
print(a, b)
a, b = 100, 200
demo(a, b)
给用户三次输入用户名和密码的机会,要求如下:如输入第一行输入用户名为 ‘张三’,第二行输入密码为 ‘666666’,输出
‘登录成功!’,退出程序;当输入密码错误时提示“密码错误,请重新输入!”;当 3 次输入用户名或密码都不正确输出 “您已经输错密码超过3次,请明天再试!。”
方法一:
for i in range(3):
a, b = input(), input()
if a=="张三" and b=="666666":
print("登录成功!")
break
else:
print("您已经输错密码超过3次,请明天再试!")
方法二:
count = 3
for i in range(3):
name = input("请输入用户名:")
pw = int(input("请输入用户密码:"))
if name == '张三' and pw == 666666:
print('登录成功')
break
else:
count = count-1
print('密码不对,请重新输入,还有', count, '次机会')
else:
print('您已经输错密码超过3次,请明天再试!')
方法三:
i = 3
while True:
name = input("输入名字:")
word = int(input("输入密码:"))
if name == '张三' and word == 666666:
print("登录成功")
break
else:
i -= 1
if i == 0:
print("您已经输错密码超过3次,请明天再试!")
break
方法四:
cs = 0
while 1:
name = input("输入用户名:")
mm = eval(input("输入密码:"))
if name == "张三" and mm == 666666:
print("登录成功!")
break
else:
cs += 1
if cs == 3:
print("您已经输错密码超过3次,请明天再试!")
break
输出所有的水仙花数(水仙花数指的是:一个三位数等于其个位数的立方和,例如153 = 13 + 53 + 33)。
方法一:
for i in range(100, 1000):
a = i % 10
b = i % 100 // 10
c = i // 100
if a * a * a + b * b * b + c * c * c == i:
print(i)
或
for n in range(100, 1000):
i = n // 100
j = n // 10 % 10
k = n % 10
if n == i ** 3 + j ** 3 + k ** 3:
print(n)
方法二:
for a in range(1, 10):
for b in range(10):
for c in range(10):
s1 = a*100+b*10+c
s2 = pow(a, 3)+pow(b, 3)+pow(c, 3)
if s1 == s2:
print(s1)
或
for i in range(1, 10):
for j in range(0, 10):
for k in range(0, 10):
if i ** 3 + j ** 3 + k ** 3 == i * 100 + j * 10 + k:
print(i*100+j*10+k)
方法三:
for i in range(100, 1000):
a1 = int(str(i)[0])
a2 = int(str(i)[1])
a3 = int(str(i)[2])
if i == a1 ** 3 + a2 ** 3 + a3 ** 3:
print(i)
或
for i in range(100, 1000):
s = str(i)
if int(s[0])**3+int(s[1])**3+int(s[2])**3 == i:
print(s)
本题要求在1行内以逗号间隔输入五菜一汤,菜单中有一个菜为“水煮肉片”,利用append和remove方法增加一个“东坡肉”,去掉一个“水煮肉片”,并输出修改后的菜单。
ct = input("请输入五菜一汤,并且用,隔开:").split(",")
ct.append("东坡肉")
ct.remove("水煮肉片")
print(ct)
编程实现添加通讯录信息,定义自定dctInfo,将姓名作为字典的key,由电话、QQ、地址组成的子字典作为dctInfo的value,例如:{“张三”:
{“电话”: “1355555”, “QQ”: “3333”, “地址”:“贵州省……”},……}
要求使用for循环从控制台输入4个人的信息,保存字典dctInfo中,然后将dctInfo打印输出在控制台。
for i in range(4):
dic = {}
key = input()
value = input().split(',')
dic[key] = value
print(dic)
字典知识忘记的话:可以点点 python字典学习链接
从D盘中读取“Python成绩.csv”,根据读取到的分数按照分数段将成绩修改为“优”(90分以上、含90分)、“良”(80-89,含80)、“中”(70-79,含70)、“及格”(60-69,含60)、“不及格”(60分一下)5个等次,并将最后的结果写入到D盘下的“Python成绩1.csv”中。
Python成绩.csv

import csv
file = open('Python成绩2.csv', mode='w', encoding='utf-8')
with open('Python成绩.csv', 'r', encoding='utf-8') as f:
reader = csv.DictReader(f)
for row in reader:
if int(row['Python-score']) >= 90:
row['Python-score'] = '优'
elif 80 <= int(row['Python-score']) < 90:
row['Python-score'] = '良'
elif 70 <= int(row['Python-score']) < 80:
row['Python-score'] = '中'
elif 60 <= int(row['Python-score']) < 70:
row['Python-score'] = '及格'
else:
row['Python-score'] = '不及格'
print("name:", row['name'], file=file, end='\n')
print("Python-score:", row['Python-score'], file=file, end='\n')
# f = open("Python成绩2.csv", mode="w")
# csv_writer = csv.writer(f)
file.close()
print("over!")
Python成绩2.csv


从D盘中读取“姓氏.txt”,再从D盘中读取“汉字.txt”,随机抽取姓氏和汉子组成20个名字,并将名字保存到列表names中,最后将names打印输出到控制台。
姓氏.txt

汉字.txt

方法一:
# -*- coding = utf-8 -*-
# @Time : 2022/6/18 9:18
# @Author : lxw_pro
# @File : 随机组名.py
# @Software : PyCharm
import random
for i in range(20):
with open('姓名.txt', 'r', encoding='utf-8') as f:
x = f.read()
with open('汉字.txt', 'r', encoding='utf-8') as h:
m = h.read()
x = list(x)
# print(x)
m = list(m)
# print(m)
random.shuffle(m)
# print(m)
string = ""
for j in range(0, random.randint(1, 2)):
string += random.choice(m)
# print(string)
x = random.choice(x)
print(x+string)
f.close()
h.close()
[^1]当然了,这里运行的结果也是随机生成的

方法二:
import random
def names():
with open('姓名.txt', 'r', encoding='utf-8') as f:
x = f.read()
x = list(x)
x = random.choice(x)
with open('汉字.txt', 'r', encoding='utf-8') as h:
m = h.read()
m = list(m)
f.close()
h.close()
m = ''.join(random.choice(m) for i in range(2))
name = x + m
return name
for i in range(20):
print(names())

或
import random
for j in range(20):
with open('姓名.txt', 'r', encoding='utf-8') as f:
x = f.read()
x = list(x)
x = random.choice(x)
with open('汉字.txt', 'r', encoding='utf-8') as h:
m = h.read()
m = list(m)
f.close()
h.close()
m = ''.join(random.choice(m) for i in range(2))
name = x + m
print(name)

所谓一生活过几生,关键的问题不在长度而在宽度,勇敢地选择不一样的生活,多一次冒险,就多一次体验不同人生的机会。
有兴趣的话,可以扫一下公众号二维码关注一下,相互交流,相互学习,一起成长,一起进步。

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
这个问题在这里已经有了答案:关闭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中任何一个上的
本文主要介绍在使用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
1.在Python3中,下列关于数学运算结果正确的是:(B)a=10b=3print(a//b)print(a%b)print(a/b)A.3,3,3.3333...B.3,1,3.3333...C.3.3333...,3.3333...,3D.3.3333...,1,3.3333...解析: 在Python中,//表示地板除(向下取整),%表示取余,/表示除(Python2向下取整返回3)2.如下程序Python2会打印多少个数:(D)k=1000whilek>1: print(k)k=k/2A.1000 B.10C.11D.9解析: 按照题意每次循环K/2,直到K值小于等
ValidPalindromeGivenastring,determineifitisapalindrome,consideringonlyalphanumericcharactersandignoringcases. [#125]Example:"Aman,aplan,acanal:Panama"isapalindrome."raceacar"isnotapalindrome.Haveyouconsiderthatthestringmightbeempty?Thisisagoodquestiontoaskduringaninterview.Forthepurposeofthisproblem
是否可以在PyYAML或Ruby的Psych引擎中禁用创建anchor和引用(并有效地显式列出冗余数据)?也许我在网上搜索时遗漏了一些东西,但在Psych中似乎没有太多可用的选项,而且我也无法确定PyYAML是否允许这样做.基本原理是我必须序列化一些数据并将其以可读的形式传递给一个不是真正的技术同事进行手动验证。有些数据是多余的,但我需要以最明确的方式列出它们以提高可读性(anchor和引用是提高效率的好概念,但不是人类可读性)。Ruby和Python是我选择的工具,但如果有其他一些相当简单的方法来“展开”YAML文档,它可能就可以了。 最佳答案