跟著運維組學Python基礎 day01

計算機基礎知識

cpu

: 人類的大腦 用途: 用於計算和處理

內存: 臨時存儲數據 用途: 解決硬盤和cpu的速度差

硬盤: 永久存儲數據

操作系統: 是一個特殊的軟件,調度硬件和軟件之間的數據交互

python2和python3區別

  • Py2: 源碼不統一, 重複代碼, 維護成本高
  • Py3: 源碼統一, 沒有重複代碼, 維護成本低
  • 字符串類型不同 py3: str bytes,py2: unicode str,py2中的unicode對應py3中的str,py2中的str對應py3中的bytes
  • 默認解釋器編碼 py2: 默認使用解釋器編碼asciipy3 默認使用解釋器編碼utf-8
  • 輸入 py2:raw_input("你好") py3:input("你好")
  • 輸入 py2:print "你好" py3:print("你好")
  • int int long除法
  • range和xrang py2:range 在內部立即把所有的值創建xrange 不會再內部立即創建,而是循環時,邊循環邊創建,py3:range 不會再內部立即創建,而是循環時,邊循環邊創建
  • 模塊和包 py2:文件中必須有_ init _.py,py3:不需要
  • 字典keys py2:列表,py3:迭代器,可以循環但不可以索引valuespy2:列表py3:迭代器,可以循環但不可以索引itemspy2:列表,py3:迭代器,可以循環但不可以索引
  • map/filter py2:返回列表,py3:返回迭代器,可以循環但不可以索

python是一個編程語言(重點)

python是強類型定義語言 動態 解釋型

編譯型、解釋型語言的區別和特點

  • 編譯型

特點: 只編譯一次

優點: 運行速度快

缺點: 開發速度慢

代表語言: C、C++

  • 解釋型

特點:邊編譯邊執行

優點: 開發速度快

缺點: 運行速度慢

代表語言: Python

python的優缺點

優點:

開發效率高, 可跨平臺, 可嵌入, 可擴展, 高級語言, 代碼簡單, 優雅, 明確

缺點:

相對C慢, 代碼不能加密, 不能利用多線程

種類:

cpython 官方推薦安裝 轉成c的字節碼

jython 轉換成java的字節碼

irnopython 轉換成C#(.NET)字節碼

pypy 轉換成動態變異 開發快 運行快

print()

print(),字符串,數字,判斷,前期全靠print來排bug

<code>print('hello world!')# 輸出結果hello world!/<code>

變量

什麼是變量?

<code>x = 1+2+3+4+5 # x=15y = x*3/2 # 15*3/2=22.5z = (y+100) / 24 # (22.5+100)/24=5.104166666666667print(x,y,z)# 輸出結果1522.55.104166666666667/<code> 

這裡的x,y,z就是變量,代指一些內容,簡單的可以理解就是把右邊的值給了左邊那個字母,左邊那個字母這個時候就稱之為變量,這裡的x、y、z就是變量。(後面還會繼續學習)

作用:

  • 作為一個臨時存儲的中間值
  • 給一些複雜難記的起一個容易記住的名字

定義變量:

  • 變量名
  • 賦值操作 =
  • 值 = 後面的內容

變量命名規則:

  • 變量全部由數字,字母,下劃線任意組合
  • 不能以數字開頭
  • 不能是python的關鍵字以下關鍵字不能聲明為變量['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
  • 要具有描述性,要具有意義
  • 不能使用中文和拼音
  • 要區分大小寫
  • 推薦寫法:駝峰體下劃線

變量的練習:

<code># 題目:看下面的變量設置是否正確?x8 = 100 # Trueb_ = 12 # True4g = 32 # True_ = 11# True*r = 12 # Falser3t4 = 10 # Truet_ = 66 # True/<code>

變量的小高級:

<code># 題目:給出以下的結果?age1 = 18age2 = age1age3 = age2age2 = 12print(age1,age2,age3)# 輸出結果181218# 為什麼會這樣?# 1. 執行順序,從上到下# 2. 賦值在下面的會將上面的賦值取代,變成下面新的值,指向發生了改變,而不是變量本身。/<code>

變量識記:

  • 變量只能指向數據,不能指向變量
  • 變量在內存中是唯一命名的
  • 變量代指一些複雜過長的數據

常量

常量的定義

  • 變量名全部大寫,放在文件的最上面,如:ALEX_AGE = 50常量不建議修改
  • 生活中一直不變的,如π,身份證號碼
  • 在python中沒有真正的常量,為迎合其他語言的口味,全部大寫的變量稱之為常量
  • const int count = 60;一旦定義為常量,更改即會報錯

註釋

用途:

幫助理解,給一些不太能夠理解的的寫一個描述,讓咱們寫的程序好理解

兩種表示方法:

  • 單行註釋: # 只能註釋一行,不能換行 註釋的代碼是不執行的
  • 多行註釋: ''' ''' 支持換行

格式:

<code>s1 = 'hello world!'單行註釋:# s2 = 'ni hao shi jie' # 我就是被#號註釋掉的內容多上註釋:'''床前明月光地上鞋兩雙舉頭望明月其中就有你'''/<code>

基礎數據類型初識

整型 (int): 數值型

<code>print(23+37)print(25-3)print(2*6)print(6/3)# 輸出結果6022122.0/<code>

字符串 (str): 漢字、字母

  • python中用引號引起來的就是字符串 如:c = """shijie""" # 是字符串
  • 字符串拼接只能相乘或相加字符串+: 字符串和數字不能進行相加字符串* : 字符串和數字相乘

布爾值 (bool):

  • True 真 1
  • False 假 0

還有其他的都是比較重要的:列表(list)如[1,a]、元組(tuple)如:(1,a,)、字典(dict)如:{'a':1,'b':2}、集合(set)如:{'apple', 'orange', 'apple'}

跟著運維組學Python基礎 day01

input (用戶輸入)

用途:

用戶輸入

識記點:

python3版本中, input獲取到的類型全部都是字符串類型(重點)

格式:

<code>示例一improt getpass # 調用python getpass模塊username = input('請輸入一個內容: ') # 提示語句passwd  = getpass.getpass('請輸入密碼: ')示例二# 輸出結果>>> my_input = int(input('請輸入一個數字: '))請輸入一個數字: 6>>> num = my_input + 4>>> print(num)10>>> print(type(num))<class># 字符串與數值型無法相加# 通過int將str轉換成數值型/<class>/<code>

if 如果條件判斷

if 如果選擇的5種條件

  • 單獨if (單純選擇)

切記:tab和空格不能混著用

格式:

<code>if 條件: # 條件 一般用來做判斷 > < ==print(1)/<code>

例題:

<code> print(111) if 2 < 1: # 如果該條件成立     print(666) # 就進入到這個裡面執行print(666) print(222) # 如果條件不成立就執行print(222)  # 輸出結果 111 222# 思考以下的結果 if 2 > 1: print(666) print(222)/<code>

練習題:

<code> print(123) if 3 > 5:   print(4) print(456) if 4 > 3:   print(7) print(8)/<code>
  • if else (二選一)

格式:

<code> if 條件:     結果 else:     結果/<code>

例題:

<code>print(1)if 3 > 2:  print(11)    print(23)    my_input = input('請輸入你要選擇的數字: ')    print(my_input)else:  print(45)print(3)# 輸出結果:11123/<code>
  • if elif elif (多選一)

格式:

<code> if 條件:     結果 elif 條件:     結果 elif 條件:     結果/<code>

例題:

<code>num = int(input('猜點數:'))if num == 1:    print('晚上請你吃飯')elif num == 3:    print('一起溜達')elif num == 2:    print('請你大寶劍')/<code>
  • if elif elif else (多選一)

格式:

<code> if 條件:     結果 elif 條件:     結果 elif 條件:     結果 else:     結果/<code>

例題:

<code> s1 = '100' i1 = int(s1) print(i1,type(l1)) age = input('請輸入年齡:') if int(age) > 18:     print('恭喜你,成年了') else:     print('小屁孩兒')/<code>

練習題:

<code>num = int(input('猜點數:'))if num == 1:    print('晚上請你吃飯')elif num == 3:    print('一起溜達')elif num == 2:    print('請你大寶劍')else:    print('太笨了....')print('組合')/<code>
  • if if if if : 多選

用途:

執行多次,只要滿足就執行

可以選所有, 也可以一個都不選

格式:

<code> if 3>2:   print(1) if 4>3:   print(2) if 5>4:   print(3) if 6>5:   print(4) # 輸出結果 1 2 3 4/<code>

例題:

<code>num = int(input('猜點數:'))if num == 1:    print('晚上請你吃飯')elif num == 3:    print('一起溜達')elif num == 2:    print('請你大寶劍')/<code>
  • if 嵌套

格式:

<code> if 條件:     結果     if 條件:         結果         if 條件:             結果         else:             結果      else:           結果 else:     結果/<code>

例題:

<code>sex = '女'age = 20if sex == '女':if age > 18:      print('進來一坐')else:      print('回去上學吧')else:print('滾')# 輸出結果回去上學吧/<code>

練習題:

<code> username = input('請輸入用戶名:') password = input('請輸入密碼:') code = 'qwer' your_code = input('請輸入驗證碼:') if your_code == code:     if username == 'taibai' and password == '123':       print('登錄成功')     else:       print('賬號或者密碼錯誤') else:     print('驗證碼錯誤')/<code>

本節完~


分享到:


相關文章: