Score:0

เป็นไปได้ไหมที่จะเรียกใช้ฟังก์ชันผ่าน cli ในสคริปต์ไพ ธ อนแบบไดนามิก

ธง in

ฉันกำลังพยายามเรียกใช้ฟังก์ชันเฉพาะเมื่อเรียกใช้สคริปต์ไพ ธ อนนี้ ฉันมีหลายฟังก์ชันในสคริปต์นี้ ฉันลองใช้โกลบอลแต่ไม่ใช่แป้ง

#!/usr/bin/python3

"""
โมดูลนี้ใช้เพื่อเข้าถึงรหัสบัญชีบริการที่จัดเก็บไว้ในความลับของผู้จัดการความลับ
"""


นำเข้าระบบ
argparse นำเข้า

นำเข้า json
วันที่และเวลานำเข้า
argparse นำเข้า

def parse_arguments():

    parser = argparse.ArgumentParser(description='ข้อมูลประจำตัวของคีย์บัญชีบริการ', formatter_class=argparse.RawDescriptionHelpFormatter)

    parser.add_argument('-p', '--project_name',
                        metavar='<project_name>',
                        help='ชื่อโครงการ GCP เพื่อดึงข้อมูลประจำตัวของคีย์บัญชีบริการที่จัดเก็บไว้ในความลับของผู้จัดการลับ'
                        จำเป็น = จริง)

    parser.add_argument('-n', '--secret_name',
                        metavar='<secret_name>',
                        help='ชื่อของความลับที่จัดเก็บข้อมูลรับรองบัญชีบริการ'
                        จำเป็น = จริง)

    parser.add_argument('-e', '--email_id',
                        metavar='<email_id>',
                        help='ชื่อของความลับที่จัดเก็บข้อมูลรับรองบัญชีบริการ'
                        จำเป็น=เท็จ)

    พาร์เซอร์ = parser.parse_args()
    ส่งคืนโปรแกรมแยกวิเคราะห์


def sa_credentials():
    """
    นี่เป็นวิธีหลักในการเรียกข้อมูลลับของผู้จัดการความลับซึ่งประกอบด้วยข้อมูลประจำตัวของบัญชีบริการ
    """
    ตัวเลือก = parse_arguments ()
    พิมพ์ (ตัวเลือก)

    project_name = option.project_name
    secret_name = option.secret_name

    พิมพ์ ("ใช้งานได้")

ถ้า __name__ == "__main__":
    โกลบอล () [sys.argv [1]]

นี่คือวิธีที่ฉันเรียกใช้ แต่ไม่มีอะไรเกิดขึ้น

# ./test.py sa_credentials -p the-webbing-330212 -n ความลับของฉัน
Score:1
ธง cn

ไม่ใช่แนวปฏิบัติที่ดีที่จะเรียกใช้เมธอดผ่านการโต้แย้ง อาจเป็นความผิดด้านความปลอดภัย

คุณควรใช้สิ่งที่ชอบ หลาม test.py 'call_function_one' [...]

จากนั้นในสคริปต์ของคุณ คุณต้องรับข้อโต้แย้งและทำ:

ถ้า (arg[0] == 'call_function_one'):
  function_one (พารามิเตอร์)

อีกอย่างหนึ่ง คุณสามารถแยกวิเคราะห์อาร์กิวเมนต์ของคุณได้โดยตรงใน หลักเป็นวิธีทั่วไปในการใช้ argument_parser แล้วเรียกใช้ฟังก์ชันของคุณ :)

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา