兔塔 发表于 2020-2-3 19:55:15

python第19课,课后题

def fun1(*param):
    chara = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
    num = '1234567890'
    space = ' '
    length = len(param)
    for i in range(length):
      a,b,c,d = 0,0,0,0
      for m in param:   
            if m in chara:
                a+=1
            elif m in num:
                b +=1
            elif m in space:
                c += 1
            else:
                d += 1
      print('第', i+1, '个字符串共有:英文字母', a, '个,数字', b, '个,空格', c, '个,其他字符', d, '个。')
   
##temp = input('输入字符串:')
##fun1(temp)

fun1('naxrg782 ', 'nwz7236 ')

为什么这样子的代码是正常的,但是如果用被注释掉的那两行输入,不管输入的格式是列表还是元组,它都会认为只有一个字符串?
拜托了~谢谢♪(・ω・)ノ

冬雪雪冬 发表于 2020-2-3 20:04:02

无论你输入的是什么,input函数返回的都是一个字符串。

你再掐我试试 发表于 2020-2-3 23:32:41

可以看看速查宝典里面input函数的介绍。

XiaoPaiShen 发表于 2020-2-4 07:32:08

def fun1(*param):
    chara = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
    num = '1234567890'
    space = ' '
    length = len(param)
    for i in range(length):
      a,b,c,d = 0,0,0,0
      for item in param:
            for char in item:
                if char in chara:
                  a+=1
                elif char in num:
                  b +=1
                elif char in space:
                  c += 1
                else:
                  d += 1

      print('第', i+1, '个字符串共有:英文字母', a, '个,数字', b, '个,空格', c, '个,其他字符', d, '个。')
   
temp = input('输入字符串:') # 输入 'naxrg782 ','nwz7236 '
input_list =

fun1(*input_list)

# fun1('naxrg782 ', 'nwz7236 ')
页: [1]
查看完整版本: python第19课,课后题