

 AWS Cloud9 ist für Neukunden nicht mehr verfügbar. Bestehende Kunden von AWS Cloud9 können den Dienst weiterhin wie gewohnt nutzen. [Weitere Informationen](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Python-Tutorial für AWS Cloud9
<a name="sample-python"></a>

Dieses Tutorial zeigt Ihnen, wie Sie Python-Code in einer AWS Cloud9 Entwicklungsumgebung ausführen.

Wenn Sie diesem Tutorial folgen, kann dies zu Gebühren für Ihr AWS Konto führen. Dazu gehören mögliche Gebühren für Services wie Amazon Elastic Compute Cloud (Amazon EC2) und Amazon Simple Storage Service (Amazon S3). Weitere Informationen finden Sie unter [Amazon EC2 – Preise](https://aws.amazon.com/ec2/pricing/) und [Amazon S3 – Preise](https://aws.amazon.com/s3/pricing/).

**Topics**
+ [Voraussetzungen](#sample-python-prereqs)
+ [Schritt 1: Installieren von Python](#sample-python-install)
+ [Schritt 2: Code hinzufügen](#sample-python-code)
+ [Schritt 3: Ausführen des Codes](#sample-python-run)
+ [Schritt 4: Installieren und konfigurieren Sie AWS SDK für Python (Boto3)](#sample-python-sdk)
+ [Schritt 5: AWS SDK-Code hinzufügen](#sample-python-sdk-code)
+ [Schritt 6: Führen Sie den AWS SDK-Code aus](#sample-python-sdk-run)
+ [Schritt 7: Bereinigen](#sample-python-clean-up)

## Voraussetzungen
<a name="sample-python-prereqs"></a>

Bevor Sie dieses Tutorial verwenden, stellen Sie sicher, dass die folgenden Anforderungen erfüllt sind.
+ **Sie haben eine AWS Cloud9 EC2-Entwicklungsumgebung**

  In diesem Tutorial wird davon ausgegangen, dass Sie eine EC2-Umgebung besitzen und dass die Umgebung mit einer Amazon EC2-Instance verbunden ist, die Amazon Linux oder Ubuntu Server ausführt. Details dazu finden Sie unter [Eine EC2 Umgebung erstellen](create-environment-main.md).

  Wenn Sie mit einer anderen Umgebung oder einem anderen Betriebssystem arbeiten, müssen Sie die Anweisungen in diesem Tutorial möglicherweise anpassen.
+ **Sie haben die AWS Cloud9 IDE für diese Umgebung geöffnet**

  Wenn Sie eine Umgebung AWS Cloud9 öffnen, wird die IDE für diese Umgebung in Ihrem Webbrowser geöffnet. Details dazu finden Sie unter [Öffnen einer Umgebung in AWS Cloud9](open-environment.md).

## Schritt 1: Installieren von Python
<a name="sample-python-install"></a>

1. Bestätigen Sie in einer Terminalsitzung in der AWS Cloud9 IDE, ob Python bereits installiert ist, indem Sie den **`python --version`**Befehl ausführen. (Um eine neue Terminalsitzung zu starten, wählen Sie in der Menüleiste **Window (Fenster)**, **New Terminal (Neues Terminal)** aus.) Wenn Python installiert ist, fahren Sie mit [Schritt 2: Code hinzufügen](#sample-python-code) fort.

1. Führen Sie den Befehl ** `yum update`** für (Amazon Linux) oder **`apt update`** für (Ubuntu Server) aus, um sicherzustellen, dass die Sicherheitsupdates und Fehlerbehebungen auf dem aktuellen Stand sind.

   Für Amazon Linux:

   ```
   sudo yum -y update
   ```

   Für Ubuntu Server:

   ```
   sudo apt update
   ```

1. Installieren Sie Python, indem Sie den **`install`**-Befehl ausführen.

   Für Amazon Linux:

   ```
   sudo yum -y install python3
   ```

   Für Ubuntu Server:

   ```
   sudo apt-get install python3
   ```

## Schritt 2: Code hinzufügen
<a name="sample-python-code"></a>

Erstellen Sie in der AWS Cloud9 IDE eine Datei mit dem folgenden Inhalt und speichern Sie die Datei unter dem Namen`hello.py`. (Um eine Datei zu erstellen, wählen Sie in der Menüleiste **File (Datei)**, **New File (Neue Datei)** aus. Um die Datei zu speichern, wählen Sie **Datei**, **Save (Speichern)**.)

```
import sys

print('Hello, World!')

print('The sum of 2 and 3 is 5.')

sum = int(sys.argv[1]) + int(sys.argv[2])

print('The sum of {0} and {1} is {2}.'.format(sys.argv[1], sys.argv[2], sum))
```

## Schritt 3: Ausführen des Codes
<a name="sample-python-run"></a>

1. Wählen Sie in der AWS Cloud9 IDE in der Menüleiste „**Ausführen**“, „**Konfigurationen ausführen**“, „**Neue Ausführungskonfiguration**“.

1. Auf der Registerkarte **[New] - Stopped (Angehalten)** Geben Sie `hello.py 5 9` für **Befehl** ein. Im Code repräsentiert `5` `sys.argv[1]` und `9` repräsentiert `sys.argv[2]`.

1. Wählen Sie **Run (Ausführen)** und vergleichen Sie die Ausgabe.

   ```
   Hello, World!
   The sum of 2 and 3 is 5.
   The sum of 5 and 9 is 14.
   ```

1. Wählt standardmäßig AWS Cloud9 automatisch einen Runner für Ihren Code aus. Um den Runner zu ändern, wählen Sie **Runner** und dann **Python 2** oder **Python 3**.
**Anmerkung**  
Sie können benutzerdefinierte Runner für bestimmte Python-Versionen erstellen. Details hierzu finden Sie unter [Einen Builder oder Runner erstellen](build-run-debug.md#build-run-debug-create-builder-runner).

## Schritt 4: Installieren und konfigurieren Sie AWS SDK für Python (Boto3)
<a name="sample-python-sdk"></a>

Das AWS SDK für Python (Boto3) ermöglicht es Ihnen, Python-Code zu verwenden, um mit AWS Diensten wie Amazon S3 zu interagieren. Sie können dieses Beispiel so erweitern, dass Sie das SDK für das Erstellen eines Amazon S3-Buckets, das Auflisten der verfügbaren Buckets und das anschließende Löschen des Buckets zu nutzen, den Sie gerade erstellt haben.

### Installieren von pip
<a name="sample-python-sdk-install-pip"></a>

Bestätigen Sie in der AWS Cloud9 IDE, ob die aktive Version von Python bereits installiert `pip` ist, indem **`python -m pip --version`**Sie den Befehl ausführen. Wenn `pip` installiert ist, fahren Sie mit dem nächsten Abschnitt fort.

Führen Sie die folgenden Befehle aus, um `pip` zu installieren. Da sich sudo in einer anderen Umgebung als Ihr Benutzer befindet, müssen Sie die zu verwendende Version von Python angeben, wenn sie sich von der aktuellen Aliasversion unterscheidet.

```
curl -O https://bootstrap.pypa.io/get-pip.py # Get the install script.
sudo python3 get-pip.py                     # Install pip for Python 3.
python -m pip --version                      # Verify pip is installed.
rm get-pip.py                                # Delete the install script.
```

Weitere Informationen finden Sie unter [Installation](https://pip.pypa.io/en/stable/installing/) auf der `pip`-Website.

### Installieren Sie den AWS SDK für Python (Boto3)
<a name="sample-python-sdk-install-sdk"></a>

Installieren Sie nach der Installation den`pip`, AWS SDK für Python (Boto3) indem Sie den **`pip install`**Befehl ausführen.

```
sudo python3 -m pip install boto3  # Install boto3 for Python 3.
python -m pip show boto3            # Verify boto3 is installed for the current version of Python.
```

Weitere Informationen finden Sie im Abschnitt „Installation“ von [Quickstart](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html) im AWS SDK für Python (Boto3).

### Richten Sie die Anmeldeinformationsverwaltung in Ihrer Umgebung ein
<a name="sample-python-sdk-credentials"></a>

Jedes Mal, wenn Sie den verwenden, AWS SDK für Python (Boto3) um einen AWS Dienst aufzurufen, müssen Sie beim Anruf eine Reihe von Anmeldeinformationen angeben. Diese Anmeldeinformationen bestimmen, ob das SDK über die erforderlichen Berechtigungen verfügt, um den Anruf durchzuführen. Wenn die Anmeldeinformationen nicht die erforderlichen Berechtigungen abdecken, schlägt der Aufruf fehl.

Um Ihre Anmeldeinformationen in der Umgebung zu speichern, folgen Sie den Anweisungen unter [AWS-Services Aus einer Umgebung anrufen in AWS Cloud9](credentials.md), und kehren Sie dann zu diesem Thema zurück.

Weitere Informationen finden Sie unter [Anmeldeinformationen](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html) im AWS SDK für Python (Boto3).

## Schritt 5: AWS SDK-Code hinzufügen
<a name="sample-python-sdk-code"></a>

Fügen Sie Code hinzu, der Amazon S3 zum Erstellen eines Buckets, zum Auflisten der verfügbaren Buckets und zum optionalen Löschen des soeben erstellten Buckets verwendet.

Erstellen Sie in der AWS Cloud9 IDE eine Datei mit dem folgenden Inhalt und speichern Sie die Datei unter dem Namen`s3.py`.

```
import sys
import boto3
from botocore.exceptions import ClientError


def list_my_buckets(s3_resource):
    print("Buckets:\n\t", *[b.name for b in s3_resource.buckets.all()], sep="\n\t")


def create_and_delete_my_bucket(s3_resource, bucket_name, keep_bucket):
    list_my_buckets(s3_resource)

    try:
        print("\nCreating new bucket:", bucket_name)
        bucket = s3_resource.create_bucket(
            Bucket=bucket_name,
            CreateBucketConfiguration={
                "LocationConstraint": s3_resource.meta.client.meta.region_name
            },
        )
    except ClientError as e:
        print(
            f"Couldn't create a bucket for the demo. Here's why: "
            f"{e.response['Error']['Message']}"
        )
        raise

    bucket.wait_until_exists()
    list_my_buckets(s3_resource)

    if not keep_bucket:
        print("\nDeleting bucket:", bucket.name)
        bucket.delete()

        bucket.wait_until_not_exists()
        list_my_buckets(s3_resource)
    else:
        print("\nKeeping bucket:", bucket.name)


def main():
    import argparse

    parser = argparse.ArgumentParser()
    parser.add_argument("bucket_name", help="The name of the bucket to create.")
    parser.add_argument("region", help="The region in which to create your bucket.")
    parser.add_argument(
        "--keep_bucket",
        help="Keeps the created bucket. When not "
        "specified, the bucket is deleted "
        "at the end of the demo.",
        action="store_true",
    )

    args = parser.parse_args()
    s3_resource = (
        boto3.resource("s3", region_name=args.region)
        if args.region
        else boto3.resource("s3")
    )
    try:
        create_and_delete_my_bucket(s3_resource, args.bucket_name, args.keep_bucket)
    except ClientError:
        print("Exiting the demo.")


if __name__ == "__main__":
    main()
```

## Schritt 6: Führen Sie den AWS SDK-Code aus
<a name="sample-python-sdk-run"></a>

1. Wählen Sie auf der Menüleiste **Run** (Ausführen), **Run Configurations** (Run-Konfigurationen), **New Run Configuration** (Neue Run-Konfiguration) aus.

1. Geben Sie **unter Command** den Namen des Buckets ein`s3.py my-test-bucket us-west-2`, der erstellt werden soll, und `us-west-2` geben Sie die ID der AWS Region ein, in der Ihr Bucket erstellt wurde. `my-test-bucket` Standardmäßig wird Ihr Bucket vor dem Beenden des Skripts gelöscht. Um Ihren Bucket zu behalten, fügen Sie Ihrem Befehl `--keep_bucket` hinzu. Eine Liste der AWS Regionen IDs finden Sie unter [Amazon Simple Storage Service Endpoints and Quotas](https://docs.aws.amazon.com/general/latest/gr/s3.html) in der *Allgemeine AWS-Referenz*.
**Anmerkung**  
Amazon S3 S3-Bucket-Namen müssen überall eindeutig sein AWS— nicht nur in Ihrem AWS Konto.

1. Wählen Sie **Run (Ausführen)** und vergleichen Sie die Ausgabe.

   ```
   Buckets:
   
           a-pre-existing-bucket
   
   Creating new bucket: my-test-bucket
   Buckets:
   
           a-pre-existing-bucket
           my-test-bucket
   
   Deleting bucket: my-test-bucket
   Buckets:
   
           a-pre-existing-bucket
   ```

## Schritt 7: Bereinigen
<a name="sample-python-clean-up"></a>

Um zu verhindern, dass Ihr AWS Konto nach Abschluss dieses Tutorials ständig belastet wird, löschen Sie die AWS Cloud9 Umgebung. Detaillierte Anweisungen finden Sie unter [Löschen einer Umgebung in AWS Cloud9](delete-environment.md).