Python 数据基本类型 作业实训

1.输入一个十进制整数,分别输出其二进制、
八进制和 16 进制字符串。

# 作业3.1

decimal_num = int(input("请输入一个十进制整数:"))

binary_num = bin(decimal_num)
octal_num = oct(decimal_num)
hexadecimal_num = hex(decimal_num)

print(f"二进制表示为: {binary_num}")
print(f"八进制表示为: {octal_num}")
print(f"十六进制表示为: {hexadecimal_num}")
作业 3.2
输入一个字符串,按照如下要求分别采用切片、
循环 + 索引方法获取子串:
① 从第 2 个字符开始,正向间隔 3 个字符获取;
② 从倒数第 2 个字符开始,反向间隔 3 个字符获取。
input_str = input("请输入一个字符串:")

# 切片方法
slice_substring1 = input_str[1::3]
slice_substring2 = input_str[-2::-3]

print(f"切片方法获取的子串1: {slice_substring1}")
print(f"切片方法获取的子串2: {slice_substring2}")

# 循环+索引方法
loop_substring1 = ''
loop_substring2 = ''

for i in range(1, len(input_str), 3):
    loop_substring1 += input_str[i]

for i in range(-2, -len(input_str)-1, -3):
    loop_substring2 += input_str[i]

print(f"循环+索引方法获取的子串1: {loop_substring1}")
print(f"循环+索引方法获取的子串2: {loop_substring2}")
作业 3.3
string = ‘My moral standing is:0.98765’
将其中的数字字符串转换成浮点数并输出。
提醒:找到冒号 : 位置,获取其之后的子串。
# 作业3.3
string = 'My moral standing is:0.98765'
colon_index = string.find(':')
number_str = string[colon_index + 1:]
float_number = float(number_str)

print(f"转换后的浮点数为:{float_number}")
作业 3.4
任意输入 2 个英文单词,按字典顺序输出。
# 作业3.4
word1 = input("请输入第一个英文单词:")
word2 = input("请输入第二个英文单词:")

if word1 < word2:
    print(word1, word2)
else:
    print(word2, word1)
作业 3.5
编写一个磅与千克互换的程序(数据输出时,
保留 1 位小数位)。
提示:磅与千克的关系为,千克数 = 磅数 *0.454
def pounds_to_kg(pounds):
    return round(pounds * 0.454, 1)

def kg_to_pounds(kg):
    return round(kg / 0.454, 1)

choice = input("请输入选择值(1 <- 输入磅数,2 <- 输入千克数):,")
if choice == '1':
        pounds = float(input("请输入磅数:"))
        kilograms = pounds_to_kg(pounds)
        print(f"{pounds} 磅等于 {kilograms} 千克")
elif choice == '2':
        kilograms = float(input("请输入千克数:"))
        pounds = kg_to_pounds(kilograms)
        print(f"{kilograms} 千克等于 {pounds} 磅")

作业 3.6
修改 作业 3.6
要求:程序能多次接收用户输入的数据,进行磅与
千克的互换 (千克数 = 磅数 *0.454 ,数据输出时保留 1 位小
数位) ;直到用户输入的数据为 0 时,程序结束。
def pounds_to_kg(pounds):
    return round(pounds * 0.454, 1)

def kg_to_pounds(kg):
    return round(kg / 0.454, 1)
while True
    choice = input("请输入选择值(1 <- 输入磅数,2 <- 输入千克数):,0 <- 结束程序 ")
  
    if choice == '1':
        pounds = float(input("请输入磅数:"))
        kilograms = pounds_to_kg(pounds)
        print(f"{pounds} 磅等于 {kilograms} 千克")
    elif choice == '2':
        kilograms = float(input("请输入千克数:"))
        pounds = kg_to_pounds(kilograms)
        print(f"{kilograms} 千克等于 {pounds} 磅")
    elif choice == '0':
        print("程序结束。")
        break
    else:
        print("无效输入,请重新输入。")
作业3.7
输入一个整数列表,求取其中的最大值、
最小值和所有数据的平均值。
# 作业3.7
num_list = list(map(int, input("请输入一个整数列表(以空格分隔):").split()))

max_num = max(num_list)
min_num = min(num_list)
average = sum(num_list) / len(num_list)

print(f"最大值为:{max_num}")
print(f"最小值为:{min_num}")
print(f"平均值为:{average}")
num_list = eval(input("请输入一个整数列表,以逗号分隔:"))

if all(isinstance(num, int) for num in num_list):
        max_num = max(num_list)
        min_num = min(num_list)
        average = sum(num_list) / len(num_list)

        print(f"输入的整数列表为:{num_list}")
        print(f"最大值为:{max_num}")
        print(f"最小值为:{min_num}")
        print(f"平均值为:{average}")
else:
        print("输入的列表中包含非整数元素,请重新输入整数列表。")

首先使用 eval 函数将输入的字符串转换为列表,然后检查列表中的元素是否都为整数。

如果是整数列表,则计算其中的最大值、最小值和平均值,并输出结果。

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值