[ python ] 練習做業 - 2

一、寫函數,檢查獲取傳入列表或元組對象的全部奇數位索引對應的元素,並將其做爲新列表返回給調用者。git

lic = [0, 1, 2, 3, 4, 5]
def func(l):
    return l[1::2]
print(func(lic))

 

 

二、寫函數,判斷用戶傳入的對象(字符串、列表、元組)長度是否大於5。函數

def func(s):
    if len(s) > 5:
        print('%s > 5' % s)
    elif len(s) <= 5:
        print('%s <= 5' % s)

 

 

三、寫函數,檢查傳入列表的長度,若是大於2,那麼僅保留前兩個長度的內容,並將新內容返回給調用者。spa

def func(n):
    return n[:2]

 

 

四、寫函數,計算傳入字符串中【數字】、【字母】、【空格] 以及 【其餘】的個數,並返回結果。code

context = input('>>>')

def func(arg):
    dic = {'數字':0, '字母':0, '空格':0, '其餘':0}
    for i in arg:
        if i.isdigit():
            dic['數字'] += 1
        elif i.isalpha():
            dic['字母'] += 1
        elif i.isspace():
            dic['空格'] += 1
        else:
            dic['其餘'] += 1
    return dic

print(func(context))

 

 

五、寫函數,檢查用戶傳入的對象(字符串、列表、元組)的每個元素是否含有空內容,並返回結果。orm

l = ['a', ' b', 'c ', 'hel   lo', 1, 2, 3]
def func(arg):
    for i in arg:
        i = str(i)
        if ' ' in i:
            print('%s 內有空格' % i)

        else:
            print(i)
func(l)

 

 

六、寫函數,檢查傳入字典的每個value的長度,若是大於2,那麼僅保留前兩個長度的內容,並將新內容返回給調用者。對象

dic = {1: 123, 'a': 'hello', 'b':['world', 'nice', 'bigbang']}

def func(dic):
    for k, v in dic.items():
        if not isinstance(v, (int, float, bool)):
            dic[k] = v[:2]
    return dic

print(func(dic))

 

 

七、寫函數,接收兩個數字參數,返回比較大的那個數字。blog

print(max(1, 10))

 

 

八、寫函數,用戶傳入修改的文件名,與要修改的內容,執行函數,完成整個文件的批量修改操做(進階)。索引

import os

file_name = input('文件名:')
be_modify = input('要修改的內容:')
af_modify = input('要替換的內容:')

def func(file, be_f, af_f):
    with open(file, 'r', encoding='utf-8') as read_f, open(file+'_new', 'w', encoding='utf-8') as write_f:
        for line in read_f:
            if be_f in line:
                new_line = line.replace(be_f, af_f)
                write_f.write(new_line)
            else:
                write_f.write(line)
    os.remove(file_name)
    os.rename(file_name + '_new', file_name)


func(file_name, be_modify, af_modify)

 

 

九、寫一個函數完成三次登錄功能,再寫一個函數完成註冊功能ip

def regist():
    while True:
        user = input('user:').strip()
        if not user: continue
        else:
            break
    pwd = input('pwd:').strip()
    dic = ('註冊帳號:{}, 密碼:{}'.format(user, pwd))
    return dic

# print(regist())


def login():
    count = 1
    while count < 4:
        username = input('username:')
        password = input('password:')
        if username == 'hkey' and password == '123':
            print('登陸成功.')
            return 
        else:
            print('登陸失敗.')
        count += 1

login()
相關文章
相關標籤/搜索