亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Python 中將字符串旋轉一個字符的最佳實踐方法是什么?

在 Python 中將字符串旋轉一個字符的最佳實踐方法是什么?

慕桂英4014372 2022-12-14 20:30:19
我正在做一個 codecademy 任務,想知道以下哪組代碼被認為是最佳實踐:任務是創建一個函數,給定一個字符串 username ,將所有字母向右移動一位。例如,用戶名:AbeSimp 將變為 pAbeSim,這將成為密碼并存儲在字符串密碼中。這是我的代碼:def password_generator(username):    password = ""    password = username[-1] + username[:-1]    return password解決方案代碼是:def password_generator(username):    password = ""    for i in range(0, len(user_name)):       password += user_name[i-1]    return password任何解釋表示贊賞 - 謝謝!
查看完整描述

3 回答

?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

IMO 的最佳實踐版本是:


def password_generator(username: str) -> str:

    """Generate a terrible password by rotating the username."""

    return username[-1] + username[:-1]

擺脫死代碼。不要進行要覆蓋的分配。不要在切片會做的地方使用循環。而且,如果一個變量不會在多個地方使用(例如在return語句中),那么即使給它命名 IMO 也沒有意義。


查看完整回答
反對 回復 2022-12-14
?
夢里花落0921

TA貢獻1772條經驗 獲得超6個贊

你的代碼很好。我想知道您從哪里獲得該解決方案,該解決方案在效率或語法上似乎都不正確。因為涉及 for 循環的額外復雜性。



查看完整回答
反對 回復 2022-12-14
?
弒天下

TA貢獻1818條經驗 獲得超8個贊

我明白你在問什么,我想我只有你需要的代碼。


from random import shuffle


def password_generator(username):

    username = list(username)

    shuffle(username)

    return ''.join(username)

print(password_generator('THIS-IS-USERNAME'))

我得到的輸出是:


SNE--SSHIATIRMEU


Process finished with exit code 0

它THIS-IS-USERNAME改為SNE--SSHIATIRMEU


希望這對你有幫助


查看完整回答
反對 回復 2022-12-14
  • 3 回答
  • 0 關注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號