找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 5311|回复: 7

[求助] python基础作业,求大神帮助,急

1

主题

4

帖子

4

积分

贫民

积分
4
Lotus6931 发表于 2017-4-1 13:30:21 | 显示全部楼层 |阅读模式
1.计算用户输入的英文句子中的词语数量,以及词语平均长度,输出计算结果。
2.编写函数,函数的功能,让用户从键盘上输入一个字符串,统计字符串中第一个字符在串中出现次数。调用该函数并显示测试的结果。
回复

使用道具 举报

3

主题

278

帖子

278

积分

侠客

积分
278

热心会员

uitb 发表于 2017-4-1 13:53:50 | 显示全部楼层
闲的蛋疼,第一个给你做了,太简单了,第二题跟第一题差不多的,实在是不想整了,既然是作业,稍微花五分钟看点资料,第二题也就搞定了
  1. #coding = utf-8
  2. #!python3
  3. import re
  4. InputStr = input('please input your sentence:\n')


  5. WordList = re.split('[\s|,|\?|\.|!|;|:|"|\'|(|)|—]+',InputStr)
  6. print(WordList)
  7. print('The words number is : {}'.format(len(WordList)))

  8. l = ''
  9. for word in WordList:
  10.     l +=word

  11. print('The words average length is : {}'.format(len(l)/len(WordList)))
复制代码
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
Lotus6931  楼主| 发表于 2017-4-1 17:46:28 | 显示全部楼层
uitb 发表于 2017-4-1 13:53
闲的蛋疼,第一个给你做了,太简单了,第二题跟第一题差不多的,实在是不想整了,既然是作业,稍微花五分钟 ...

非常感谢您的帮助
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
Lotus6931  楼主| 发表于 2017-4-1 18:20:57 | 显示全部楼层
Lotus6931 发表于 2017-4-1 17:46
非常感谢您的帮助

但是请问如果用列表和字典的话要怎么做呢,第二问怎么统计第一个字符呢
回复 支持 反对

使用道具 举报

3

主题

278

帖子

278

积分

侠客

积分
278

热心会员

uitb 发表于 2017-4-1 19:50:40 | 显示全部楼层
本帖最后由 uitb 于 2017-4-1 19:56 编辑
Lotus6931 发表于 2017-4-1 18:20
但是请问如果用列表和字典的话要怎么做呢,第二问怎么统计第一个字符呢 ...

第一题用列表的话,就是把输入的语句作为字符串,先用空格替换所有标点(str.replace(old,new)方法,old代表要替换的标点,new换成空格,有几种标点就替换几次),然后用字符串的split方法,分割空格,分割完是返回的一个单词列表,用字符串的split做这个有点繁琐,所以我就用的re模块来的。
至于第二个的第一个字符,可以用切片的方法得到,然后在输入的字符串中用count进行统计出现次数,刚刚得到的第一个字符作为参数,如str.count(‘a’)
回复 支持 反对

使用道具 举报

3

主题

278

帖子

278

积分

侠客

积分
278

热心会员

uitb 发表于 2017-4-1 19:57:19 | 显示全部楼层
uitb 发表于 2017-4-1 19:50
第一题用列表的话,就是把输入的语句作为字符串,先用空格替换所有标点(str.replace(old,new)方法,old代 ...

算了,没几下,帮你把第二个做出来你参考下嘛
  1. #coding=utf-8
  2. #!python3

  3. def statistics():
  4.     s = input('please input your sentence:\n')
  5.     first_s = s[:1]
  6.     freq = s.count(first_s)

  7.     return freq


  8. result = statistics()

  9. print(result)
复制代码
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
Lotus6931  楼主| 发表于 2017-4-1 22:06:55 | 显示全部楼层
uitb 发表于 2017-4-1 19:57
算了,没几下,帮你把第二个做出来你参考下嘛

真的太感谢了
回复 支持 反对

使用道具 举报

3

主题

24

帖子

24

积分

贫民

积分
24
ccwybatn 发表于 2017-4-5 17:25:32 | 显示全部楼层
其中有一个也可以再简单一点print(len(re.split(InputStr)))
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表