跳转到主内容
思享编程网:思考分享,玩转编程世界!

Python基础入门,按位操作与图形绘制怎么玩?

文章导读

大家好,我是陆砚码,今天咱们来聊聊Python编程的基础入门练习题。这篇文章会带你走进按位操作的世界,还会教你怎么用Python画图。准备好了吗?一起探索吧!

正文部分

首先,我们来学习一下按位操作。

实例051:按位与

按位与操作符 & 可以用来比较两个数的二进制表示,只有当两个对应位都是1时,结果才为1。

a=0o77
print(a)
b=a&3
print(b)
b=b&7
print(b)

实例052:按位或

按位或操作符 | 会比较两个数的二进制表示,只要有一个对应位是1,结果就为1。

a=0o77
print(a|3)
print(a|3|7)

实例053:按位异或

按位异或操作符 ^ 会比较两个数的二进制表示,只有当两个对应位不同才为1。

a=0o77
print(a^3)
print(a^3^7)

实例054:位取反、位移动

位取反操作符 ~ 会将数的所有位取反,而位移动操作符 << 和 >> 可以用来将数左移或右移。

a=int(input('输入一个数字: '))
b=0
b=~b
b=b<<4
b=~b
c=a>>4
d=c&b
print('a:',bin(a))
print('b:',bin(b))
print('c:',bin(c))
print('d:',bin(d))

实例055:按位取反

按位取反操作符 ~ 可以用来将数的所有位取反。

print(~234)
print(~~234)

实例056:画圈

接下来,我们用Python的tkinter库来画图。这个例子会画一个圆形。

from tkinter import *
canvas=Canvas(width=800,height=600,bg='yellow')canvas.pack(expand=YES,fill=BOTH)k=1j=1for i in range(26):    canvas.create_oval(310-k,250-k,310+k,250+k,width=1)    k+=j    j+=0.3mainloop()

实例057:画线

这个例子会画一条直线。

if __name__ == '__main__':    from tkinter import *    canvas = Canvas(width=300, height=300, bg='green')    canvas.pack(expand=YES, fill=BOTH)    x0 = 263    y0 = 263    y1 = 275    x1 = 275    for i in range(19):        canvas.create_line(x0,y0,x0,y1, width=1, fill='red')        x0 = x0 - 5        y0 = y0 - 5        x1 = x1 + 5        y1 = y1 + 5    x0 = 263    y1 = 275    y0 = 263    for i in range(21):        canvas.create_line(x0,y0,x0,y1,fill = 'red')        x0 += 5        y0 += 5        y1 += 5    mainloop()

实例058:画矩形

这个例子会画一个矩形。

if __name__ == '__main__':    from tkinter import *    root = Tk()    root.title('Canvas')    canvas = Canvas(root,width = 400,height = 400,bg = 'yellow')    x0 = 263    y0 = 263    y1 = 275    x1 = 275    for i in range(19):        canvas.create_rectangle(x0,y0,x1,y1)        x0 -= 5        y0 -= 5        x1 += 5        y1 += 5    canvas.pack()    root.mainloop()

以上就是一些按位操作和图形绘制的例子,希望对你有所帮助。

小结与拓展

今天的文章就到这里了。我们学习了按位操作和图形绘制的基本方法。如果你对这些内容感兴趣,可以关注「思享编程网」(www.sxgpb.com),了解更多编程知识。

我是陆砚码,我们下期再见!

相关文章