A. cmd攻擊別人電腦命令,
無法攻擊別人電腦,但是可以訪問別人電腦。
如下參考:
1.在桌面上,單擊「開始」,單擊「運行」。
B. python程序代碼混淆、編譯、打包、運行(桌面程序防破解向)
像Python這種解釋性的語言,要想私有化部署的同時又保護好源碼,就像是對於魚和熊掌的追求。
雖然做不到盡善盡美,但是對代碼進行混淆,增加一點破解的難度,或許能規避一些泄露的風險。
本次演示環境:linux
確保要發布的包根目錄("demo")中有__main__.py文件,這個是程序執行入口。
編譯
批量改名.pyc文件
移動.pyc文件
清理.py文件
清理__pycache__文件夾
打包成zip
運行時只要將zip文件作為參數即可
最終整合腳本
調用方式
對於在變數和函數名上的混淆有點小兒科,而對於跨文件的類名的混淆又太容易實現。
所以對於混淆程度的取捨,要視工程的規模而定。
2.1 混淆工具pyminifier
在原來的工具 pyminifier上修復了幾個bug。
安裝:
python3 安裝
或者clone下來,自行安裝
使用例子
2.2 源碼變更
不同的配置對於源碼的要求不同,以下是筆者踩過的坑。
其他混淆想法
結合混淆、編譯和打包,嘗試出以下發布腳本。
主要的思路 :創建一個工作目錄tmp,然後在此目錄下混淆、編譯python代碼,完成後把內容打包成pyc文件,再將pyc文件和其他配置文件移動到dist,發布dist即可。
混淆的目的是最大程度保護源碼,在發布到客戶端後不被輕易破解。
C. python外星人入侵游戲左移正常,右移屏幕上不顯示,但實際上已經移動了
主要看看向右移動的地方的代碼有沒有問題:
#設置向右移動flag
self.move_right=False
deflistening_key_down(self,event):
"""
監聽key_down事件
:paramevent:
"""
ifevent.key==pygame.K_RIGHT:
self.air_ship.move_right=True
elifevent.key==pygame.K_LEFT:
self.air_ship.move_left=True
deflistening_key_up(self,event):
"""
監聽key_up事件
:paramevent:
"""
ifevent.key==pygame.K_RIGHT:
self.air_ship.move_right=False
elifevent.key==pygame.K_LEFT:
self.air_ship.move_left=False
defmove(self):
"""
更新飛船橫軸位置,實現左右移動
"""
ifself.move_rightandself.air_ship_rect.right<=self.screen_rect.right:
self.center+=self.speed_factorifself.move_leftandself.air_ship_rect.left>=self.screen_rect.left:
self.center-=self.speed_factor
self.air_ship_rect.centerx=self.center
deflistening_game_event(self):
"""
監聽事件
"""
foreventinpygame.event.get():ifevent.type==pygame.QUIT:
pygame.quit()
sys.exit()elifevent.type==pygame.KEYDOWN:
self.listening_key_down(event)elifevent.type==pygame.KEYUP:
self.listening_key_up(event)
#游戲主循環
whileTrue:self.listening_game_event()self.air_ship.move()self.update_game_screen()
D. 我用Python做了一個櫻花樹,360說有活動感染病毒正在入侵你的電腦,怎麼回事。
你的exe應用沒有安全證書,360就會報錯的,我也遇到過。沒關系。網上下載的應用都是有安全證書的。你把360關了就行。
E. 《外星人入侵》的python完整代碼
項目名如標題,在《python編程:從入門到實踐》里有完整詳細的說明,網上也能查到源碼,這里只是在重復這種程序
不過學編程,借鑒模仿很重要,即使抄輪子也得抄個像模像樣才行,抄到即是學到。
進入正題:
游戲很簡單,就是一個打飛機類型的游戲,以下代碼將實現游戲的主程序,飛船的基本操作等。
註:這里提醒新上手的萌新,python的代碼不要隨便復制粘貼!
不要隨便復制粘貼!
不要隨便復制粘貼!
python的縮進很嚴格,復制粘貼後一定要注意格式是否正確,否則會報出異常:
IndentationError: unexpected indent
未知的縮進錯誤
當出現此提示時,要檢查一下哪裡的縮進出現了問題,小段的代碼還好,大段的代碼就呵呵了
注意下載好的文件後綴名為.whl
然後新建一個文件夾,名字叫alien_invasion,將下載好的模塊放在此文件夾下,
然後你要新建以下文件:
1.alien_invasion.py 游戲主程序
2.game_functions.py 存放游戲函數
3.bullet.py 子彈模塊
4.settings.py 游戲設置模塊
5.ship.py 飛船模塊
然後新建images文件夾存放飛船素材。
這些會讓我們實現啟動游戲,飛船的顯示與移動,以及開火功能。
為避免文章冗~長,這里貼一段主程序代碼,其它代碼下周見(偷懶)。
alien_invasion.py
#!usr/bin/env python3
#_*_ coding:utf-8 _*_
#此模塊是游戲的主程序
import sys
import game_functions as gf #導入game_functions文件,並指定了別名gf
import pygame
from settings import Settings
from ship import Ship
from pygame.sprite import Group
def run_game():
# 初始化游戲並創建一個屏幕對象
pygame.init() #pygame的init函數,用於創建一個游戲對象
#把Setting類實例化
ai_settings = Settings()
#顯示游戲窗口並設置其大小
screen = pygame.display.set_mode(
(ai_settings.screen_width,ai_settings.screen_height))
#設置窗口標題
pygame.display.set_caption("Alien Invasion")
# 把Ship類實例化,用於創建飛船
ship = Ship(ai_settings,screen)
#存儲子彈的編組
bullets = Group()
#開始游戲的主循環
while True:
#用於響應滑鼠,鍵盤事件
gf.check_events(ai_settings,screen,ship,bullets)
#更新飛船在屏幕的位置
ship.update()
#更新子彈位置並刪除消失的子彈
gf.update_bullets(bullets)
#用於更新屏幕背景色,更新飛船,子彈等
gf.update_screen(ai_settings,screen,ship,bullets)
run_game() #運行游戲
F. python不能弄到筆記本電腦桌面嗎
可以
方法如下:python在桌面創圖標的方法:2.找到python的安裝目錄並進入,滑鼠右鍵單擊『python.exe』,選擇發送到桌面就可以了。
G. Python可以做桌面應用程序嗎
Python可以做桌面應用程序嗎
Python可以做桌面應用程序!
目前比較主流的幾個GUI平台:
1、Tkinter:使用Tk平台,支持大多數的Unix系統,同時可以在Windows和Mac下運行,是Python的標准界面庫,但是由於界面醜陋,文檔極差而被開發者吐槽。
2、wxpython:擁有成熟和豐富的包,跨平台,可在Unix,Windows,Mac下運行,入門簡單,文檔寫的很詳細,再加上官方的Demo大全,確實給初學者降低難度,可以作為入門學習的首選庫。
3、PythonWin:只能在Windows上使用,調用windows的GUI,如果要做跨平台的應用程序,顯然不會選擇它。
4、PyGTK:使用GTK平台,Linux系統上使用較多,跨平台。
5、PyQt:優點界面美觀,多個平台,文檔和教程豐富。但是商業化使用有版權的問題,需要授權,體積相對較大。
更多技術請關注Python視頻教程。