Python學習第一周(Python3.x),pythonpython3.x

來源:互聯網
上載者:User

Python學習第一周(Python3.x),pythonpython3.x

  第一周學習記錄,這個階段學習Python的文法。

  一、開發IDE,使用的是PyCharm,建立一個project後,可以在裡面設定一些預設的代碼

# Author:BH

  這是關於PyCharm設定相關,步驟:

點擊 -->edictor-->Code Style-->File and Code Templates-->Python Script

在右側的裡面輸入要添加的內容。(這部分有個注意,後面說)然後apply-->ok 即可設定成功,需要我們重新建立一個Python file即可看到效果。

還有關於程式的運行,滑鼠點擊右鍵-->Run

  二、程式 

  2.1 Hello World

print ("Hello World!")

  直接輸出:

Hello World!

Process finished with exit code 0

  2.2 變數

name = "Hei Han"name2 = nameprint("My name is ",name, name2)name = "Xu Da"print(name,name2)gf_of_zxy = "Liu De Hua"

  定義變數時,直接寫變數的名字即可,這是我在做了iOS時與OC/C語言不同的地方,很簡單的定義,在OC/C都是需要首先設定資料類型的,以OC為例

Nsstring *name = @"Hei Han"

  在Python中,不需要指定資料類型,這個很簡潔。列印name的時候也和OC不同,OC在後面是一定要加上預留位置的,%@、%d。。。。

  Python裡表達比較長的變數時候,是小寫+底線,OC中常用是駝峰方式,第一個單詞小寫,以後單字首大寫,這個就不用多說了,做某一種語言開發的都有自己的規則。

  2.3 input 和 條件判斷

# Author:BHimport getpass_username = "bh"_password = "123"username = input("username:")# password = getpass.getpass("password:") # 密文輸入 getpass 在pycharm中 不好用password = input("password:")# print(username, password)if username == _username and password == _password:    print("Welcome user {name} login...".format(name = username))else:    print("Invalid username or password")

  上面代碼,是簡單的一個登入小程式。這裡需要學習的是input

  input 輸入函數,定義username 和 password 進行輸入,當使用input函數,程式運行時,就會讓使用者進行輸入操作。

  條件判斷,if...else,這裡的文法與OC不同,並且使用的是 "and" OC中是邏輯運算子"&&",if裡面的代碼也不是使用{},而是使用:來決定範圍

這裡需要注意一點,在條件判斷下面的代碼,必須要縮排,否則報錯,縮排說明下面代碼的範圍屬於if語句。

  上面的代碼中還包含了import getpass,import是匯入 架構/類庫的意思 getpass 是Python中的一個對於密碼密文顯示的庫,但是在PyCharm中,對於這個庫的支援是不行的,我們可以在終端下,執行這個指令碼,可以看到是密文。上面列印,還有一段是格式化輸出,下面就介紹Python幾種格式化輸出。

  2.4 注釋

  Python注釋,單行注釋:在代碼前加 #code

  多行注釋:''' code ''' 

  其中''' ''' 還可以用來表示多行字串

  2.4 字串格式化

# Author:BH# raw_input 2.x input 3.xname = input("name:")age = int(input("age:")) # 強制轉換print(type(age), type(str(age))) #列印資料類型job = input("job:")salary = input("salary:")info = '''------------ info of %s ---------Name:%sAge:%dJob:%sSalary:%s''' % (name,name,age,job,salary)info2 = '''------------ info of {_name} ---------Name:{_name}Age:{_age}Job:{_job}Salary:{_salary}''' .format(_name = name,            _job = job,            _age = age,            _salary = salary)info3 = '''------------ info of {0} ---------Name:{0}Age:{1}Job:{2}Salary:{3}''' .format(name,job,age,salary)print(info3)

  三種字串,格式化方式

  2.4.1

info = '''------------ info of %s ---------Name:%sAge:%dJob:%sSalary:%s''' % (name,name,age,job,salary)

  和OC語言類似,使用預留位置佔位,%s 代表字串,%d就是整型,%f 就是浮點型最後加一個%(變數名)

  2.4.2

info2 = '''------------ info of {_name} ---------Name:{_name}Age:{_age}Job:{_job}Salary:{_salary}''' .format(_name = name,            _job = job,            _age = age,            _salary = salary)

  {形參} 佔位,最後.format()給各個參數賦值。

info3 = '''------------ info of {0} ---------Name:{0}Age:{1}Job:{2}Salary:{3}''' .format(name,job,age,salary

  這種方式{數字順序}後面接.format(變數名),這種方式不好,0 1 2這類數字很難表達具體含義,不推薦

 

  2.5迴圈

  2.5.1 while

 

# Author:BHcount = 0while True:    print("count:",count)    count += 1    if count == 1000 :        break

  和OC類似 while 條件: 縮排進入迴圈範圍

  2.5.2 for

for i in range(10):    print("-------",i)    for j in range(10):        print(j)        if j >5:            break

 格式:for 臨時變數 in range(迴圈次數):

  迴圈中都設計break和continue關鍵字,與OC語言相同,break跳出當前迴圈,迴圈結束;continue跳出當次迴圈,繼續下一次迴圈

 

上面紅字說到注意的地方,其實就是Python版本的問題,現在Python2.x 和 Python3.x 我的文字都是基於Python3.x

注意1:Python2.x 不支援中文所以要在指令碼程式最上面加上一句代碼

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

  代碼編碼utf-8否則,輸入中文報錯。Python3.x不存在這個問題。

注意2:Python2.x 中raw_input 和 Python3.x的input等價

注意3:Python3.x 中input函數輸入 預設是字串類型,如果想要輸入整型,需要強制轉換。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.