【python】求助一道关于单词数的python题

本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。

在一行中输出单词个数。

啊哈,题目的本意应该是让我们进行空格的处理,输入一个字符串,然后对空格进行切片,我这里偷了个懒。

读书和健身总有一个在路上

}

这些案例均为在校期间学习《python基础编程》课程的案例,适合初学者练手~
1.输入分数,返回等级

2.摄氏度和华氏度转换

print('输入错误!请检查格式后再试')
t.circle(40,80)#基于乌龟头现在的方向,在左侧绘制一个半径为40,弧度为80的弧形 t.circle(-40,80)#基于乌龟头现在的方向,在右侧绘制一个半径为40,弧度为80的弧形
t.fd(40)#不论是下笔还是提笔,turtle都会向前走40个像素,即单段数码管的长度为40 t.left(90)#绘制完第4条线后,drawline函数让turtle向右转了90度(right(90)),但是,第5条线和第4条线是同方向,因此,需要向左转90度,转回来! '''执行完上一步后,第一个数字就绘制完成了! 但是,在绘制第7条线时drawline函数让turtle向右转了90度(right(90)),此时乌龟头超左。 但是,接下来要绘制新的数字,需要留一定的间隔(20像素),所以要向右走20像素,需要乌龟头朝右,所以要left(180) t.fd(20)#沿着笔的方向前进20,绘制下一个数字 t.fd(-300)#画笔默认的初始位置为画布中心,fd(-300)表示将画笔向左边移动300个像素 t.done()#一定要执行done()函数!否则会一致转圈圈……

8.输入两边长度和两边的夹角度数,求第3边长度

9.输入一个三位数,计算出百位数、十位数、个位数

10.明文和密文转换(凯撒密码)

#明文和密文转换:如果输入abc,则转换为def。如果输入xyz,则转换为abc print(p,end='')#对于非字母的字符,则显示其原来的样子 print(p,end='')#对于非字母的字符,则显示其原来的样子

11.输出1~100之间,能被7整除,但不能被5整除的全部整数

#解题:x能被y整除,意味着x除以y的余数为0,即x%y==0
 

15.多层嵌套:百元买百鸡问题

公鸡5元/只,母鸡3元/只,小鸡1元/只,现有100元,想买100只鸡,共有多少种买法?

#continue语句结束本层本次循环,不结束所属循环层的其他循环
#只要检测到一个奇数,就跳过该奇数,然后判断下一个数是否为奇数,最终会打印所有的偶数
#break语句,结束本循环层全部循环
#只要检测到一个奇数,就跳出for循环,最终只打印了0
#说明:先取出‘B’,打印1次B,然后取出‘I’,if s == 'I'为真,则执行break语句,break的所属循环层为:for s in 'BIT',因此,当s=='I'时,跳出for s in 'BIT',那么整个循环都结束了,不会打印T
print('根据国际卫生组织标准,您的体重质量指数为:{}\n根据国内标准,您的体重质量指数为:{}'.format(WHO,CHINA))

注意:身高单位为米,体重单位kg。\n为换行符。

18.判断输入年份是否为闰年
闰年判断标准:①能被400整除的是闰年 ②能被4整除,且不能被100整除的也是闰年

#上述需求也可以通过python自带的日历满足:

21.找出100以内的奇数并求和

22.输入成绩并计算均值

break#如果输入的是no就跳出本层循环(第一个while True循环),结束输入。如果输入的是yes,while True会自动运行

对上述程序执行过程::

①创建列表变量numbers ,用来存储输入的成绩。

②while True表示条件恒为真,则进入第一个while True后续代码段。

③ x = input('请输入一个成绩:'):用户输入一个成绩,并赋值给x,此时x为字符串格式。

检查输入的是否为数字,如果是数字,则可以正常执行numbers.append(float(x)),即将输入的数字变成浮点型,并追加(append)到numbers列表中。否则,print('非法输入')。

⑤while True表示条件恒为真,继续进入第二个while True后续代码段。

询问是否继续输入成绩,用户输入的内容赋值给变量flag,然后flag.lower()将用户输入的内容转换为小写状态,并用if语句检查用户输入的是否为yes和no。

表示如果用户输入的内容不是yes和no,则告知用户,只能输入yes和no。

表示如果用户输入的是yes或no,则跳出该循环层(注意!该循环层是指第二个while True循环层。),继续运行下一个代码段。

⑦如果用户输入的是yes或no,则跳出第二个while True循环层。继续运行下面的代码:

该代码段表示如果用户输入的内容(flag)是no,那么就跳出该循环层,注意!该循环层是指第一个while True循环层。跳出了第一个while True循环层后,则应该执行print(sum(numbers)/len(numbers)),即计算输入成绩的均值。

所以,在使用while True的程序中,一定要有一个带break语句的条件判断语句来跳出循环层,否则会无限循环,即发生死循环。

23.生成斐波拉契序列

#注意,定义的函数可以没有return
#基于递归的思想,返回100以内的全部斐波拉契数
 

24.定义函数,设置参数默认值

25.定义的函数可以没有参数,也没有return

26.定义函数,含多个参数

:param b: 可变参数,可以传入多个值,多个值会组成一个元组

*b可以改为*m、*h……

27.定义函数,返回多个值,返回的多个值是一个元组

lambda函数特征:函数名fun和存储函数运算结果的变量名fun一体化

#注释:x为变量参数,x**2是需要对x变量进行的运算 #lambda函数可以没有变量参数
#求10的阶乘-法3:基于递归的方法

31.有30人在一家饭店用餐,其中有男人、女人、小孩。每个男人花3元,每个女人花2元,每个小孩花1元,一共花了50元。问男人、女人、小孩各有多少人?

for x in range(1,16):#要保障至少有1个男人,且保证至少有1个女人和1个小孩,因此男人最多15人
 

32.统计列表中单词的词频

#lambda函数中的x表示一个个键值对,x[0]表示键值对中的键,x[1]表示键值对中的值

33.统计三国演义中高频出现的人名(前10个)


#去除停用词、无意义的词
 if len(w)==1:#如果字符的长度为1,说明是标点符号,不参与词频统计~
#下面,对一些词进行修正。如果列表中的词为诸葛亮或孔明曰,则修正为孔明。同理,修正其他人名。
 reword=w#剩余的词仍使用原来的词形,不做修正
 

学校的Python编程基础课程已经结课,本文也就结束更新啦~希望大家有所收获~

}

    关注技术领域的头条文章

    聚合全网技术文章,根据你的阅读喜好进行个性推荐

聚合全网技术文章,根据你的阅读喜好进行个性推荐

深圳市奥思网络科技有限公司版权所有

}

我要回帖

更多关于 python编程题目 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信