Python全棧開發之1、輸入輸出與流程控制


Python簡介

  python是吉多·范羅蘇姆發明的一種面向對象的腳本語言,可能有些人不知道面向對象和腳本具體是什么意思,但是對於一個初學者來說,現在並不需要明白。大家都知道,當下全棧工程師的概念很火,而Python是一種全棧的開發語言,所以你如果能學好Python,那么前端,后端,測試,大數據分析,爬蟲等這些工作你都能勝任。

為什么選擇Python

  關於語言的選擇,有各種各樣的討論,在這里我不多說,就引用Python里面的一個彩蛋來說明為什么要選擇Python,在Python解釋器里輸入import this 就可以看到。

>>> import this

The Zen of Python by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

上面的話簡單的總結來說就是“優雅”、“明確”、“簡單”,或許你還是有些不明白,舉個簡單的例子,若果同樣的功能你用C/C++寫可能要寫100行代碼,而如果用Python寫你可能只要20行代碼就搞定,同樣的如果一個問題有好幾種解決方案,但是Python會用一種最簡單的方法來實現。所以Python是用最簡單最優雅最明確的方法來解決問題。

Python入門 

一、安裝Python

  在這里我我推薦安裝Python3,因為隨着時間的推移Python3,必定是未來的趨勢,我們要順應潮流。在Python的官網可以下載相應的版本,網址是https://www.python.org/downloads/,安裝上面的提示安裝好即可,就不在多說了,此外后面的操作都是基於windows下的操作。

二、編寫Hello,World

  安裝好了環境之后,我們就可以編寫代碼了,這里我們以兩種方式輸出Hello,World,第一種我們用解釋器來實現,打開cmd

輸入Python,如果沒有出現下面的實例,檢查下python環境變量是否配置好。

C:\Users\Tab>python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:38:48) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print('Hello,World')
Hello,World

  可以看出輸出一句 hello,world 只需要一行代碼即可,但是有一個缺點,那就是如果不小心把窗口關閉了,代碼就沒有了,所以在實際工作中這種方式並不常用。實際工作中,我們將代碼保存在 .py文件中,保存為txt文件也行,但是就看不出來這是一個Python文件,所以不推薦這么做,然后在命令行下執行 python 1.py 就可以打印出來Hello,World。這里我使用的文本編輯器是Sublime Text。

#!/usr/bin/env python
# coding=utf-8
print("Hello,World")

第一行代碼是在Linux下執行的時候,指出文件由python解釋器來執行,第二行是告訴解釋器在加載文件時,采用何種編碼,不加上這句的話,在python2中顯示中文會出現亂碼,在python3中則不會,所以你如果用的是windows而且用的是python3,其實可以不用加這兩句,不過實際中還是建議加上這兩句。到這里我們就用了兩種方式輸Hello,World。

三、變量、輸入、輸出

  現在,你已經可以用print()輸出你想要的結果了,但是,如果要讓用戶從電腦輸入一些字符怎么辦?Python提供了一個input(),可以讓用戶輸入字符串,並存放到一個變量里。比如輸入用戶的名字:

name = input('username:')
print('name')

假設將上面代碼保存在文件1.py中,在命令行中執行python 1.py后,提示你輸入一個用戶名,輸入完成后,打印出剛才輸入的字符,上面聲明了一個name變量,然后將輸入的字符保存在name變量中,變量不僅可以是字符串,還可以是整數或浮點數,比如a=2

將定義了一個整形變量a,值為2。此外變量定義的規則有以下幾點:

  • 變量名只能是 字母、數字或下划線的任意組合
  • 變量名的第一個字符不能是數字
  • python關鍵字不能聲明為變量名

四、流程控制和縮進

  Python的語法比較簡單,采用縮進方式

# xxxxx:
'''
a>0 則輸出a 如果a<0,則輸出-a
下面先定義了變量a=1
'''
a = 1
if a >= 0:
    print(a)
else:
    print(-a)

#開頭的語句是注釋,還可以使用'''xxx'''來進行多行注釋,注釋是給人看的,解釋器會忽略掉注釋。注釋是用來解釋程序的作用和功能,以后再實際的工作中要養成寫注釋的良好習慣。當語句以冒號:結尾時,后面的語句要縮進。

五、while循環

1.基本格式

# while 條件:   
      # 循環體
  # 如果條件為真,那么循環體則執行
  # 如果條件為假,那么循環體不執行
     
while True: 
    print(1)

上面的測試測序是一個死循環,條件一直為真,不停輸出1。

2、break 退出整個循環

while True:
    print(1)
    break
    print(2)

上面的代碼會先輸出1,然后遇到break,就退出當前循環,所以不再打印出2了

3、continue退出當前循環

while True:
    print(1continue
    print(2)

大家可以思考下上面的程序輸出什么,答案是會不停的輸出1 1 1 1... ,為什么?因為循環條件一直為真,遇到continue語句的時候,程序跳出當前循環,並不執行 print(2)語句。

六、作業 

  1、使用while循環輸入 1 2 3 4 5 6     8 9 10

  2、求1-100的所有數的和

  3、輸出 1-100 內的所有奇數

  4、輸出 1-100 內的所有偶數

  5、求1-2+3-4+5 ... 99的所有數的和

  6、用戶登陸(三次機會重試)

# 題目1
t=0
while t<10:
    t+=1    
    if t==7:
        continue
    print(t)

# 題目2
sum=0
for i in range(101):
    sum+=i
print(sum)

# 題目3
for i in range(1,100,2):
    print(i)

# 題目4
for i in range(2,101,2):
    print(i)

# 題目5
sum=0
for i in range(0,100):
    if i%2==0:
        sum-=i
    else:
        sum+=i
print(sum)

# 題目6
import getpass
username='jason'
password='1233456'
flag=0
def login():
    user=input('username:')
    passwd=getpass.getpass('password:')
    return user,password
while flag<3:
    user,passwd=login()
    if username==user and password==passwd:
        print('hello,jason')
        break
    else:
        flag+=1
        print ('error,input again')

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM