python之路--day2

来源:https://www.cnblogs.com/guodengjian/archive/2018/03/18/8595415.html
-Advertisement-
Play Games

1.編程語言的分類 機器語言:二進位指令編程,直接操作硬體,運行效率高,開發效率低 彙編語言:用英文標簽代替二進位指令,也是直接操作硬體,運行效率高,開發效率低 高級語言:用人類的字元編寫程式,電腦無法理解,必須翻譯為電腦能夠理解的語言,才能執行,分為兩種 編譯型,解釋型 編譯型:如c語言,編譯 ...


1.編程語言的分類

  機器語言:二進位指令編程,直接操作硬體,運行效率高,開發效率低

  彙編語言:用英文標簽代替二進位指令,也是直接操作硬體,運行效率高,開發效率低

  高級語言:用人類的字元編寫程式,電腦無法理解,必須翻譯為電腦能夠理解的語言,才能執行,分為兩種---編譯型,解釋型

    編譯型:如c語言,編譯一次,拿到的結果可以重覆運行

        運行過程:翻譯:程式代碼----gcc----機器語言

             運行:機器語言---cpu執行

        執行效率高,開發效率低,跨平臺性差,調試複雜

    解釋型:如python,解釋一條,執行一條

           運行過程:程式代碼--解釋器---位元組碼(一次性翻譯為位元組碼)---機器語言---cpu執行

        開發效率高,跨平臺性好,調試方便,但是執行效率低

 

1.1 python程式的執行流程(參考應用程式的啟動流程)

  啟動python解釋器

  將代碼讀入記憶體

  解釋執行

 

2.變數

  2.1什麼是變數,為什麼要有變數

    變數是一種可以反映出狀態變化的機制,而程式的執行本質就是一系列狀態的變化

   2.2變數的定義

    語法:變數名 = 值   (變數名之對值得引用)

    記憶體會開闢空間用來存放變數值,再把變數名和變數值做一個對應關係----變數名相當於一個標簽

  2.3變數的命名規範

    2.3.1變數名只能是字母,數字或者下劃線的任意組合

    2.3.2變數名的第一個字元不能是數字

    2.3.3關鍵字不能聲明為變數名

  2.4變數的三個特征

    id():返回變數在記憶體中的地址

    type():返回變數的類型

    value():返回變數的值  

    **********  == 比較符號等於號:比較的是變數的值是否相等

        is 身份運算符號:比較的是變數的id是否一樣

  2.5常量

    常量與變數相對應,python中沒有常量的概念,將變數名全部大寫就是約定俗成的常量表示

3.代碼註釋:單行註釋# 多行註釋使用三對雙引號

    註釋可以用中文和英文,但是不要使用拼音

4.文件頭:
    #!/usr/bin/env python  

    # -*- coding: utf-8 -*- 


5.基本數據類型
  5.1數字類型:int整形
  5.2float浮點型
  5.3字元串:在引號之內一串字元
      單雙引號沒有區別,只有一種情況需要考慮他們的使用
        msg = “my name is guo,i'm 18 ysers oid!”
      

       多行字元串時必須使用多引號
        msg = '''
            多行字元串
            時必須使用多引號
            '''
        

        字元串的拼接
          'hello'+'world' = 'helloworld'
          'hello'*2 = 'hellohello'
        註意:字元串相加只能是字元串和字元串相加,而且效率不高,不建議使用

6.列表:在[]中,使用逗號分隔,可以存放多個任意類型的值
    列表使用索引取值:list_info =['name','age',['level','123']]
     list_info[2][0]='level'

7.字典:在{}內,只用逗號隔開,可以存放多個key:value的值,value可以是任意類型
    字典使用key取值:dict_info={'name':'egon','age':18}
            dict_info['name']='egon'

8.布爾類型:只有兩個值True,False
    所有數據類型都自帶bool值;只有在None,0,空(空字元串,空列表,空字典)三種情況下布爾值為False,其餘全部為真

9.格式化輸出:占位符%s,%d
       %s接受字元和數字,%d只接受數字

10基本運算符
    算數運算 + - * / %(取餘) //(地板處--只取商的整數部分) **
    比較運算 == !=(不等於的建議使用方法) <> > < >= <=
    賦值運算 = += -= *= /= %= **= //= 例:count+=1---count = count + 1 其他類似
    邏輯運算   and 邏輯與 如果x是False,x and y 返回False,否則返回y的計算值
          or 邏輯或 如果x是True,它返回True,否則返回y的計算值
          not 邏輯非,如果x是True,返回False,如果x為False,它返回True

11流程式控制制之if...else
    嵌套: if 條件:
         代碼
       elif條件:
         代碼
       else:
         代碼
    

 1 count=0
 2 age=18
 3 while count < 3:
 4     inp_age = input('enter your age: ')
 5     inp_age = int(inp_age)
 6     if inp_age == age:
 7         print('猜對了!')
 8         break
 9     else:
10         print('猜錯了!')
11         count += 1
12         if  count == 3 :
13             print('嘗試次數過多!沒有機會了')
count=0
age=18
while count <= 3:
    inp_age = input('enter your age: ')
    inp_age = int(inp_age)
    if inp_age == age:
        print('猜對了!')
        break
    elif count == 3:
        print('嘗試次數過多!沒有機會了')
        break
    else:
        print('猜錯了!')
        count += 1
        

 


12流程式控制制之while迴圈
      while 條件:
        迴圈體

      # 如果條件為真,那麼迴圈體則執行,執行完畢後再次迴圈,重新判斷條件。。。
      # 如果條件為假,那麼迴圈體不執行,迴圈終止

      迴圈嵌套與tag
        tag=True
        while tag:
          ......
          while tag:
            ........
            while tag:
              tag=False
        當tag=False時,所有while迴圈全部退出

    break:退出本層迴圈
    continue:退出本次迴圈,繼續下一次迴圈
  

 1 tag = True
 2 name = 'egon'
 3 age = 18
 4 while tag:
 5     inp_name = input('enter your name: ')
 6     if inp_name == name:
 7         while tag:
 8                 inp_age = input('enter your age: ')
 9                 inp_age = int(inp_age)
10                 if inp_age == age:
11                     print('login successful')
12                     tag = False
13                 else:
14                     print('login Error')
15     else:
16         print('name Error')

 


    whlie + else
      #與其它語言else 一般只與if 搭配不同,在Python 中還有個while ...else 語句,
      #while 後面的else 作用是指,當while 迴圈正常執行完,中間沒有被break 中止
      #的話,就會執行else後面的語句

 

count = 0
while count <= 5 :
    count += 1
    print("bingo",count)

else:
    print("xxxxxxxxxxxx")

 


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

-Advertisement-
Play Games
更多相關文章
  • 最近做Java Web項目,在.jsp頁面和servlet之間request和response還是有些混淆,查閱了一些資料,總結如下,方便以後使用: 首先,servlet介面是最基本的,提供的五個方法也不多說了,關鍵是瞭解清楚什麼是request,什麼事response。 簡單來說: request ...
  • Problem Description The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large re ...
  • 在業務中遇到了需要判斷文件是否存在的需求,所以順便整理一下python判斷文件是否存在的方法。在操作文件前,檢查文件是否存在也是一個良好的編程習慣。通常來說,有三種常見方式來判斷文件夾或文件是否存在,分別是os模塊,try語句和pathlib模塊。 os模塊 os模塊中的os.path.exists ...
  • 基本術語: 節點的度:書中某一節點擁有的子節點數量。 數的度:該樹中所有節點的度的最大值。 葉節點(終端節點):度為零的節點。 分支節點(非終端節點):度不為零的節點。 根節點(開始節點):樹中的第一個節點。 內部節點:樹中除了根節點之外的節點。 節點的層數:若根節點層數為1,根節點的第n代子節點的 ...
  • manifest文件是用來描述jar包的,它描述了該jar包的代碼是誰的,什麼版本,使用什麼版本的類庫等等。。。。具體如下: 1、基礎格式 manifest 文件的格式是很簡單的,每一行都是 名-值 對應的:屬性名開頭,接著是 ":" ,然後是屬性值,每行最多72個字元,如果需要增加,你可以在下一行 ...
  • 無意中看到了這篇文章,占時還沒用到這個知識,主要解決網頁訪問量增加到一定數量級帶來的網站停滯問題。前些時候也學了JVM相關知識,先碼一下,以後也許有用 以下文章轉至原文http://blog.csdn.net/u014236541/article/details/50008047 JVM參數調優是個 ...
  • 基於java版本的掃碼支付開發 最近做了一個電商,其中有涉及關於支付的問題,花了點小小的時間。因此寫了一個小demo,不能說完美,但是能實現下訂單掃碼支付功能。這裡我選擇的技術是J2EE中的servlet和jsp,支付環境採用的是支付寶中的沙箱環境(基於本人沒有企業級或者個人營業執照,無法申請支付接 ...
  • 前言 在開始工作至今,學習各種各樣的技術之中發現自己的很多Java的基礎知識都忘了⊙﹏⊙b汗。。。 而且越是學習越是發現Java基礎的重要性,所以準備單獨抽一下時間進行Java基礎的重新學習。在重新學習的時候,對這些又有了不同的感悟,於是準備將這些都記載下來,並整理成博客,希望能夠幫助那些需要的人。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...