Python语法基础(三)

if --elif--else


x = int(input("Please enter an integer:"))


if x < 0:
    x = 0
    print("Negative changed to zero")
elif x == 0:
    print("zero")
else:
    print("more")

Python 无switch case

猜数字小游戏

from random import randint
mystery = randint(1,100)
times = 10
print("You have %s times to guess the number."%times)

def guess_number(times):
    for i in range(1,times):
        user_input = int(input("enter:"))
        if user_input == mystery:
            print("Greate,you are right, the number is %s"%mystery)
            break
        elif user_input > mystery:
            print("Your input too big,you have %s times left"%(times-i))
        elif user_input < mystery:
            print("Your input too small,you have %s times left"%(times-i))
    
    print("Game is over...")


guess_number(10)

杨辉三角形

count = int(input("enter:"))
list_a = [1]

for i in range(count):
        print(list_a)
        list_a.append(0)
        list_a = [list_a[k] + list_a[k-1] for k in range(i+2)]#把前面的两个加起来

九九乘法表

print ('\n'.join([' '.join(['%s*%s=%-2s'%(x,y,x*y) for x in range(1,y+1)]) for y in range(1,10)]))

count

dna = 'AAVVSSSXBA'
dna_cnt = {b : dna.count(b) for b in set(dna)}
dna_cnt

function

#定义
def menu(wine, entree,dessert):
    return {'wine':wine, 'entree':entree, 'dessert':dessert}

#正常输入
menu('chardonnay','chicken','cake')

#可指定参数
menu(entree='beef',dessert='bagel',wine='bordeaux')

#参数不定的时候*
def print_args(*args):
    print('Positional args',args)

print_args(1,2,3,'hello')

#keyword参数**
def print_kwargs(**kwargs):
    print('Keyword args:',kwargs)
print_kwargs(first = 1,second = 2)
#Keyword args: {'first': 1, 'second': 2}

#参数为函数
def answer1():
    print("Answer1")
def run_something(func):
    func()
run_something(answer1)
#Answer1


#函数嵌套函数
def exp_factory(n):
    def exp(a):
        return a**n
    return exp

square = exp_factory(2)
square(3)
#相当于
exp_factory(2)(3)

#应用
from time import perf_counter
def timer_2(f):
    def _f(*args):
        t0 = perf_counter()
        f(*args)
        return perf_counter() - t0
    return _f

#匿名函数
double =  lambda x:x*2
double(5)

#filter
my_list  = [1,5,4,6,8,11,3,12]
new_list = list(filter(lambda x: (x%2 == 0), my_list))#将偶数过滤出来

new_list

#map
items = [1,2,3,4,5]
squred = list(map(lambda x: x**2, items))
#对每一个元素做同样的操作
squred

猜你喜欢

转载自blog.csdn.net/mxxxkuku/article/details/95740327