Python基礎習題(一)
1、有1、2、3、4四個數字,能組成多少個互不相同且無重複數字的三位數?分別是多少?
#先定義一個判斷一個三位數是否符合條件的函式
def isMynumber(n):
a=int(n%10)
b=int(n/10%10)
c=int(n/100)
if(a==b)or(b==c)or(c==a):
return False
else:
return True
count=0
#百位數
for i in range(1,5):
#十位數
for j in range(1,5):
#個位數
for k in range(1,5):
number=i*100+j*10+k
if isMynumber(number):
count=count+1
print("發現一個符合條件的數:"+str(number))
else:
print(str(number)+"不符合條件!")
print("總共有"+str(count)+"個符合條件的數字。")
注:如果a,b,c不強制為int,會作為float資料影響條件判斷。
#僅對於這道題,也可以使用更直接一些的方法
#設定計數器
count=0
#百位數
for i in range(1,5):
#十位數
for j in range(1,5):
if i==j:
continue
#個位數
for k in range(1,5):
if k==i or k==j:
continue
number=i*100+j*10+k
count=count+1
print("找到一個符合條件的數:"+str(number ))
print("總共有"+str(count)+"個符合條件的數字。")
2、一個整數,加上100後是一個完全平方數,再加上168又是一個完全平方數,這個數為多少。
#一個整數加上100後是一個完全平方數,再加上168又是一個完全平方數,這個數為多少
import math
#先定義一個判斷是否為完全平方數的函式
def isWp(n):
m=int(math.sqrt(n))
if n==m*m:
return True
else:
return False
#只找一萬以內
for i in range(10000):
x=i+100
y=x+168
if isWp(x) and isWp(y):
print("這個數是:"+str(i))
print(math.sqrt(x),math.sqrt(y))
3、輸入某年某月某日,判斷這一天是這一年的第幾天
#輸入某年某月某日,判斷這一天是這一年的第幾天
"""思路
1、定義一個判斷年份是否為閏年的函式
2、如果年份為閏年,月份小於等於2,則正常計算
3、如果年份為閏年,月份大於2,則閏年天數須加1
"""
#判斷閏年的函式
def isLeapyear(year):
if year%400==0 or(year%4==0 and year%100!=0):
return True
else:
return False
#提示輸入年月日
year=int(input("請輸入要判斷的年份:"))
month=int(input("請輸入要判斷的月份:"))
date=int(input("請輸入要判斷的日期:"))
#設定一個固定月天數的元組,設定初始統計值
days_count=0
days=(31,28,31,30,31,30,31,31,30,31,30,31)
for i in range(month):
days_count=days_count+days[i]
#如果年份為閏年,月份小於等於2,則正常計算
if isLeapyear(year) and month<=2:
days_count=days_count+1
print("這一天是"+str(year)+"年的第"+str(days_count)+"天。")
基礎不牢固,在提示輸入程式碼時忘記資料型別需要轉換導致執行報錯。
4、輸入三個整數x,y,z,請把這三個數由小到大輸出
#輸入三個整數x,y,z,請把這三個數由小到大輸出
x=int(input("請輸入x的數值:"))
y=int(input("請輸入y的數值:"))
z=int(input("請輸入z的數值:"))
if x<y<z:
print("從小到大排序分別是x:"+str(x)+"-y:"+str(y)+"-z:"+str(z))
elif x<z<y:
print("從小到大排序分別是x:"+str(x)+"-z:"+str(z)+"-y:"+str(y))
elif y<x<z:
print("從小到大排序分別是y:"+str(y)+"-x:"+str(x)+"-z:"+str(z))
elif y<z<x:
print("從小到大排序分別是y:"+str(y)+"-z:"+str(z)+"-x:"+str(x))
elif z<x<y:
print("從小到大排序分別是z:"+str(z)+"-x:"+str(x)+"-y:"+str(y))
elif z<y<x:
print("從小到大排序分別是z:"+str(y)+"-y:"+str(z)+"-x:"+str(x))
5、輸出9*9乘法表
#輸出9*9乘法表
for i in range(1,10):
for j in range(1,i+1):
print(str(j)+"*"+str(i)+"="+str(i*j),end=" ")
if i*j<10:
print(" ",end="")
print()
6、判斷101-200之間有多少素數,並輸出
#判斷101-200之間有多少素數,並輸出
import math
def isPrime(n):
if n<2:
return False
elif n==2:
return True
else:
m=int(math.sqrt(n))
for i in range(2,m+1):
if n%i==0:
return False
return True
for i in range(101,201):
if isPrime(i):
print(i,end=" ")
7、打印出所有的“水仙花數”,所謂的水仙花數是指一個三位數,其各位數字立方和等於該數本身.如153。
"""打印出所有的“水仙花數”,所謂的水仙花數是指一個三位數,
其各位數字立方和等於該數本身.如153。
"""
def isSxh(n):
if n<100 or n>999:
return False
else:
b=int(n/100)
s=int(n/10%10)
g=int(n%10)
if ((b*b*b+s*s*s+g*g*g)==n):
return True
else:
return False
for i in range(100,1000):
if isSxh(i):
print(i,end=" ")
8、將一個正整數分解質因數,例如:輸入90,打印出90=2×3×3×5。
#將一個正整數分解質因數,例如:輸入90,打印出90=2×3×3×5。
import math
def isPrime(n):
if n<2:
return False
elif n==2:
return True
else:
m=int(math.sqrt(n))
for i in range(2,m+1):
if n%i==0:
return False
return True
"""
使用遞迴演算法,每次都找出最小的質因數
然後迴圈呼叫
"""
def printNumber(n):
if isPrime(n):
print(n,end="")
else:
for i in range(1,n+1):
if isPrime(i) and n%i==0:
print(str(i)+"*",end="")
printNumber(int(n/i))
break
number=int(input("請輸入一個正整數:"))
print(str(number)+"=",end="")
printNumber(number)
相關推薦
Python基礎習題(一)
1、有1、2、3、4四個數字,能組成多少個互不相同且無重複數字的三位數?分別是多少? #先定義一個判斷一個三位數是否符合條件的函式 def isMynumber(n): a=int(n%10) b=int(n/10%10) c=in
Python基礎學習(一)
func exe function 學習 typeerror exit invalid min eas #Default Argument Values & in keyworddef ask_ok(prompt, retres=4, reminder=‘pleas
python基礎筆記(一)
val 變量 下劃線 .py 字母 pass 變量名 del 交互 python解釋器執行python程序的過程:python3 C:\test.py 1.啟動python解釋器(內存中) 2.將C:\test.py 內容從硬盤讀入內存(這一步與文本編輯器是一樣的) 3.執
python基礎整理(一)
sci 可變 python break job continue ont mat con 1、字符編碼: ASCIl碼 255個 每個字符一個字節, Unicode 每個字符兩個字節, UTF8 可變長的Unicode編碼,英文一個字節,中文三個字節。 2、格式化字
python基礎教程(一)
底層 技術分享 包括 什麽事 inpu 內容 很多 運算 下劃線 之所以選擇py交易有以下幾點:1、python是膠水語言(跨平臺),2、python無所不能(除了底層),3、python編寫方便(notepad++等文本編輯器就能搞事情),4、滲透方面很多腳本都是py
Python基礎例子(一)
wan raise -- ase pri prime pam 如果 cci 編碼風格 使用 4 空格縮進,而非 TAB 在小縮進(可以嵌套更深)和大縮進(更易讀)之間,4空格是一個很好的折中。TAB 引發了一些混亂,最好棄用 折行以確保其不會超過 79 個字符 這有
Python基礎知識(一) 初識Python
快捷 err ogl 熱門 HR 會有 社區 小型 palm Python簡介 一、Python介紹 Python(英國發音:/?pa?θ?n/ 美國發音:/?pa?θɑ?n/),是一種廣泛使用的高級編程語言,屬於通用型編程語言,由吉多·範羅蘇姆創造,第一版發布於1
Python基礎語法(一)
基礎 分享 AR .com pycha 安裝 python2.x ima 網上 Python2.x和3.x的區別簡單介紹: 編寫Python程序的幾種方式: 第一種: ctrl+d也可以退出交互式終端 第二種方式: exit()和ctrl+d都能退出
python基礎練習題(一)
的區別 註意 需求 color 劃線 print nbsp 用戶 一個個 1、執行 Python 腳本的兩種方式 python進入解釋器 python 1.py 2、簡述位、字節的關系 8位是一個字節 3、簡述 ascii、unicode、utf-8、gb
python基礎學習(一)--資料型別
Python一個 高階語言 2017-09-19 1.1 Python背景簡介(感謝偉大的廖雪峰大佬帶我們走上一條光頭路,嘿嘿) 寫了大半年Python程式碼,感覺收穫不是很大,都是現學現賣,沒有系統的瞭解過這個語言究竟是什麼樣的,從
python基礎複習(一)
判斷資料型別:type(object) 常見函式 絕對值:abs(-1.2)= 1.2 四捨五入:round(1.234,2)= 1.23 冪函式:pow(2,3)= 8 # 2的3次方 math模組 >
Python基礎習題(二)
9、一個數如果恰好等於其因子之和,則稱為完數,如6=1+2+3。找出1000以內所有完數。 #一個數如果恰好等於其因子之和,則稱為完數,如6=1+2+3。找出1000以內所有完數。 """ 思路:1、利用迴圈,依次查詢數值的因數 2、同時對其因數求和,當因
python 基礎篇(一)基本資料型別的宣告和定義
最近對python比較感興趣:所以試著先學習了一下基礎部分;順便寫一下大致感受:至於python的環境變數以及開發工具IDE就不多做解釋; helloWord print("helloWord"); python 註釋:
【001】Python全棧日記-Python基礎篇(一)
一、為什麼需要Python 如果你要用計算機做很多工作,最後你會發現有一些任務你更希望用自動化的方式進行處理。比如,你想要在大量的文字檔案中執行查詢/替換,或者以複雜的方式對大量的圖片進行重新命名和整理。也許你想要編寫一個小型的自定義資料庫、一個特殊的 GUI 應用程式或一個簡單的小遊戲。
Python基礎學習(一)之Python的概述與環境安裝
Python介紹 Python語言介紹 Python是一門高階的、面向物件的、解釋性、指令碼語言。 高階語言:貼近開發者,對應底層語言,底層語言貼近機器;java、C#、php 、ruby 面向物件對應於面向過程,是開發人員在開發過程當中的思路,是程式設計師的世界觀 解釋性對應於編譯性語言。 解釋
python 基礎學習(一)
一. is 與 == 的區別 Python中物件包含的三個基本要素,分別是:id(身份標識)、type(資料型別)和value(值) is 比較id == 比較值 注意: 假設 a 與 b 值相等 若資料為 數值型或字串型時,a is b 是 true 若資料為 t
Python基礎案例(一)
早就有耳聞Python是多麼多麼的強大了,滿懷一顆好奇心去研究研究,初學幾天,果然不出所料,Python很強大,相對java,C# 等來說也比較簡單,於是在學習中做了點總結,歡迎評論區留言
python初步——基礎總結(一)
python 自動化運維一. 第一個HelloWorld 1. 在linux 執行 (python2.7)[[email protected]/* */ ~]# vim test.py #!/usr/bin/env python
Python 之 基礎知識(一)
post 練習 初學 查看 http 變量 規則 style python程序 首先,對於初學者在一個項目中設置多個程序可以執行,是非常方便的,可以方便對不同知識點的練習和測試 對於商業項目而言,通常在一個項目中,只有一個可以執行的Python程序 一、註釋 為了提高可讀性
Python——Bumpy基礎知識(一)
一、Numpy的引入 1、標準的Python 中用列表(list)儲存一組值,可以當作陣列使用。但由於列表的元素可以是任何物件,因此列表中儲存的是物件的指標。對於數值運算來說,這種結構顯然比較浪費記憶體和CPU 計算 2、雖然Python 提供了array 模組,它和列表不同,能直接儲存數值,但