栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【无标题】

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【无标题】

[博学谷学习记录]超强总结,用心分享|人工智能重启之路--Python基础(一)--第四周学习记录

Python基础习题(一)

题目 求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。

a=input('被加数字:')
n=int(input('加几次?:'))
res=0
for i in range(n):
    res+=int(a)
    a+=a[0]
print('结果是:',res)

题目一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

height = 100
distance = 0

for i in range(10):
    a = height                  # 原高度
    height = height / 2         # 弹起高度
    distance = distance + height + a    # 累计总高度
else:
    distance = distance - height  # 减掉最后一次弹起高度

print(f'弹起高度为:{height}') # 弹起高度为:0.09765625
print(f'经过的距离为{distance}') # 经过的距离为299.609375

题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了,第一天共摘了多少。

# 方法一:
'''
思路:1、函数要干什么?--->求第一天摘了多少桃子
2、递归出口,已知条件:第十天,剩一个桃子,即t == 10,n = 1
3、等价关系:
第10天还剩:1
第9天还剩:(f(10)+1)*2=4
第8天还剩:(f(9)+1)*2=10
......
第n天:(f(n+1)+1)*2
'''


# 定义一个函数表示第n天剩余桃子数
def taozi(n):
    if n == 10:
        return 1

    return (taozi(n+1)+1)*2

num = taozi(1)
print(f'猴子一共摘了{num}个桃子')


# 方法二2:
peach=1
for i in range(9):
    peach=(peach+1)*2
print(peach)

 

题目输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。程序分析利用for 语句,条件为输入的字符不为 ‘n’

string=input("输入字符串:")
alp=0
num=0
spa=0
oth=0
for i in range(len(string)):
    if string[i].isspace():
        spa+=1
    elif string[i].isdigit():
        num+=1
    elif string[i].isalpha():
        alp+=1
    else:
        oth+=1
print('space: ',spa)
print('digit: ',num)
print('alpha: ',alp)
print('other: ',oth)

题目 输出 9*9 乘法口诀表。

for i in range(1,10):
    for j in range(1,i+1):
        print('%d*%d=%2ld '%(i,j,i*j),end='')
    print()

使用列表嵌套,完成8名老师随机分配3个办公室。
提示:
定义一个列表存放8位老师
names = ['A','B','C','D','E','F','G','H'],
定义一个列表用来保存3个办公室offices = [[],[],[]]

import random
# 定义一个列表用来保存3个办公室
offices = [[],[],[]]

# 定义一个列表用来存储8位老师的名字
names = ['A','B','C','D','E','F','G','H']
for name in names:
   index = random.randint(0,2)
   offices[index].append(name)
i = 1
for tempNames in offices:
   print("办公室%d的人数为:%d" % (i,len(tempNames)))
   i += 1
   for name in tempNames:
      print("%s" % name, end="")
   print("n")

定义函数findall,要求返回符合要求的所有位置的起始下标,如字符串"helloworldhellopythonhelloc++hellojava"需要找出里面所有的"hello"的位置,返回的格式是一个元组,即:(0,10,21,29)

li = 'helloworldhellopythonhelloc++hellojava'

def find_all(li):
     ret_li = []
     start_index = 0
     while True:
        ret = li.find("hello",start_index)
        if ret != -1:
             ret_li.append(ret)
             start_index = ret + 5
        else:
             break
     return ret_li
print(find_all(li))

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1026183.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号