1. 程式人生 > >第一篇博客——python學習旅程開啟

第一篇博客——python學習旅程開啟

今天 安裝 學習python 解釋型 student don and 變量的數據類型 系統

今天開始學習Python,以後會將自己的學習內容以及學習心得進行記錄,以博客的形式和廣大誌同道合的朋友分享,如有錯誤還請大家能夠批評指正,如果能幫到大家那就再好不過了。

今天的內容有些長,而且很簡單,純屬是為了給自己回顧而寫,加深印象,所以不接受吐槽。

在進入正式的python學習之前,你要知道的是python是一門動態解釋型的強類型定義語言

我們先來了解一下動態語言和靜態語言的區別。動態類型語言是在運行時確定數據類型的語言,即永遠不需要給任何變量指定數據類型。靜態類型語言是指在編譯時變量的數據類型即可確定的語言,多數靜態類型語言要求在使用變量之前必須聲明數據類型。

解釋型指的是 不需要編譯,在運行的時候將代碼翻譯成機器語言。打個比方,就是你在看一本外國小說的時候,編譯型語言是直接讓別人翻譯好給你讀;而解釋型語言就是你邊讀,他邊給你翻譯,等你想要回過頭再去看看前面章節的時候,他還需要給你重新翻譯。所以相對來說,速度相比於編譯型要慢那麽一丟丟。

強類型定義語言是指強制數據類型定義的語言,一旦一個變量被指定了某個數據類型,如果不經過強制轉換,那麽久永遠都是這個數據類型了。換句話說,強類型定義語言是類型安全的語言。

首先,需要安裝IDE,大家都知道學python應該用pycharm來編寫python的代碼,好處多多,在此我就不進行贅述。

如果是一名學生,就不用花錢購買了,可以用教育郵箱,即[email protected]這種形式的郵箱,來免費申請使用pycharm,具體申請方法大家自行百度。

需要說明的是,如果郵箱中被回復到的是已經提交申請,但是好幾個小時均沒有收到驗證成功的提醒,請不要傻傻等待,直接去Jetbrain網站用你的註冊登錄即可。

我使用的是python 3.x的版本,建議大家都使用最新版的python,以後2.x版本要被淘汰。

裝好以後,我們就可以寫自己的第一個python小程序了,那就是Hello,world。畢竟儀式感還是要有滴嘛

print(Hello,world)

把一個變量賦給另一個變量,當前變量的值做修改,另一個變量的值會隨著改變嗎? 不妨看一下下面的代碼

name = "Alex Li"
print("The name is",name)
name2 = name;
print("The names are",name,name2)
name = "Yang yang"
print("
The names are",name,name2)

輸出結果為:

The name is Alex Li
The names are Alex Li Alex Li
The names are Yang yang Alex Li

可以看到name的改變並不會影響到name2,name2的值仍然為第一次name賦給他的值。

接著寫一個交互式的格式化輸出的代碼,體會格式化輸出的幾種方法。代碼功能是打印一個人的身份信息。

name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")

1. 使用字符串拼接的方式進行格式化輸出:可以看到,使用這種方法非常不直觀,在進行實際代碼編寫的時候不到萬不得已,非常不建議使用這種方法。

info1 = ‘‘‘ info of ‘‘‘ + name + ‘‘‘
Name:‘‘‘ + name + ‘‘‘
Age:‘‘‘ + age + ‘‘‘
Job:‘‘‘ + job + ‘‘‘
Salary:‘‘‘ + salary
print(info1)

看一下輸出結果:

name:yangyang
age:18
job:student
salary:2000
 
--------info of yangyang -------
Name:yangyang
Age:18
Job:student
Salary:2000

2.使用.format 進行打印輸出,這種方式是最規範的,也是我們需要熟練掌握使用的,一般在實際情況均使用這種方法。

info2 = ‘‘‘
--------info of {_Name} -------#.format的方式做格式化輸出
Name:{_Name}
Age:{_Age}
Job:{_Job}
Salary:{_Salary}‘‘‘.format(
    _Name = name,
    _Age = age,
    _Job = job,
    _Salary = salary)
print(info3)

3.使用.format的方式,變量與數字進行對應打印輸出。可以看到這種方式很不直觀,不方便閱讀。

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

4.使用%s的方式對應變量打印

info4 = ‘‘‘ 
--------info of %s -------
Name:%s
Age:%s
Job:%s
Salary:%s‘‘‘ %(name,name,age,job,salary)
print(info4)

總之,第二種方法是最好的格式化打印方式

接下來,寫一個交互式的登錄判斷的功能,具體要求是輸入的用戶名和密碼正確則顯示登錄成功,否則顯示登錄失敗。來重溫上面格式化輸出的方法。

username = input("What‘s your username...?")
password = input("Please input your password")
user_name = yangyang
pass_word = 123456

if username == user_name and password == pass_word:
    print("Welcome user {name} log in...".format(name = user_name))#這裏用username或user_name均可
else:
    print("Wrong username or password")

接下來寫一個猜數字大小的小遊戲,具體玩法是每回有3次猜測的機會,如果3次都沒猜對,則系統自動詢問是否還有繼續,如果按下“no”,則退出,否則按任意鍵繼續。

yang_age = 20
count = 0;
while count<3:
    guess = int(input("Guess his age:"))
    if guess == yang_age:
        print("Congratulations!")
        break  # break的話本次循環結束
    elif guess>yang_age:
        print("Think smaller")
    else:
        print("Think bigger")
    count = count+1 #count+=1
    if count==3:
        userwill = input("Do you want to keep guessing...?If you don‘t want to go on,please input no,otherwise you can input any other else")
        if userwill != "no":
            count = 0

運行結果如下:

Guess his age:0
Think bigger
Guess his age:50
Think smaller
Guess his age:18
Think bigger
Do you want to keep guessing...?If you dont want to go on,please input no,otherwise you can input any other else20
Guess his age:20
Congratulations!

可以看到這個程序主要是為了學習break的使用方法,break的功能是跳出循環。另外也可以使用for循環記性編寫,如下:此時的功能有一點點不一樣的地方,那就是超過3次猜錯直接不允許玩了。for...else.。另外也有while...else的使用組合

yang = 56
for i in range(3):
    guess = int(input("Guess his age:"))
    if guess == yang:
        print("Congratulations!")
        break
    elif guess>yang:
        print("Think smaller")
    else:
        print("Think bigger")
else:
    print("You have tried many times,fuck off")

本周的學習內容就是這麽多,下周同一時間不見不散

 

第一篇博客——python學習旅程開啟