永恒的蓝色梦想 发表于 2019-8-20 11:37:16

index=('zero','one','two','three','four','five','six','seven','eight','nine')
def average_string(string):
        try:string=string.split(' ');return index
        except:return'n / a'

永恒的蓝色梦想 发表于 2019-8-20 11:39:54

哇哇哇我竟然和大神解法一样!好激动!

克里斯保罗 发表于 2019-9-28 22:04:38

def average_string(string:str):
    dict_num ={'one':1,'two':2,'three':3,'four':4,'five':5,'six':6,'seven':7}
    total =[]
    temp = string.split(' ')
    count = 0
    for each in temp:
      if each not in dict_num:
            return 'n/a'
      else:
            total.append(dict_num)
            count+=1
    a = sum(total)//count
   
    return ''.join()

XiaoPaiShen 发表于 2019-9-29 04:15:52

看大神

Geoffreylee 发表于 2020-3-12 11:46:15

def f_78(string):
    lst = ['zero', 'one', 'two', 'three', 'four',
         'five', 'six', 'seven', 'eight', 'nine']

    key = string.split(' ')
    try:
      return lst) / len(key))]
    except ValueError:
      return "n/a"


print(f_78('one three two'))

kkk999de 发表于 2020-3-13 19:43:51

学习一下

Frozen83 发表于 2020-3-13 21:11:32

很好

毅行者。。 发表于 2020-3-14 23:00:56

想看回帖

楽叁 发表于 2020-3-15 00:13:02

本帖最后由 楽叁 于 2020-3-15 00:23 编辑

import re

dicts = (‘zero’,'one', 'two', 'three', 'four', 'five',
         'six', 'seven', 'eigth', 'night')
string = 'one three two'
string1 = 'five five five'
string2 = 'ku fthj two'
string3 = 2


def average_string(strs):
    if type(strs) != str:
      return '请输入英文数字,以空格隔开'
    strs = strs.strip()
    strs_list = re.findall(r'\w+', strs)
    acount = 0
    for num in strs_list:
      if num not in dicts:
            return 'n / a'
      else:
            acount += dicts.index(num)

    nums = int(acount / len(strs_list))
    return dicts


print(average_string(string))

holiday_python 发表于 2020-6-29 17:04:43

# 输入字符串以空格分隔,转化为列表
# 新建一个字典,英文字符串为键,阿拉伯数字为值。
# 转化英文数字字符串为阿拉伯数字,求平均数。
import numpy as np

def average_string(st_num):
    st_num_list = st_num.split(' ')
    num_dic = {'zero': 0, 'one': 1, 'two': 2, 'three': 3, 'four': 4,'five': 5, 'six': 6, 'seven': 7, 'eight': 8, 'nine': 9}
    st_num_trans = if i in num_dic.keys() else i for i in st_num_list]
    for j in st_num_trans:
      if str(j).isalpha():
            return "'n/a'"
    else:
      ave = np.mean(st_num_trans)
      return ave

#st_num = input('请输入英文数字字符串: ')
st_num = 'one three two'
print(average_string(st_num))

19971023 发表于 2020-7-31 10:55:54

1

z2x2c8 发表于 2020-8-31 13:05:13

看看

aironeng 发表于 2020-12-2 09:31:07

学习
页: 1 2 3 4 [5]
查看完整版本: Python:每日一题 78(答题领鱼币)