python入門學習--ifelse分支和循環結構用法,實現猜數字遊戲和冒泡排序

前言

分支(if-else)和循環是每種編程語言一定存在的用法,這裏記錄下python中的分支結構和結構。結合以前學習的變量,類型,運算符,表達式,和分支,循環結構,練習寫個猜數字遊戲和冒泡排序。python

正文

分支結構

if語句的使用

分支結構可使用if、elif和else關鍵字。所謂關鍵字就是有特殊含義的單詞,像if和else就是專門用於構造分支結構的關鍵字,很顯然你不可以使用它做爲變量名(事實上,用做其餘的標識符也是不能夠)。算法

判斷三條邊是否可以組成一個三角形編程

a = float(4)
b = float(5)
c = float(4)
if a + b > c and a + c > b and b + c > a:
    print('周長: %f' % (a + b + c))
    p = (a + b + c) / 2
    area = (p * (p - a) * (p - b) * (p - c)) ** 0.5
    print('面積: %f' % (area))
else:
    print('不能構成三角形')

輸出成績表明的等級dom

score = float(95)
if score >= 90:
    grade = 'A'
elif score >= 80: # 和PHP不同,這裏使用的是 elif
    grade = 'B'
elif score >= 70:
    grade = 'C'
elif score >= 60:
    grade = 'D'
else:
    grade = 'E'
print('對應的等級是:', grade)

循環結構

Python中構造循環結構有兩種作法,一種是for-in循環,一種是while循環。編程語言

for-in 循環

a = 'python筆記'
for x in a:
    print(x) # 輸出字符串 a 的每一個元素

while循環

while循環經過一個可以產生或轉換出bool值的表達式來控制循環,表達式的值爲True循環繼續,表達式的值爲False循環結束。學習

實現「猜數字」小遊戲code

計算機出一個1~100之間的隨機數,人輸入本身猜的數字,計算機給出對應的提示信息,直到人猜出計算機出的數字
import random

answer = random.randint(1, 100) #從1-100中隨機出一個數字
count = 0 #記錄猜答案的次數

while(True):  #循環,直到猜中就跳出循環
    input_num = int(input('請輸入你猜的數字:')) #玩家輸入數字,保證是整數
    count += 1
    if input_num > answer:
        print('你猜的不對,有點大了!請再來')
    elif input_num < answer:
        print('你猜的不對,小了點!請再來')
    else:
        print('恭喜你,猜中了')
        break  #這裏是跳出循環,結束while循環

print('*' * 10) #輸出10個*
print('你一共猜了%s次' % count)
if count > 5:
    print('你的智商有待。。。。')
else:
    print('你是牛人')

冒泡排序

冒泡排序算法的原理以下:排序

  • 比較相鄰的元素。若是第一個比第二個大,就交換他們兩個。
  • 對每一對相鄰元素作一樣的工做,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
  • 針對全部的元素重複以上的步驟,除了最後一個。
  • 持續每次對愈來愈少的元素重複上面的步驟,直到沒有任何一對數字須要比較。
def bubble_sort(nums):
    for i in range(len(nums) - 1):  # 這個循環負責設置冒泡排序進行的次數
        for j in range(len(nums) - i - 1):  # j爲列表下標
            if nums[j] > nums[j + 1]:
                nums[j], nums[j + 1] = nums[j + 1], nums[j]
    return nums

print(bubble_sort([45, 32, 8, 33, 12, 22, 19, 97]))
# 輸出:[8, 12, 19, 22, 32, 33, 45, 97]
本文由博客一文多發平臺 [OpenWrite] 發佈!
相關文章
相關標籤/搜索