python3.7下にpygameのimportを隠して表示を歓迎します

12386 ワード

部分参照&引用
注意:コードを削除するソリューションの参照先:https://blog.csdn.net/tiantian520ttjs/article/details/102864419
引用する
pythonを初めて学んだ人はpygameというライブラリを使ったことがあると信じています.2 Dプログラムを書くのは役に立ちますが、このような問題に遭遇したことがあるに違いありません.
プログラムでimportを初めて使用したとき:
import pygame
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html

サプライズはありますか?コンソールクラスのプログラムを書くとき、このような大きな列を書くと、ユーザーを驚かせませんか?(手動滑稽)
今日はこの問題を解決します.
ソリューション1:削除_init__.pyのコード
まず、このディレクトリを見つけます(インストール場所が異なるため、マシンによって異なります):
C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Lib\site-packages\pygame

ディレクトリでファイルを見つけました_init__.py、探してみると、次のコードが見つかりました.
if 'PYGAME_HIDE_SUPPORT_PROMPT' not in os.environ:
    print('pygame %s' % ver)
    print('Hello from the pygame community. https://www.pygame.org/contribute.html')

元凶が見つかったでしょ?実はここまで、このコードを削除すればいいのです.
ソリューション2:osを変更します.environ
本当にここまでですか?原作者には向いていないと思いませんか?モジュールファイルを変更しないために、最初の行のコードをよく検討します.
if 'PYGAME_HIDE_SUPPORT_PROMPT' not in os.environ:

見つかりましたか?importモジュールの前にosを変更すればいいです.environでいいです.ではos.Environって何ですか?以下はhttps://www.cnblogs.com/keye/p/7679335.htmlの資料:
  python        ,  os.environ()

 environ                ;
 os.environ.keys()         key
 os.environ   key+

次のようになります.
>>>import os
>>> os.environ
environ({'ALLUSERSPROFILE': 'C:\\ProgramData', 'APPDATA': 'C:\\Users\\Administrator\\AppData\\Roaming', 'COMMONPROGRAMFILES': 'C:\\Program Files\\Common Files', 'COMMONPROGRAMFILES(X86)': 'C:\\Program Files (x86)\\Common Files', 'COMMONPROGRAMW6432': 'C:\\Program Files\\Common Files', 'COMPUTERNAME': 'ZP22U715YT3PAB5', 'COMSPEC': 'C:\\Windows\\system32\\cmd.exe', 'FP_NO_HOST_CHECK': 'NO', 'HOME': 'C:\\Users\\Administrator', 'HOMEDRIVE': 'C:', 'HOMEPATH': '\\Users\\Administrator', 'LOCALAPPDATA': 'C:\\Users\\Administrator\\AppData\\Local', 'LOGONSERVER': '\\\\ZP22U715YT3PAB5', 'NUMBER_OF_PROCESSORS': '2', 'OS': 'Windows_NT', 'PATH': 'C:\\Python27\\;C:\\Python27\\Scripts;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\Scripts\\;C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\;C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\lib\\site-packages\\pygame', 'PATHEXT': '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC', 'PROCESSOR_ARCHITECTURE': 'AMD64', 'PROCESSOR_IDENTIFIER': 'Intel64 Family 6 Model 23 Stepping 10, GenuineIntel', 'PROCESSOR_LEVEL': '6', 'PROCESSOR_REVISION': '170a', 'PROGRAMDATA': 'C:\\ProgramData', 'PROGRAMFILES': 'C:\\Program Files', 'PROGRAMFILES(X86)': 'C:\\Program Files (x86)', 'PROGRAMW6432': 'C:\\Program Files', 'PSMODULEPATH': 'C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\Modules\\', 'PUBLIC': 'C:\\Users\\Public', 'SESSIONNAME': 'Console', 'SYSTEMDRIVE': 'C:', 'SYSTEMROOT': 'C:\\Windows', 'TEMP': 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp', 'TMP': 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp', 'USERDOMAIN': 'ZP22U715YT3PAB5', 'USERNAME': 'Administrator', 'USERPROFILE': 'C:\\Users\\Administrator', 'WINDIR': 'C:\\Windows', 'WINDOWS_TRACING_FLAGS': '3', 'WINDOWS_TRACING_LOGFILE': 'C:\\BVTBin\\Tests\\installpackage\\csilogfile.log'})

これでわかったでしょう.os.Environは実は辞書で、辞書にPYGAMEを入れるだけです.HIDE_SUPPORT_PROMPTアイテムが良いので、コードは以下の通りです.
>>> import os
>>> os.environ["PYGAME_HIDE_SUPPORT_PROMPT"]="       "
>>> import pygame
>>> 

大成功!