一、python的優點:
Python是一種計算機程序設計語言。是一種面向對象的動態類型語言,最初被設計用於編寫自動化腳本(shell),隨着版本的不斷更新和語言新功能的添加,越來越多被用於獨立的、大型項目的開發。
而且Python在設計上堅持了清晰劃一的風格,這使得Python成爲一門易讀、易維護,並且被大量用戶所歡迎的、用途廣泛的語言。
二、python的安裝
1.在linux平臺上python源碼編譯的安裝:
在redhat7.3中系統自帶2.7版本,所以此處安裝的爲3.6版本,安裝包可以在官方網站下載
首先安裝python3.6運行所需要的依賴組件:
yum install gcc zlib-devel openssl-devel readline-devel
##如果安裝python之前沒有安裝readlin-devel,在python環境中將無法使用左右上下鍵來移動
tar zxf Python-3.6.6.tgz ##解壓python3.6的安裝包
cd Python-3.6.6/ ##進入解壓目錄
./configure --prefix=/usr/local/python3.6 --with-ssl ##執行腳本將源碼編譯到/usr/local並以ssl方式加密
make
make install ##開始安裝,而且需要在當前這個解壓目錄下執行此命令
cd /usr/local ##安裝完成後可以在目錄下看到python3.6的目錄
ln -s /usr/local/python3.6/bin/python3.6 /usr/local/bin ##創建一個軟連接方便進入python3.6環境
env ##查看當前環境中的所有變量
python3.6 ##測試能否進入環境
#ipython的安裝,需要聯網並且網絡較好
cd /usr/local/python3.6/bin/
./pip3.6 install ipython ##執行腳本會聯網安裝ipython
2.pycharm的安裝和使用:
PyCharm是一種Python IDE,帶有一整套可以幫助用戶在使用Python語言開發時提高其效率的工具,比如調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制。此外,該IDE提供了一些高級功能,以用於支持Django框架下的專業Web開發。
安裝包可以在網上下載,本機使用的是pycharm-community-2018.3.tar.gz
tar zxf pycharm-community-2018.3.tar.gz ##本機的安裝包放在普通用戶家目錄下
cd pycharm-community-2018.3.tar.gz/bin/ ##進入pycharm的命令目錄
./pycharm.sh ##執行安裝腳本開始安裝,注意是哪個用戶登錄的就用哪個用戶執行腳本,不然會出現無法使用中文的問題
#pycharm軟件的常用快捷鍵操作
1.設置 (ctrl + alt + s)
2.快速創建文件 (alt + insert)
3.自動格式化 (ctrl + alt + l)
4.快速註釋代碼 (ctrl + /)
5.快速取消註釋代碼 (ctrl + /)
6.複製一行代碼 (ctrl + d)
7.撤銷操作 (ctrl + z)
在創建每個.py文件時,自動加上如下前綴:
"""
# _*_ coding:utf-8 _*_
Name:${NAME}.py
Date:${DATE}
Author:yy
Connect:[email protected]
Desc:
"""
三、python的簡單知識:
1.變量的命名方式:
a.見名知意
b.由字母、數字、下劃線組成
c.不能以數字開頭
d.儘量不要和關鍵字重名,避免修改錯誤時不好判斷
駝峯命名法:
1.大駝峯:FirstName
2.小駝峯:firstName
2.變量的類型:
變量是存儲在內存中的值。這就意味着在創建變量時會在內存中開闢一個空間。基於變量的數據類型,解釋器會分配指定內存,並決定什麼數據可以被存儲在這個指定內存中。
3.Python的數字類型:
int | 有符號整型,包括長整形 |
---|---|
float | 浮點型 |
complex | 複數(a+bj的方式來表示) |
#數字在輸出中的常見格式用法
name='yy'
age=20
money=100.123456
studentid=9
print('%s的年齡是%d歲' %(name,age))
print('%s本月的獎學金爲%f' %(name,money))
money=100
print('%s本月的獎學金爲%f' %(name,money))
print('%s本月的獎學金爲%.2f' %(name,money))
print('%s本月的獎學金爲%.3f' %(name,money))
print('%s的學號爲110%d' %(name,studentid))
print('%s的學號爲130%.3d' %(name,studentid))
百分數的求法:
scale = 0.2
print('比例是 %.2f' %scale)
print('比例是 %.2f%%' %(scale * 100)) ##兩個%%表示一個%
4.變量的輸入輸出:
python的版本不同時輸入輸出有些不同
python2.x
python3.x
5.格式化輸出練習:
#- 輸入學生學號;
#- 依次輸入學生的三門科目成績;
#- 計算該學生的平均成績, 並打印;
#- 平均成績保留兩位小數點;
#- 計算該學生語文成績佔總成績的百分之多少?並打印。
ID = input("學生ID:")
Chinese = float(input("語文成績:"))
Math = float(input("數學成績:"))
English = float(input("英語成績:"))
#總成績
SumScore = Chinese + Math + English
#平均成績
AvgScore = SumScore / 3
#百分比
ChinesePercent = ( Chinese / SumScore ) * 100
print("%s的平均成績爲%.2f" %(ID,AvgScore))
print("語文成績佔總成績的%.2f%%" %ChinesePercent)
6.if語句:
(1)if條件判斷:
if 要判斷的條件:
條件成立的時候做的事情
age = 8
if age >= 7: ##if可以單獨使用
print('歡迎進入小學...')
(2)if-else語句:
if 要判斷的條件:
條件成立的時候做的事情
else:
條件不成立的時候做的事情
age = 2
if age >= 7:
print('歡迎進入小學...')
else:
print('請回幼兒園!')
(3)if中的邏輯運算符:(and,or,not)
and
條件1 and 條件2
兩個條件都滿足,就返回True
兩個條件有一個不滿足,返回False
or
條件1 or 條件2
兩個條件只要有一個滿足,就返回True
兩個條件都不滿足,返回False
# age = 120
#
# if age >= 0 and age <= 120:
# print('年齡正確')
# else:
# print('年齡錯誤')
# rhcsa = 200
# rhce = 210
#
# if rhcsa >= 210 or rhce >= 210:
# print('考試通過')
# else:
# print('請補考')
a = input('Num:')
# if a == '':
# print('請輸入合法的值!')
if not a: ##即值爲空的意思
print('請輸入合法的值!')
(4)if多個條件的判斷:
if 要判斷的條件:
條件成立的時候做的事情
elif 條件2:
...
elif 條件3:
...
else:
條件不成立的時候做的事情
elif和else都必須和if一起使用,不能單獨使用,但是if可以單獨使用
holiday_name = '中秋節'
if holiday_name == '兒童節':
print('喝娃哈哈...')
elif holiday_name == '端午節':
print('吃糉子...')
elif holiday_name == '情人節':
print('買禮物...')
else:
print('買禮物...')
(5)if嵌套,多次判斷:
cticket = False
knife = 16
if ticket:
print('車票檢查通過,請安檢')
if knife > 15:
print('長度爲 %d:超出限定長度,無法入內' %knife)
else:
print('長度爲 %d:限定長度內,允許入內' %knife)
else:
print('請買票')
(6)if練習:
1. 輸入年、月,輸出本月有多少天。合理選擇分支語句完成設計任務
輸入樣例1:2004 2
輸出結果1:本月29天
輸入樣例2:2010 4
輸出結果2:本月30天
year = int(input('Year:'))
month = int(input('Month:'))
if (month == 1 or month == 3 or month == 5 or month == 7
or month == 8 or month == 10 or month == 12):
print('31天')
elif (month == 4 or month == 6 or month == 9 or month == 11 ):
print('30天')
elif month == 2 and ((year % 4==0 and year % 100!=0) or (year % 400==0)):
print('29天')
else:
print('28天')
2.石頭剪刀布練習:
a.從控制檯輸入要出的拳 ---石頭(1)/剪刀(2)/布(3)
b.電腦隨即出拳--先假定電腦只會出石頭,完成整體代碼功能
c.比較勝負
石頭 勝 剪刀
剪刀 勝 布
布 勝 石頭
import random ##產生隨機數
#1.從控制檯輸入要出的拳 --石頭1 剪刀2 布3
player = int(input("請輸入您要出的拳: 石頭1/剪刀2/布3 :"))
#2.電腦隨機出拳
computer = random.randint(1,3)
print(computer)
#3.比較勝負
if ((player == 1 and computer == 2)
or (player == 2 and computer == 3)
or (player == 3 and computer == 1)):
print('玩家勝利~')
elif player == computer:
print('平局')
else:
print('玩家失敗~')