Résumé du problème de la réflexion après la lecture d'une petite tortue

Notes en classe:
Réflexions sur la dernière question:
comme d' habitude lorsque l'affectation directe:

def i(x,y):
    print(x,y)

i(3,5,9)    

Cette erreur inévitable, parce que les deux variables correspondant au nombre de trois
et le dernier à parler dans les paramètres de collecte de classe:

def i(*x,y):
    print(len(x),y)

i(3,5,9)    

A ce stade , il sera erreur, car la valeur par défaut 359 a tous les x, y aucun argument cette fois
si peu tortue sera appelée soit les paramètres clés i tels que:

def i(*x,y):
    print(len(x),y)

i(3,5,y=9)    

Ou ajouter des paramètres par défaut

def i(*x,y=4):
    print(len(x),y)

i(3,5,9)    

seulement à droite

1. fonction directement en fonction du document et aux notes d'écriture avec un « # » Quelle est la différence?
R: La fonction d'écrire le document est de laisser quelqu'un d' autre peut mieux comprendre votre fonction, il est donc une bonne habitude:

>>> def Add(x,y):
    'add two numbers'
    return x+y

***我们看到在函数开头写下的字符串Ta是不会打印出来的,但Ta会作为函数的一部分存储起来,这个我们称之为函数文档字符串,Ta的功能跟注释是一样的。***

函数的文档字符串可以按如下方式访问:
>>> Add.__doc__
'add two numbers'

另外,我们用help()来访问这个函数也可以看到这个文档字符串:
>>> help(Add)
Help on function Add in module __main__:

Add(x, y)
    add two numbers
转载自:https://www.jianshu.com/p/38540d75521c
>>> 

0. écrire une fonction satisfait aux exigences suivantes:
a) est calculée en multipliant l' ensemble des paramètres d' impression et de la base (base = 3) le résultat de
b) si les paramètres dernier paramètre (base = 5), la base est fixée à 5, la base calculée comme la somme ne participe pas.

自己的答案:
def number(x):
    for each in x:
        a = 0
        eng = str(each)
        #注意这里要为str找一个赋值变量
        if eng.endswith('5'):
            a = 1
            break
    all = 0
    #赋值都在for 循环外,避免出错
    for i in x:
        num = int(i)
        all += num
        
    result = 0
    if a == 1:
        result = all * 5
    else:
        result = all * 3

    return result

print(number((14,16,15,1,14,300)))
                    

Leur réponse n'est pas une utilisation très flexible parlé de fonction de contenu de classe
meilleure réponse:

def Sum(*params,base=3):
#添加了一个默认参数base
#用搜集参数符号*,从而使得params可以容纳多个数据
    result = 0
    for i in params:
        result += i
    result *= base

    print('结果是:', result)

Sum(1, 2, 3, 4, 5)
Sum(1, 2, 3, 4, 5, base=5)
#人为的当需要改变时,输入关键字参数使得base=5

输出:
结果是: 45
结果是: 75

Reproduit de: https: //www.jianshu.com/p/38540d75521c

1. Vous cherchez nombre narcissiques
questions posées: Si un nombre à 3 chiffres égal au cube et vous dit ce nombre est le nombre de jonquilles. 153 = 1, par exemple, 3 + 5 3 + 3 ^ 3, 153 est donc un jonquilles numériques. Ecrire un programme pour trouver tous les jonquilles numéros.

自己的答案:
def flower():
#括号可以不用定义参数    
    for x in range(10,1000):
        both = 0
        temp = x
        #这里必须用temp赋值,不然x在while会被改变,从而导致if函数无效
        while  temp:
            a =  temp % 10
            both += a**3
            temp =  temp //10
        
        if both == x:
            print ('水仙花数为:',x)
        else:
            continue    
flower()

Ligne de code:

转自:https://www.jianshu.com/p/38540d75521c
a = [i**3+j**3+k**3 for i in range(1, 10) for j in range(0, 10) for k in range(0, 10) if i*100+j*10+k == i**3+j**3+k**3]

2. Ecrire une findstr fonction (), la fonction statistique du nombre de fois une longueur de 2 sous-chaîne se produisant dans une autre chaîne. Par exemple: En supposant que la chaîne de caractères d'entrée est « Vous ne pouvez pas améliorer votre passé, mais vous pouvez améliorer votre avenir Une fois de temps perdu, la vie est gaspillée .. », la sous-chaîne « im », l'impression est exécutée après la fonction « dans la chaîne de lettre sous chaîne cible PCC apparaît trois fois ".

def findstr():
    a='You cannot improve your past, but you can improve your future. Once time is wasted, life is wasted'
    i=a.count('im')
    print('子字母串在目标字符中总共出现:',i,'次')
findstr()

Après les améliorations:

def findstr():
    print('请输入您想了解的英文字母:',end='')
    a=input()
    while not a.isalpha():
        print('只能输入英文,请重新输入:',end='')
        a=input()
        
    print('请输入您要查询的字母:',end='')
    b = input()
    i=a.count(b)
    print('子字母串在目标字符中总共出现:',i,'次')
findstr()

Résumé: voir ci-dessus

Publié 17 articles originaux · a gagné les éloges 1 · vues 355

Je suppose que tu aimes

Origine blog.csdn.net/cccccccaaaaaaaaa/article/details/105298020
conseillé
Classement