Python賦值運算及流程控制


1. 內置函數

  1> len:統計元素長度

str1 = 'wonderful'
print(len(str1))
result:
9

 
li = [1,2,3]
print(len(li))
result:
3


info = {'name':'zxj','age':23}
print(len(info))
result:
2

  2> in:判斷某元素是否在某種類型內,與之相反為 not in。均返回布爾值。

a='westlife'
print('e' in a)
result:
True


a='westlife'
print('d' in a)
result:
False


a='westlife'
print('d' not in a)
result:
True

 
a='westlife'
print('e' in a)
result:
False

 

2. 基本運算符

運算符

描述

實例

+

兩個對象相加,對象可以是數字、列表、字符串等

a=20,b=10,a+b輸出結果為30

-

一個數減去另外一個數

a-b輸出結果為10

*

乘,數與數、字符串與數可以相乘

a*b輸出結果為200

/

a/b輸出結果為2

%

取余(模)

a%b輸出結果為0

**

高階冪

2**3輸出結果為8

//

取整除,取商的整數

9//2輸出結果為4

  +支持數字、字符串、列表等對象相加:

l1 = [1,2,3]
l2 = [1,2,4]
print(l1+l2)
result:
[1,2.3,1,2,4]

  不同類型之間的轉換,如將列表轉換為集合、元組:

l1 = [1,2,3]
l2 = set(l1)
l3 = tuple(l1)
print(type(l1))
print(type(l2))
print(type(l3))
result:
<class 'list'>
<class 'set'>
<class 'tuple'>

 

3. 比較運算符

運算符

描述

實例

= =

等於,比較對象是否相等

a==b返回False

!=

不等於,比較兩個對象是否不相等

a!=b返回True

< >

不等於,比較兩個對象是否不相等

類似!=

大於

a>b返回True

小於

a<b返回False

>=

大於等於

a>=b返回True

<=

小於等於

a<=b返回False

 

4. 賦值運算符

運算符

描述

實例

=

賦值運算符

c=a+b,將a+b的結果賦值給c

+=

加法賦值運算符

c+=a等效於c=c+a

-=

減法賦值運算符

c-=a等效於c=c-a

*=

乘法賦值運算符

c*=a等效於c=c*a

/=

除法賦值運算符

c/=a等效於c=c/a

%=

取余賦值運算符

c%=a等效於c=c%a

**=

冪賦值運算符

c**=a等效於c=c**a

//=

取整除賦值運算符

c//=a等效於c=c//a

 

5. 身份運算符

  is:is與比較運算符==不同的是,is比較的是id是否相等,即比較內存地址是否一致,= =僅比較兩個值是否相等。

a=10
b=10.0
print(a==b)
print(a is b)
result:
True
False

  一個內存地址可以對應多個變量,一個變量只能對應一個內存。

 

6. 邏輯運算符

運算符

描述

實例

and

布爾“與”,前后為真才為真

a為真,b為真,a and b 為真;

a為真,b為假,a and

b為假。

or

布爾“或”,前后為假才為假

a為假,b為假, a or b為假;

a為真,b為假,a or b 為真。

not

布爾“非”,非真為假,非假為真

a為真,not a為假;

b為假,not b 為真。

 

7. 流程控制

  Python語法以縮進來分層,縮進4個空格(Tab)表示內一層。

7.1 if語句

格式:

  if 條件語句:

              執行的代碼1

       elif 執行的代碼2:

  else:

              執行的代碼塊3

 

  None、0、空(‘’),則條件為假,其余條件為真。if后條件為真則執行代碼1,條件為假則執行else后的代碼3。注意:空格不為空。

if 2 :
    print('')
else :
    print('')
result:
真

  if條件支持or、and、not等邏輯書寫。

7.2  while循環

  格式:

         while 條件:

                循環體

  條件為真則循環體執行,執行完后重新判斷條件。

  條件為假則循環體不執行。

  break:跳出循環;

  continue:跳出本次循環后繼續執行循環;

  pass:占位。占據當前位置,當不確定循環體如何設計時可以先用pass占位,保證語法格式。

#打印10以內的偶數 #方法一:
i = 0
while i< 11:
    print(i)
    i +=2 #方法二:
i = 0
while i < 11 :
    if  i % 2 == 0:
        print(i)
    i +=1

result:
0 2 4 6 8 10 count = 0 while count <=5: count +=1 if count ==3 : continue print("loop" , count) result: loop 1 loop 2 loop 4 loop 5 loop 6 count = 0 while count <=5: count +=1 if count ==3 : break print("loop" , count) result: loop 1 loop 2 count = 0 while count <=5: count +=1 if count ==3 : pass print("loop" , count) result: loop 1 loop 2 loop 3 loop 4 loop 5 loop 6

  while……..else……..:循環體執行完成后執行else后面的語句。

   練習:寫一個猜拳小游戲

import random                  #調用random模塊,生成隨機數
win = 0
lose = 0
ping = 0
while True:
    print('=====歡迎來猜拳=====')
    print('勝:{}   敗:{}   平:{}'.format(win, lose, ping))
    print('1.石頭   2.剪刀   3.布   4.退出')
    computer = random.choice(['石頭','剪刀',''])
    hum = input('==>:')
   
  #贏
if (hum == '1' and computer == '剪刀') or (hum == '2' and computer =='') or (hum == '3' and computer == '石頭'): print('挺牛逼!') win += 1 #輸 elif hum == '3' and computer == '剪刀' or hum == '1' and computer =='' or hum == '2' and computer == '石頭': print('菜雞!') lose += 1 #平 elif hum == '2' and computer == '剪刀' or hum == '3' and computer =='' or hum == '1' and computer == '石頭': print('不要走,決戰到天亮') ping += 1 elif hum == '4': break else: print('別瞎輸入!!') print() #打印空行
result:
=====歡迎來猜拳===== 勝:0 敗:0 平:0 1.石頭 2.剪刀 3.布 4.退出 ==>:1 菜雞! =====歡迎來猜拳===== 勝:0 敗:1 平:0 1.石頭 2.剪刀 3.布 4.退出 ==>:2 不要走,決戰到天亮 =====歡迎來猜拳===== 勝:0 敗:1 平:1 1.石頭 2.剪刀 3.布 4.退出 ==>:2 不要走,決戰到天亮 =====歡迎來猜拳===== 勝:0 敗:1 平:2 1.石頭 2.剪刀 3.布 4.退出 ==>:3 菜雞! =====歡迎來猜拳===== 勝:0 敗:2 平:2 1.石頭 2.剪刀 3.布 4.退出 ==>:4

  Python可以通過命令pyinstaller將語句導出為.exe程序,pyinstaller可以在pycharm的終端通過pip安裝。

  在終端使用pyinstaller -F 導出為exe程序。導出文件必須在虛擬環境下。

(yunwei) E:\Learning\python>pyinstaller -F game.py
171 INFO: PyInstaller: 3.4
172 INFO: Python: 3.6.8
…….
29666 INFO: Appending archive to EXE E:\Learning\python\dist\game.exe
29680 INFO: Building EXE from EXE-00.toc completed successfully.

  找到該文件,雙擊運行

7.3 for循環

  格式:

         for 變量 in range(start,end,step):

                循環體

       range(start,end,step)顧頭不顧尾,即范圍能取到start,取不到end,只能取到end的前一位。數字范圍默認start為0,可以省略;step為步長,在start~end的范圍間隔step取值。

       for循環將可迭代對象變成了迭代器類型,因此可以遍歷字符串、列表、元組、字典等。

#打印1到5
or i in range(6):
    print(i)
result:
0
1
2
3
4
5


#打印10以內的偶數
for i in range(0,11,2):
   print(i)
result:
1
2
4
6
8
10 #遍歷列表
l1 = [1,2,3,4]
for i in l1:
    print(i)
result:
1
2
3
4 #遍歷元組
l1 = (1,2,3,4)
for i in l1:
    print(i)
result:
1
2
3
4 #遍歷字符串
l1 = 'zxj'
for i in l1:
    print(i)
result:
z
x
j
 #遍歷字典,默認循環的key值
l1 = {'name':'言念君子','chara':'溫潤如玉'}
for i in l1:
    print (i)
result:
name
chara
 
#循環value:
l1 = {'name':'言念君子','chara':'溫潤如玉'}
for i in l1.values():
    print (i)
result:
言念君子
溫潤如玉

#循環key、value鍵值對
l1 = {'name':'言念君子','chara':'溫潤如玉'}
for i in l1.items():
    print (i)
result:
('name', '言念君子')
('chara', '溫潤如玉')
 
#分別循環key、value
l1 = {'name':'言念君子','chara':'溫潤如玉'}
for i,k in l1.items():
    print (i,k)
result:
name 言念君子
chara 溫潤如玉


免責聲明!

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



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