草庐IT

蓝桥杯刷题练习Python(笔记)

Naiva 2023-09-09 原文

# a1 = 'A'
# a2 = 'A B A'
# a3 = 'ABA C ABA'
# a4 = 'ABACABADABACABA'

num = int(input('N <= 26:'))    # 26 个字母
str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

if num == 1:
    a = 'A'  # str[0]
else:
    a = 'A'
    for i in range(1, num, 1):  # 
        b = str[i]
        c = a + b + a
        a = c
        # print(str[i])
        # print(a)
print(a)

# print('请输入第一个字符串:', end="")
str1 = input()
# print('请输入第一个字符串:', end="")
str2 = input()

l1 = len(str1)      # 计算字符串的长度
l2 = len(str2)

s1_lower = str1.lower()   # 全部转换成小写字母
s2_lower = str2.lower()

if l1 != l2:    # 长度不同
    print(1)
elif l1 == l2 and str1 == str2: # 长度相同 内容相同
    print(2)
elif l1 == l2 and s1_lower == s2_lower: # 长度相同 内容相同  大小写不同
    print(3)
elif l1 == l2 and s1_lower != s2_lower :    # 长度相同 内容不同
    print(4)

#【蓝桥杯】 水下探测器
# u : 水深
# s :初始深度
# u - up :  上浮1米
# d - down: 下沉1米

print("请输入\'h\'和\'s\':", end="")  # h 和 s ,以空格分开
num = input()    #
print("请输入指令序列(仅包含u或d):", end="")
ud = input()     # 指令

# print(num)
# print(type(num))
num = num.split()
# print(type(num))
num = list(map(int, num))
# print(num)
# print(num[0])
# print(num[1])

h = num[0]  # 最大深度 h
s = num[1]  # 最初深度 s

if s > 0:
    for i in ud:
        if i == 'u' and s > 0:
            s -= 1
        if i == 'd' and s < h:
            s += 1
        continue
        # print(i, end=" ")

print(s)

猫吃鱼

样例分析

# 猫吃鱼
# n 站点数
# y 买鱼费用
# m 保存鱼到下一站的费用
# print("请输入\'n\'个站点:", end="")
n = int(input())
# print(type(n))
ls1 = list()
min_p = 10000
count = 0

for i in range(1, n+1):
    # print(f"请输入第{i}站(y鱼费用)和(m保存鱼的费用):", end="")
    ls2 = list(map(int, input().split()))
    ls1.append(ls2)
# print(ls1)  # 二维列表

# for i in ls1:
#     for j in i:
#         print(j, end=" ")
#     # print()
for i in range(len(ls1)):
    # for j in range(len(ls1[i])):
    # print(ls1[i][j], end=" ")
    if ls1[i][0] < min_p:
        min_p = ls1[i][0]
    count += min_p
    min_p += ls1[i][1]

print('\n', count)

第十届蓝桥杯大赛青少年创意编程C++组省赛之小猫吃鱼


评选最佳品牌

# 【评选最佳品牌】
# m 个商品(选1个品牌) 0<m<10
# n 个评委
# 输入格式 m
# 输入格式 n

print("请输入\'m\'个商品和\'n\'个评委(0<m10,0<n<100):", end="")
num = input()
num = list(map(int, num.split()))
print(num)
m = num[0]  # 商品
n = num[1]  # 评委
ls = list()

for i in range(1, n+1):
    # print(i)
    # for j in range(m):
    #     s = input()
    #     ls.append(s)
    #     # print(j, end=" ")
    print(f"第{i}位评委打分:", end="")
    s = input()     # 打分
    ls.append(s)    #
    # print()
ls = list(map(int, ls))
print(ls)

for i in range(1, m+1):
    for j in ls:
        print(j, end=" ")


两个矩形求交面积

数学几何教学工具https://www.geogebra.org/geometry

给出矩形的一对相对顶点的坐标:

  • 第一个矩形:1133
  • 第二个矩形:2244
a1x = 0  # 第一个矩形a的第1个顶点的x坐标
a1y = 0  # 第一个矩形a的第1个顶点的y坐标
a2x = 0  # 第一个矩形a的第2个顶点的x坐标
a2y = 0  # 第一个矩形a的第2个顶点的y坐标

b1x = 0  # 第二个矩形b的第1个顶点x坐标
b1y = 0  # 第二个矩形b的第1个顶点y坐标
b2x = 0  # 第二个矩形b的第2个顶点x坐标
b2y = 0  # 第二个矩形b的第2个顶点y坐标
# a1x, a1y, a2x, a2y = list(map(float, input().split())) # int, float
# b1x, b1y, b2x, b2y = list(map(float, input().split()))
a1x = 0  # 第一个矩形a的第1个顶点的x坐标
a1y = 0  # 第一个矩形a的第1个顶点的y坐标
a2x = 0  # 第一个矩形a的第2个顶点的x坐标
a2y = 0  # 第一个矩形a的第2个顶点的y坐标

b1x = 0  # 第二个矩形b的第1个顶点x坐标
b1y = 0  # 第二个矩形b的第1个顶点y坐标
b2x = 0  # 第二个矩形b的第2个顶点x坐标
b2y = 0  # 第二个矩形b的第2个顶点y坐标

# print("第一个矩形对角:", end="")
# a1x, a1y, a2x, a2y = list(map(int, input().split()))
# print("第二个矩形对角:", end="")
# b1x, b1y, b2x, b2y = list(map(int, input().split()))
# print("第一个矩形对角:", end="")
a = list(map(float, input().split()))
# print("第二个矩形对角:", end="")
b = list(map(float, input().split()))
# print(a)
a1x = a[0]
a1y = a[1]
a2x = a[2]
a2y = a[3]
# print(b)
b1x = b[0]
b1y = b[1]
b2x = b[2]
b2y = b[3]
# print(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)


参考程序

a1x = 0  # 第一个矩形a的第1个顶点的x坐标
a1y = 0  # 第一个矩形a的第1个顶点的y坐标
a2x = 0  # 第一个矩形a的第2个顶点的x坐标
a2y = 0  # 第一个矩形a的第2个顶点的y坐标

b1x = 0  # 第二个矩形b的第1个顶点x坐标
b1y = 0  # 第二个矩形b的第1个顶点y坐标
b2x = 0  # 第二个矩形b的第2个顶点x坐标
b2y = 0  # 第二个矩形b的第2个顶点y坐标

# print("第一个矩形对角:", end="")
# a1x, a1y, a2x, a2y = list(map(int, input().split()))
# print("第二个矩形对角:", end="")
# b1x, b1y, b2x, b2y = list(map(int, input().split()))
# print("第一个矩形对角:", end="")
a = list(map(float, input().split()))
# print("第二个矩形对角:", end="")
b = list(map(float, input().split()))
# print(a)
a1x = a[0]
a1y = a[1]
a2x = a[2]
a2y = a[3]
# print(b)
b1x = b[0]
b1y = b[1]
b2x = b[2]
b2y = b[3]
# print(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)

# 第三个矩形c第1个顶点的x、y坐标
c1x = max(min(a1x, a2x), min(b1x, b2x))
c1y = max(min(a1y, a2y), min(b1y, b2y))
# 第三个矩形c第2个顶点的x、y坐标
c2x = min(max(a1x, a2x), max(b1x, b2x))
c2y = min(max(a1y, a2y), max(b1y, b2y))

if c1x >= c2x and c1y >= c2y:  # 不相交的情况
    a = 0
    b = 0
else:
    a = c2x - c1x    # 底边
    b = c2y - c1y    # 高
# 四边形的面积 = 底 x 高
s = a * b
if s < 0:
    # print("%.2f"%0)

    # s = 0.00
    # print("%.2f"% s)
    print("0.00")

else:
    print("%.2f"% s)    # 保留小数后两位


蓝桥杯练习系统习题(Python)–基础练习 矩形面积交


2031 【入门】比较字符串蓝桥杯字符串


【题目描述】

编程实现两个字符串s1和s2的字典序比较。(保证每一个字符串不是另一个的前缀,且长度在100以内)。若s1和s2相等,输出0;若它们不相等,则指出其第一个不同字符的ASCII码的差值:如果s1>s2,则差值为正;如果s1<s2,则差值为负。

【输入格式】

输入2个字符串,每个字符串仅包含小写字母(不含空格),两个字符串之间用空格隔开。

【输出格式】

按题意输出差值或0。

【输入样例 】

java basic

【输出样例】

8

【前导知识】

ch1 = 'a'
ch2 = 'b'
print(type(ch1))

print(ord(ch1)) # 输出ASCII编码
print(ord(ch2))
print(ord(ch2) - ord(ch1)) 

输出结果:

<class ‘str’>
97
98
1

'''
编程实现两个字符串s1和s2的字典序比较。(保证每一个字符串不是另一个的前缀,且长度在100以内)。
若s1和s2相等,输出0;
若它们不相等,则指出其第1个不同字符的ASCII码的差值:
如果s1>s2,则差值为正;
如果s1<s2,则差值为负。
'''
# # print("请输入第1个字符串:", end='')
# s1 = input()
# # print("请输入第2个字符串:", end="")
# s2 = input()

ls = list(input().split())
s1 = ls[0]
s2 = ls[1]
# print(type(ls))
# print(ls)

strlen1 = len(s1)
strlen2 = len(s2)

# print(s1, s2)
# print(strlen1, strlen2)

if s1 == s2:
    print(0)    # 若s1和s2相等,输出0
# elif s1 != s2:
for i in range(min(strlen1, strlen2)):
    # print(f"第{i}个元素:{s1[i]} {s2[i]}", end=" ")
    if s1[i] == s2[i]:
        continue
    elif s1[i] != s2[i]:  # 不相等,则指出其第1个不同字符的ASCII码的差值
        print(ord(s1[i]) - ord(s2[i]))
        # if strlen1 > strlen2:
        #     print(abs(ord(s1[i]) - ord(s2[i])))  # ASCII编码函数-ord()   字符函数-chr()  取绝对值内置函数-abs()
        # elif strlen1 < strlen2:
        #     print("-", ord(s1[i]) - ord(s2[i]))
        # else:
        #     print(ord(s1[i]) - ord(s2[i]))
        break

2028【入门】s01串蓝桥杯字符串

所以,变换规律如下:

1次变换后:1;
2次变换后:01;
3次变换后:101;
4次变换后:01101;
5次变换后:10101101;

输入说明 :

输入1个整数n,范围为0<=n<=19,表示变换的次数

输出说明 :

n次变换后的s01串,行首行尾无空格,也无空行。

输入范例 :

6

输出范例 :

0110110101101

试题 算法训练 s01串—蓝桥杯


2032 【基础】比赛安排

问题描述
  设有有2 n(n<=6)个球队进行单循环比赛,计划在2 n – 1天内完成,每个队每天进行一场比赛。设计一个比赛的安排,使在2 n – 1天内每个队都与不同的对手比赛。
输入格式
  输入文件matchplan.in共一行,输入n的数值。

输出格式
  输出文件matchplan.out共(2 n – 1)行,第i行输出第i天的比赛安排。
  格式为: A-B,C-D,……。其中i是天数,A,B分别为比赛双方的编号,每行共2 n-1个比赛场次。

样例输入

2

样例输出

<1>1-2,3-4
<2>1-3,2-4
<3>1-4,2-3

print("请输入n:", end="")
n = int(input())
game_team = pow(2, n)       # 比赛球队
game_day = pow(2, n) - 1    # 比赛天数

# 比赛情况
match = [[0] * 100] * 100
# 记录
temp = [0] * 100
# print(match, temp)


# print(match, " ", tamp)
# print(match[0][0]," ", match[1], " ", tamp)


print(f"\'{game_team} 支球队参赛, {game_day}天完成比赛\'")

for i in range(1, game_day+1):
    print("<%d>" % i, end="")

    count = 0
    # print(f"<{i}>")
    for x in range(1, game_team+1):

        for y in range(x+1, game_team+1):
            print(f"({x},{y})", end=" ")
            # if match[x][y] == 0 and temp[x] == 0 and temp[y] == 0:
            #     count += 1
            #     temp[x] = 1   # 比赛过的小组标记为 1
            #     temp[y] = 1
            #     match[x][y] = 1
            #     print(f"{x}-{y}", end=" ")
            # if count == game_team / 2:
            #     continue
        # print()
    print()
print(f"({x},{y})", end=" ")  # 测试--打印出所有组合情况
print(f"match[{x}][{y}]={match[x][y]}", end=" ")

输出结果

请输入n:2
‘4 支球队参赛, 3天完成比赛’
<1>(1,2) (1,3) (1,4) (2,3) (2,4) (3,4)
<2>(1,2) (1,3) (1,4) (2,3) (2,4) (3,4)
<3>(1,2) (1,3) (1,4) (2,3) (2,4) (3,4)

请输入n:2
‘4 支球队参赛, 3天完成比赛’
<1>match[1][2]=0 1-2 match[1][3]=0match[1][4]=0
match[2][3]=0match[2][4]=0
match[3][4]=03-4

<2>match[1][2]=1 match[1][3]=0 1-3 match[1][4]=1
match[2][3]=1 match[2][4]=1
match[3][4]=1

<3>match[1][2]=1 match[1][3]=1 match[1][4]=1
match[2][3]=1 match[2][4]=1
match[3][4]=1

问题是关于二维列表[x][y] 标记为1 的处理上。以下这种方法是错误的。

match[i][j] = 1
match = [[0] * 4] * 4     # 创建二维列表
temp = [0] * 4            # 创建一维列表

# print(match,"\n", temp)
print(match)
for i in range(4):
    for j in range(4):
        match[i][j] = 1
        print(f"match[{i}][{j}]={match[i][j]}", end=" ")
    print()

问题:想要修改二维列表中其中一个值,会造成所有项都改变!

输出结果:

[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
match[0][0]=1 match[0][1]=1 match[0][2]=1 match[0][3]=1
match[1][0]=1 match[1][1]=1 match[1][2]=1 match[1][3]=1
match[2][0]=1 match[2][1]=1 match[2][2]=1 match[2][3]=1
match[3][0]=1 match[3][1]=1 match[3][2]=1 match[3][3]=1

解决办法

原因是,创建二维数组的方式有问题。可能使用的创建方式是:

match = [[0] * 4] * 4   # 比赛情况

正确创建二维列表的方式为:

list1 = [[0] * 3 for _ in range(3)]

参考程序最终版本

import time

game_team = 0
game_day = 0
match = [[0] * 100 for _ in range(100)]   # 比赛情况  (注意二维列表的创建)

def match_info():
    count = 0 	# 统计已经安排的比赛队伍
    global match
    temp = [0] * 100  # 记录 标记

    for x in range(1, game_team+1):

        for y in range(x+1, game_team+1):
            # print(f"({x},{y})", end=" ")  # 测试--打印出所有组合情况
            # print(f"temp[{x}][{y}]", end="|")
            # print(f"match[{x}][{y}]={match[x][y]}", end=" ")

            time.sleep(1)
            if match[x][y] == 0 and temp[x] == 0 and temp[y] == 0:
                count += 1
                temp[x] = 1   # 当天分配过的小组编号标记为 1
                temp[y] = 1   # 
                match[x][y] = 1	 # 之前分配过的小组对决编号标记为 1
                print(f"{x}-{y}", end=" ")
            if count == game_team / 2:              # 2-2对决 比赛队伍组数
                break
        print()
    # print()



if __name__ == '__main__':
    print("请输入n:", end="")
    n = int(input())
    game_team = pow(2, n)  # 比赛球队
    game_day = pow(2, n) - 1  # 比赛天数
    print(f"\'{game_team} 支球队参赛, {game_day}天完成比赛\'")

    for i in range(1, game_day + 1):
        print("<%d>" % i, end="")
        match_info()
        # print()

2036【基础】黑色星期五

四年一润百年不润四百年再润

以下实例用于判断用户输入的年份是否为闰年:

print("请输入年份:", end="")
y = int(input())
# 闰年:四年一润,百年不润,四百年再润。即能被4整除且不能被100整除的年份,或是既能被100整除也能被400整除的年份
# if y % 4 == 0 and y % 100 != 0 or y % 100 == 0 and y % 400 ==0:
# if y % 4 == 0 and y % 100 != 0:
#     print("闰年")
# elif y % 100 == 0 and y % 400 ==0:
#     print("闰年")
# else:
#     print("平年")

# 口诀:四年一润,百年不润,四百年再润!!!

if y % 4 == 0:
    if y % 100 == 0:
        if y % 400 == 0:
            print("闰年")
        else:
            print("不是闰年!")
    else:
        print("闰年")
else:
    print("不是闰年!")

题目描述

有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是“诸事不宜”。请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是13号又是星期五的情形,以帮助你的迷信朋友解决难题。
说明:(1)一年有365天,闰年有366天,所谓闰年,即能被4整除且不能被100整除的年份,或是既能被100整除也能被400整除的年份;(2)已知1998年1月1日是星期四,用户输入的年份肯定大于或等于1998年。

输入格式

输入只有一行,即某个特定的年份(大于或等于1998年)。

输出格式

输出只有一行,即在这一年中,出现了多少次既是13号又是星期五的情形。

输入样例

1998

输出样例

3

参考代码

import time
while True:
    print("请输入年份:", end="")
    y = int(input())
    while(1):
        if y < 1998:
            print("请输入大于或等于1998的年份:", end="")
            y = int(input())
        else:
            break
    break

# y = int(input())

# 口诀:四年一润,百年不润,四百年再润!!!
day_year = 0        # 该年的天数
day_month2 = 0  # 该年的二月天数
if y % 4 == 0:
    if y % 100 == 0:
        if y % 400 == 0:
            print(f"{y}闰年")
            day_month2 = 29  # 闰年二月29天
            day_year += 366
        else:
            print(f"{y}不是闰年!")
            day_month2 = 28  # 平年二月28天
            day_year += 365
    else:
        print(f"{y}闰年")
        day_month2 = 29  # 闰年二月29天
        day_year += 366
else:
    print(f"{y}不是闰年!")
    day_month2 = 28  # 平年二月28天
    day_year += 365


# 第一步: 判断闰年和平年 365 366天 year
# 第二步: 计算 12个月份  一星期7天   month  week
# 初始数据 1998 1.1 是星期四 (计算当前年份1月1日的星期是多少 = 1998.1.1星期四 + 当前-1年份的星期数 )


day_count = 0             # 统计天数
for i in range(1998, y, 1):  # 统计1998 至 year-1年 天数
    if i % 4 == 0:
        if i % 100 == 0:
            if i % 400 == 0:
                print(f"{i}闰年")
                day_count += 366
            else:
                print(f"{i}不是闰年!")
                day_count += 365
        else:
            print(f"{i}闰年")
            day_count += 366
    else:
        print(f"{i}不是闰年!")
        day_count += 365
    # print(f"day_count = {day_count}")
    time.sleep(1)

# print(f"1998年至{y}年共有:{day_count} 天")

# 1星期 = 7天
week = divmod(day_count, 7)     # 星期=day_count // 7  ; day_count % 7; divmod()该函数返回的是元组(整数商,余数)
print(f"divmod({day_count}, 7)= {week}")         # 星期4 + 余数 就是y年的起始星期数
print(f"week[1] = {week[1]}")   # 取week元组中的第二个数字 余数

if y == 1998:
    y_week = 4  # 1998.1.1是星期四
else:
    y_week = 4 + week[1] + 1    # y年1月1日 星期4 + 余数 就是y年的起始星期数  4 + 5 + 1 = 10
    if y_week > 7:   # 一周只有7天
        y_week_error= divmod(y_week, 7)  # divmod(10, 7) = (1, 3) 商1余3
        y_week = y_week_error[1]

print(f"{y}年1月1日是星期{y_week}")

black_week5 = 0     # 统计黑色星期五的数量

# 12个月 1月:31天  2月:28/29天 3月:31天 4月:30天 ……
# if week == 星期五  and day == 13
#   count += 1 黑色星期五
# 月份()
# 天数() 二月份的天数
# 星期() 该年第一天的星期数
# month = [31, day_month2, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
month = {'m1': 31, 'm2': day_month2, 'm3': 31, 'm4': 30, 'm5': 31, 'm6': 30, 'm7': 31, 'm8': 31,
         'm9': 30, 'm10': 31, 'm11': 30, 'm12': 31}
for key, value in month.items():
    print(f"month[{key}][{value}]", end=" ")
    # print("\n", type(key), type(value))
    # break
    for i in range(1, value+1, 1):
        if y_week == 5 and i == 13:
            print(f"{key}{i}日黑色星期5")
            black_week5 += 1
        y_week += 1
        if y_week > 7:
            y_week = 1
        time.sleep(0.05)
print(f"\n{y}年共有{black_week5}个黑色星期五")
print(black_week5)

参考资料:

1757 【入门】FJ的字符串蓝桥杯字符串 3 3 100.000%
1758 【入门】字符串对比蓝桥杯字符串 2 2 100.000%
2009 【基础】水下探测器:deep.cpp蓝桥杯字符串 6 6 100.000%
2010 【基础】小猫吃鱼:fish.cpp蓝桥杯数组问题递推 4 7 57.143%
2012 【基础】评选最佳品牌:king.cpp蓝桥杯字符串 1 1 100.000%
2020 【基础】报时助手蓝桥杯分支问题 4 5 80.000%
2021 【基础】分解质因数蓝桥杯循环的应用 2 2 100.000%
2022 【基础】龟兔赛跑预测蓝桥杯循环的应用 4 8 50.000%
2023 【提高】回形取数蓝桥杯二维数组递归 2 2 100.000%
2024 【入门】矩形面积交蓝桥杯分支问题 2 2 100.000%
2025 【提高】完美的代价蓝桥杯字符串贪心 1 1 100.000%
2026 【基础】芯片测试蓝桥杯 1 1 100.000%
2027 【入门】判定字符位置蓝桥杯字符串 4 4 100.000%
2028 【入门】s01串蓝桥杯字符串 3 3 100.000%
2029 【基础】阿尔法乘积蓝桥杯循环的应用 4 4 100.000%
2030 【基础】摆动序列蓝桥杯递推 1 1 100.000%
2031 【入门】比较字符串蓝桥杯字符串 3 3 100.000%
2032 【基础】比赛安排蓝桥杯 1 1 100.000%
2033 【提高】和为T蓝桥杯深搜 2 2 100.000%
2034 【基础】猴子分苹果蓝桥杯 4 6 66.667%
2035 【基础】集合运算蓝桥杯数组问题 3 3 100.000%
2036 【基础】黑色星期五蓝桥杯模拟 2 2 100.000%
2037 【基础】寂寞的数蓝桥杯循环的应用 3 3 100.000%
2038 【提高】删除多余括号蓝桥杯字符串 3 3 100.000%
2039 【基础】输出米字形蓝桥杯循环的应用 3 3 100.000%
2040 【基础】数的划分蓝桥杯动态规划 3 4 75.000%
2041 【入门】数组查找及替换蓝桥杯数组问题字符型 4 4 100.000%
2042 【入门】完数判断蓝桥杯循环的应用 5 5 100.000%
2043 【入门】薪水计算蓝桥杯分支问题 3 3 100.000%
2044 【入门】整除问题简单循环蓝桥杯 5 5 100.000%
2047 【提高】单词接龙的最长长度深搜蓝桥杯 1 1 100.000%
2048 【提高】黑白无常蓝桥杯深搜 2 2 100.000%
2349 【基础】评选最佳品牌

https://blog.csdn.net/lybc2019/article/details/105791813/

有关蓝桥杯刷题练习Python(笔记)的更多相关文章

  1. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  2. Python 相当于 Perl/Ruby ||= - 2

    这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonconditionalassignmentoperator对于这样一个简单的问题表示歉意,但是谷歌搜索||=并不是很有帮助;)Python中是否有与Ruby和Perl中的||=语句等效的语句?例如:foo="hey"foo||="what"#assignfooifit'sundefined#fooisstill"hey"bar||="yeah"#baris"yeah"另外,类似这样的东西的通用术语是什么?条件分配是我的第一个猜测,但Wikipediapage跟我想的不太一样。

  3. java - 什么相当于 ruby​​ 的 rack 或 python 的 Java wsgi? - 2

    什么是ruby​​的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht

  4. 华为OD机试用Python实现 -【明明的随机数】 2023Q1A - 2

    华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o

  5. python - 如何读取 MIDI 文件、更改其乐器并将其写回? - 2

    我想解析一个已经存在的.mid文件,改变它的乐器,例如从“acousticgrandpiano”到“violin”,然后将它保存回去或作为另一个.mid文件。根据我在文档中看到的内容,该乐器通过program_change或patch_change指令进行了更改,但我找不到任何在已经存在的MIDI文件中执行此操作的库.他们似乎都只支持从头开始创建的MIDI文件。 最佳答案 MIDIpackage会为您完成此操作,但具体方法取决于midi文件的原始内容。一个MIDI文件由一个或多个音轨组成,每个音轨是十六个channel中任何一个上的

  6. 「Python|Selenium|场景案例」如何定位iframe中的元素? - 2

    本文主要介绍在使用Selenium进行自动化测试或者任务时,对于使用了iframe的页面,如何定位iframe中的元素文章目录场景描述解决方案具体代码场景描述当我们在使用Selenium进行自动化测试的时候,可能会遇到一些界面或者窗体是使用HTML的iframe标签进行承载的。对于iframe中的标签,如果直接查找是无法找到的,会抛出没有找到元素的异常。比如近在咫尺的例子就是,CSDN的登录窗体就是使用的iframe,大家可以尝试通过F12开发者模式查看到的tag_name,class_name,id或者xpath来定位中的页面元素,会抛出NoSuchElementException异常。解决

  7. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  8. python ffmpeg 使用 pyav 转换 一组图像 到 视频 - 2

    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

  9. 牛客网专项练习30天Pytnon篇第02天 - 2

    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值小于等

  10. Python 刷Leetcode题库,顺带学英语单词(31) - 2

    ValidPalindromeGivenastring,determineifitisapalindrome,consideringonlyalphanumericcharactersandignoringcases. [#125]Example:"Aman,aplan,acanal:Panama"isapalindrome."raceacar"isnotapalindrome.Haveyouconsiderthatthestringmightbeempty?Thisisagoodquestiontoaskduringaninterview.Forthepurposeofthisproblem

随机推荐