55、學習使用按位取反~。
程式分析:~0=1; ~1=0;
(1)先使a右移4位。
(2)設定乙個低4位全為1,其餘全為0的數。可用~(~0<<4)
(3)將上面二者進行&運算。
#python3.7
if__name__ == '
__main__':
a = 234b = ~a
print('
the a\'s 1 complement is %d
' %b)
a = ~a
print('
the a\'s 2 complement is %d
' % a)
56、畫圖,學用circle畫圓形。
#python3.7
from tkinter import *
if__name__ == '
__main__':
canvas = canvas(width = 800, height = 600, bg = '
purple')
canvas.pack(expand = yes, fill =both)
k = 1j = 1
for i in range(0, 26):
canvas.create_oval(310 - k, 250 - k, 310 + k, 250 + k, width = 1)
k += 1j += 0.3mainloop()
57、畫圖,學用line畫直線。
#python3.7
from tkinter import *
if__name__ == '
__main__':
canvas = canvas(width=300, height=300, bg='
gold')
canvas.pack(expand=yes, fill=both)
x0 = 263y0 = 263x1 = 275y1 = 275
for i in range(19):
canvas.create_line(x0, y0, x1, y1, width=1, fill='
red'
) x0 = x0 - 5y0 = y0 - 5x1 = x1 + 5y1 = y1 + 5x0 = 263y0 = 263y1 = 275
for i in range(21):
canvas.create_line(x0, y0, x0, y1, fill='
red'
) x0 += 5y0 += 5y1 += 5mainloop()
58、畫圖,學用rectangle畫方形。
程式分析:rectangle(intleft,inttop,intright,intbottom)
引數說明:(left ,top )為矩形的左上座標,(right,bottom)為矩形的右下座標,兩者可確定乙個矩形的大小。
#python3.7
from tkinter import *
if__name__ == '
__main__':
root =tk()
root.title(
'canvas')
canvas = canvas(root, width = 400, height = 400, bg = '
yellow')
x0 = 263y0 = 263x1 = 275y1 = 275
for i in range(19):
canvas.create_rectangle(x0, y0, x1, y1)
x0 -= 5y0 -= 5x1 += 5y1 += 5canvas.pack()
root.mainloop()
59、畫圖,綜合例子。
程式分析:利用for迴圈控制100-999個數,每個數分解出個位,十位,百位。
#python3.7
from tkinter import *
import
math
if__name__ == '
__main__':
canvas = canvas(width = 300, height = 300, bg = '
green')
canvas.pack(expand = yes, fill =both)
x0 = 150y0 = 100canvas.create_oval(x0 - 10, y0 - 10, x0 + 10, y0 + 10)
canvas.create_oval(x0 - 20, y0 - 20, x0 + 20, y0 + 20)
canvas.create_oval(x0 - 50, y0 - 50, x0 + 50, y0 + 50)
b = 0.809
for i in range(16):
a = 2 * math.pi / 16x = math.ceil(x0 + 48 *math.cos(a))
y = math.ceil(y0 + 48 * math.sin(a) *b)
canvas.create_line(x0, y0, x, y, fill = '
red'
) canvas.create_oval(x0 - 60, y0 - 60, x0 + 60, y0 + 60)
for k in range(501):
for i in range(17):
a = (2 * math.pi / 16) * i + (2 * math.pi / 180) *k
x = math.ceil(x0 + 48 *math.cos(a))
y = math.ceil(y0 + 48 + math.sin(a) *b)
canvas.create_line(x0, y0, x, y, fill = '
red'
)
for j in range(51):
a = (2 * math.pi / 16) * i + (2 * math.pi / 180) * k - 1x = math.ceil(x0 + 48 *math.cos(a))
y = math.ceil(y0 + 48 * math.sin(a) *b)
canvas.create_line(x0, y0, x, y, fill = '
red'
) mainloop()
60、計算字串長度。
#python3.7
sstr1 = '
strlen
'print(len(sstr1))
Python練手例子(10)
55 學習使用按位取反 程式分析 0 1 1 0 1 先使a右移4位。2 設定乙個低4位全為1,其餘全為0的數。可用 0 4 3 將上面二者進行 運算。python3.7 if name main a 234b a print the a s 1 complement is d b a a prin...
Python練手例子(2)
7 將乙個列表的資料複製到另乙個列表中。程式分析 使用列表 python3.7 適用於簡單列表 即列表中都是基本的元素 a1 1,2 b1 a1 print b1 不適合列表中包含列表的情況,如果要複製的列表中包含列表,只會複製那個列表的列表的引用 a2 1,2,3 b2 a2 print a2 p...
Python練手例子(6)
31 請輸入星期幾的第乙個字母來判斷一下是星期幾,如果第乙個字母一樣,則繼續判斷第二個字母。程式分析 用情況語句比較好,如果第乙個字母一樣,則判斷用情況語句或if語句判斷第二個字母。letter input please input if letter s print please input se...