Python輸出hello world(各行命令詳解)

来源:https://www.cnblogs.com/python960410445/archive/2019/11/18/11885616.html
-Advertisement-
Play Games

創建main.py文件並粘貼下麵代碼 點擊右鍵運行Debug 'main'後,下方的Debug視窗會出現ImportError: No module named 'bottle'這樣的提示,提示導入bottle包出錯 所以我們需要先安裝這兩個包,cmd,輸入pip install bottle 回車 ...


創建main.py文件並粘貼下麵代碼

點擊右鍵運行Debug 'main'後,下方的Debug視窗會出現ImportError: No module named 'bottle'這樣的提示,提示導入bottle包出錯

所以我們需要先安裝這兩個包,cmd,輸入pip install bottle 回車後開始安裝bottle包 Mac 許可權不夠 補上 sudo

#!/usr/bin/python
# coding=utf-8

from bottle import default_app, get, run
from beaker.middleware import SessionMiddleware

# 設置session參數
session_opts = {
    'session.type': 'file',
    'session.cookie_expires': 3600,
    'session.data_dir': '/tmp/sessions/simple',
    'session.auto': True
}

@get('/index/')
def callback():
    return 'Hello World!'

# 函數主入口
if __name__ == '__main__':
    app_argv = SessionMiddleware(default_app(), session_opts)
    run(app=app_argv, host='0.0.0.0', port=9090, debug=True, reloader=True)

在這裡插入圖片描述
我們打開瀏覽器,在地址欄處輸入http://127.0.0.1:9090/index/ 回車後就可以看到Hello World了
在這裡插入圖片描述
詳解:

#!/usr/bin/python

這是標識當前腳本指定用python來執行它,為了防止用戶沒有將python裝在預設的/usr/bin路徑里,系統執行時首先會到env設置里查找python的安裝路徑,再調用對應路徑下的python程式來執行。

# coding=utf-8

這一行說明當前文件用的是utf-8編碼

第4與第5行用於導入bottle包和beaker包的指定模塊
由於bottle框架自身並沒有提供Session的支持,所以使用beaker中間件來實現。

第7到第13行,是創建一個session配置的字典,用來存儲session的存儲類型為文件類型,session過期時間為3600秒,session文件存放路徑為/tmp/sessions/simple (存放在linux系統tmp目錄下的文件,系統定期會自動清理)

第15到17行,我們定義了一個/index/的路由,用於瀏覽器訪問時,可以通過這個路同來定位到這裡(也就是前面瀏覽器輸入url地址,這裡我們可以隨意定義為任何路由都可以),訪問路由的方式我們定義為get方式,當然還可以定義為post、put、delete等訪問路由的方式。

第20行,它標識當前位置為程式的主入口,運行程式時,由這裡開始

第21行,初始化session參數

第22行,啟動WSGI WEB程式,地址為本機地址,訪問埠為9090,開始debug,最後有個參數reloader設定項目代碼有修改時,自動重新啟動web服務,重新載入修改後的代碼


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  •  很幸運參與零售雲快消平臺的公有雲搭建及孵化項目。零售雲快消平臺源於零售雲家電3C平臺私有項目,是與公司業務強耦合的。為了適用於全場景全品類平臺,集團要求項目平臺化,我們搶先並承擔了此任務。並由我來主要負責平臺建設及項目落地。  今天講解在零售雲快消平臺中使用的圖片服務FastD ...
  • 目錄: 一、列表推導式 二、生成器表達式 三、集合生成器 四、生成器面試題 五、解耦簡單介紹 六、函數遞歸相關 一、列表推導式 需求:將[1,3,5]中的每個元素平方 正常思路: 1 new_list = [] 2 for i in [1,3,5]: 3 new_list.append(i*i) 4 ...
  • 本文收錄在Python從入門到精通系列文章系列 1. 瞭解面對對象編程 活在當下的程式員應該都聽過"面向對象編程"一詞,也經常有人問能不能用一句話解釋下什麼是"面向對象編程",我們先來看看比較正式的說法。 "把一組數據結構和處理它們的方法組成對象(object),把相同行為的對象歸納為類(class ...
  • 概述結構體是將零個或多個任意類型的變數,組合在一起的聚合數據類型,也可以看做是數據的集合。聲明結構體 //demo_11.go package main import ( "fmt" ) type Person struct { Name string Age int } func main() { ...
  • 一、記憶體管理機制 先看一段代碼: 1 <?php 2 //記憶體管理機制 3 var_dump(memory_get_usage());//獲取記憶體方法,加上true返回實際記憶體,不加則返回表現記憶體 4 $a = "laruence"; 5 var_dump(memory_get_usage()); ...
  • 根據不同的許可權,在菜單欄顯示不同的功能,只對菜單進行了限制,若對路由也進行限制,可以根據菜單的例子,請自行完善,開發。下麵請認真學習一下laravel的RBAC設計 1、建表(用戶表、角色表、許可權表、用戶角色表、角色許可權表) 1 CREATE TABLE IF NOT EXISTS mr_role ...
  • 微信支付企業付款到零錢功能應用廣泛,比如微信紅包獎勵,業務結算等。通過企業向個人付款,付款資金將直接進入用戶微信零錢。 一 開通條件 ​ 付款資金 企業付款到零錢資金使用商戶號餘額資金。 根據商戶號的賬戶開通情況,實際出款賬戶有做區別: ◆ 預設情況下,企業付款到零錢使用商戶號基本戶(或餘額賬戶)餘 ...
  • 場景 EasyCode是基於IntelliJ IDEA開發的代碼生成插件,支持自定義任意模板(Java,html,js,xml)。只要是與資料庫相關的代碼都可以通過自定義模板來生成。支持資料庫類型與java類型映射關係配置。支持同時生成生成多張表的代碼。每張表有獨立的配置信息。完全的個性化定義,規則 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...