python輸入,
python輸入
python3以後輸入也和python2.7不同,輸入函數為input()
username = input("username");password = input("password");print("使用者名稱為",username);print("密碼為",password);
說一下密碼如何在輸入的時候加密,python自己有自己的函數:
import getpasspassword = getpass.getpass(input("password:"));
需要引入getpass,為python的基礎模組
說明:getpass這個模組在Pycharm開發工具中無法運行,用cmd去運行就可以了
最後說一下格式化輸出,這裡面就要用到'''.......'''了。
程式碼範例1:
name = input("name");age = input("age");job = input("job");salary = input("salary");
info = '''
----------- info of '''+ name + ''' -----------
name : ''' + name + '''
age : ''' + age + '''
job : ''' + job + '''
salary : ''' + salary + '''
'''
print(info)
以上代碼'''.......'''作用是字串的串連,這個時候就要保證你所有的輸入項必須為字串類型,input預設輸入就是字串類型。
下面的問題就是,如果age相輸入int類型要怎麼辦,而且這樣的字串串連格式化輸出太麻煩?
程式碼範例2:
name = input("name");age = int(input("age"));job = input("job");salary = input("salary");
infos = '''
----------- info of %s -----------
name : %s
age : %d
job : %s
salary : %s
''' %(name,name,age,job,salary)
print(info)
說明:python提供了類型強制轉換的方法直接在要輸入的前面加上int就可以吧輸入的內容轉化為int,其中%s為字串類型,%d為int類型。
但是這樣的寫法還是有一個問題就是%(name,name,age,job,salary)裡面的內容必須和上面的是對應上的,數量也要相等,這個時候我們可以進一步進行最佳化。
程式碼範例3:
name = input("name");age = int(input("age"));job = input("job");salary = input("salary");
info = '''
----------- info of {_name} -----------
name : {_name}
age : {_age}
job : {_job}
salary : {_salary}
''' .format(_name = name , _age = age , _job = job , _salary = salary)
print(info)
通過調用.format方法就可以更加靈活的實現以上的格式化輸出,也是我個人推薦使用的方法,有點和java的構造方法像。
還有一中寫法,python也是支援下面的寫法的
程式碼範例4:
name = input("name");age = int(input("age"));job = input("job");salary = input("salary");
info = '''
----------- info of {0} -----------
name : {0}
age : {1}
job : {2}
salary : {3}
''' .format(name, age ,job , salary)
print(info)
最後把以上代碼的輸出內容給大家展示一下:
----------- info of admin -----------
name : admin
age : 20
job : IT
salary : 1000000
這就是格式化輸出。