python基础练习题4

目录

1、求一个十进制的数值的二进制的0、1的个数

2、实现一个用户管理系统(要求使用容器保存数据) [{name: xxx, pass: xxx, ……},{},{}]

3、求1~100之间不能被3整除的数之和

4、给定一个正整数N,找出1到N(含)之间所有质数的总和

5、计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)

6、给定一个10个元素的列表,请完成排序(注意,不要使用系统api)

7、求 a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。

8、合并两个有序数组,合并后还是有序列表

9、给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前


1、求一个十进制的数值的二进制的0、1的个数

num = int(input("num:"))
bin_num = bin(num)
count_0 = 0
count_1 = 0
bin_list_num = list(bin_num[2:])
for i in bin_list_num:
    if int(i) == 0:
        count_0 += 1
    else:
        count_1 += 1
print(f'将{num}转换为二进制为:{bin(num)[2:]}')
print(f'其中0的数量为:{count_0}个')
print(f'其中1的数量为:{count_1}个')

2、实现一个用户管理系统(要求使用容器保存数据) [{name: xxx, pass: xxx, ……},{},{}]

users = []

# 用户类,包含基本信息
class User:
    def __init__(self, name, password, email=None):
        self.name = name
        self.password = password
        self.email = email  # 可选的电子邮件字段

    def __str__(self):
        return f"User(Name: {self.name}, Password: {self.password}, Email: {self.email})"

# 用户管理系统
class UserManager:
    def __init__(self):
        self.users = users  

    def add_user(self, user):
        self.users.append(user.__dict__)
        print(f"User {user.name} added successfully.")

    def get_user(self, name):
        for user_info in self.users:
            if user_info['name'] == name:
                return user_info
        return None

    def list_users(self):
        for user_info in self.users:
            print(user_info)


user_manager = UserManager()

# 添加用户
user1 = User('张三', 'password123')
user2 = User('李四', 'lisi963')
user_manager.add_user(user1)
user_manager.add_user(user2)

# 列出所有用户
print("List of users:")
user_manager.list_users()

# 根据用户名获取用户信息
lisi_info = user_manager.get_user('李四')
if lisi_info:
    print(lisi_info)

3、求1~100之间不能被3整除的数之和

sum_num = 0
for i in range(1,101):
    if i % 3 != 0:
        print(i)
        sum_num += i
print(sum_num)

4、给定一个正整数N,找出1到N(含)之间所有质数的总和

n = int(input("int:"))
sum_num = 0
def is_prime(n):
    if n < 2:
        return False
    elif n == 2:
        return True
    else:
        for i in range(2, n):
            if n % i == 0:
                return False
            else:
                return True
            
for i in range(1,n+1):
    if is_prime(i) == True:
        print(i)
        sum_num += i
print("sum_num:",sum_num)

5、计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)

def calculate_pi(iterations):
    pi = 0.0
    for i in range(iterations):
        if i % 2 == 0:
            pi += 1 / (2 * i + 1)
        else:
            pi -= 1 / (2 * i + 1)
    return 4 * pi

pi = calculate_pi(1000)
print(f"pi: {pi}")

6、给定一个10个元素的列表,请完成排序(注意,不要使用系统api)

def bubble_sort(arr):
    n = len(arr)
    for i in range(n):
        for j in range(0, n-i-1):
            if arr[j] > arr[j+1]:
                arr[j], arr[j+1] = arr[j+1], arr[j]


my_list = [64, 34, 25, 12, 22, 11, 90, 88, 7, 16, 4]
bubble_sort(my_list)
print("Sorted list:")
print(my_list)

7、求 a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。


def sum_of_series(a, n):
    if not (1 <= a <= 9) or n <= 0:
        print("重新输入")

    sum_i = 0
    current_term = 0
    power_of_ten = 1

    for i in range(n):
        current_term = current_term * 10 + a
        sum_i += current_term
        power_of_ten *= 10

    return sum_i


a = 3  
n = 5  
result = sum_of_series(a, n)
print(f"a + aa + aaa + ... + aaaa (where a={a} and n={n}) is: {result}")

8、合并两个有序数组,合并后还是有序列表

def merge_sorted_arrays(arr1, arr2):
    merged_array = arr1 + arr2
    merged_array.sort()
    return merged_array

arr1 = [1, 3, 5]
arr2 = [2, 4, 6]

sorted_merged_array = merge_sorted_arrays(arr1, arr2)
print("合并后的排序数组:", sorted_merged_array)

9、给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前

def move(arr):
    index = 0  # 偶数的当前位置

    for num in arr:
        if num % 2 == 0:
            # 将偶数移动到数组的前端
            arr[index], num = num, arr[index]
            # 移动偶数位置指针
            index += 1

    return arr

A = [1, 2, 3, 4, 5, 6, 7, 8]
A = move(A)
print(A)

相关推荐

  1. python基础练习题4

    2024-03-24 11:46:03       17 阅读
  2. python 基础练习题

    2024-03-24 11:46:03       15 阅读
  3. python 基础练习题3

    2024-03-24 11:46:03       20 阅读
  4. python基础练习题5

    2024-03-24 11:46:03       20 阅读
  5. python基础练习题6

    2024-03-24 11:46:03       16 阅读
  6. 4. python练习题4-水仙花数

    2024-03-24 11:46:03       14 阅读
  7. python-基础(4)-list

    2024-03-24 11:46:03       12 阅读
  8. python基础练习 序列求和

    2024-03-24 11:46:03       21 阅读
  9. python基础练习大全

    2024-03-24 11:46:03       24 阅读

最近更新

  1. 微软edge浏览器全解析

    2024-03-24 11:46:03       0 阅读
  2. react根据后端返回数据动态添加路由

    2024-03-24 11:46:03       0 阅读
  3. RedHat运维-Ansible自动化运维基础22-rhel-system-roles

    2024-03-24 11:46:03       0 阅读
  4. 深入浅出:Scikit-Learn基础教程

    2024-03-24 11:46:03       0 阅读
  5. python class

    2024-03-24 11:46:03       0 阅读
  6. 10.pwn ROP(栈溢出攻击的核心)

    2024-03-24 11:46:03       0 阅读
  7. sklearn基础教程

    2024-03-24 11:46:03       0 阅读
  8. 跨境支付新篇章:引领电商潮流

    2024-03-24 11:46:03       0 阅读

热门阅读

  1. 机器学习流程—AutoML

    2024-03-24 11:46:03       18 阅读
  2. 主成分分析法的简介及应用

    2024-03-24 11:46:03       19 阅读
  3. 数据库 和数据库之间的关系

    2024-03-24 11:46:03       21 阅读
  4. 04 牛顿法、高斯牛顿法及 Cpp 实现

    2024-03-24 11:46:03       17 阅读
  5. 【保姆级讲解服务器硬件的基础知识】

    2024-03-24 11:46:03       20 阅读
  6. [深度学习] 常见名称概念

    2024-03-24 11:46:03       20 阅读
  7. SQL经典面试题

    2024-03-24 11:46:03       26 阅读
  8. 设计模式(行为型设计模式——访问者模式)

    2024-03-24 11:46:03       22 阅读
  9. 5.5.7、【AI技术新纪元:Spring AI解码】Redis

    2024-03-24 11:46:03       20 阅读