IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 第004课:python中库、模块、方法、参数 -> 正文阅读

[Python知识库]第004课:python中库、模块、方法、参数

视频地址:观看

1. 代码程序

1.1 上次课的代码

import pygame,sys

pygame.init()
screen = pygame.display.set_mode((600,400))
pygame.display.set_caption("星火工坊")
ball = pygame.image.load("pygame/images/pyg02-ball.gif")   # 一定注意这里的路径
ball_rect = ball.get_rect()

while True:
    for e in pygame.event.get():
        if e.type == pygame.QUIT:
            sys.exit()

    screen.fill((0,0,0))
    screen.blit(ball, ball_rect)
    
    pygame.display.update()

** 1.2 本次课的代码

import pygame, sys, os   #引入pygame和sys
pygame.init()        #  初始化init()
screen = pygame.display.set_mode((600, 400))
pygame.display.set_caption("pygame 游戏")

os.system('pause')

2. python中的库

  1. 内置库
    Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用。

  2. 第三方库
    在Python中,安装第三方库,是通过包管理工具pip完成的。一般来说,第三方库都会在Python官方的pypi.python.org网站注册,要安装一个第三方库,必须先知道该库的名称,可以在官网或者pypi上搜索,比如,安装pygame的命令就是:
    pip install pygame

  3. 关于库、模块、方法、参数

模块1
模块2
……
模块n
方法
方法1
……
方法n

方法中可以有0个或n个参数


3. 语句解读

os.system("pause") 按任意键继续

3.1 pygame.init()

官方说明

功能:初始化所有导入的 pygame 模块

返回值: -> (numpass, numfail)

初始化所有导入的 pygame 模块。如果模块失败,则不会引发异常,但成功和失败的init的总数将作为元组返回。您始终可以手动初始化各个模块,但是pygame.init()是开始一切的便捷方式。单个模块的 init()函数在失败时会引发异常

您可能希望分别初始化不同的模块以加快程序速度或不使用游戏不需要的模块。

多次调用它是安全的,因为重复调用将无效。即使您拥有所有模块也是如此。

3.2 pygame.quit()

官方说明

功能取消初始化所有pygame模块

返回值:-> 无

取消初始化所有之前已初始化的 pygame 模块。当 Python 解释器关闭时,无论如何都会调用此方法,因此您的程序不需要它,除非它想终止其 pygame 资源并继续。多次调用此函数是安全的,因为重复调用无效。

PS: 调用pygame.quit()不会退出你的程序。

3.3 pygame.display.set_mode()

官方说明
功能
返回值set_mode(size=(0, 0), flags=0, depth=0, display=0, vsync=0) -> Surface
参数size=(0, 0), flags=0, depth=0, display=0, vsync=0

举例:在网站注册时的信息:昵称,密码,验证码,电子邮箱等,

该函数将创建一个显示界面(窗体)。传入的参数是对显示类型的请求。

请注意pygame.display,如果之前未初始化,则调用此函数会隐式初始化 。

  • size 参数是一对表示宽度和高度的数字。
    如果没有传递或设置大小,则创建的 Surface 将具有与当前屏幕分辨率相同的大小(0, 0)。如果仅将宽度或高度设置为0,则 Surface 将具有与屏幕分辨率相同的宽度或高度。
  • flags 参数是附加选项的集合。
    flags 参数控制您想要的显示类型。有多种类型可供选择,您甚至可以使用按位或运算符(竖线“|”字符)组合多种类型。以下是您要选择的显示标志:
显示类型说明
pygame.FULLSCREEN创建一个全屏显示。
pygame.OPENGL创建一个 OpenGL 可渲染的显示器
pygame.RESIZABLE显示的窗口应该是大小合适的。
pygame.NOFRAME显示窗口将没有边界或控制。
pygame.SCALED分辨率取决于桌面尺寸和图形比例。
pygame.SHOWN窗口以可见模式打开(默认)。
pygame.HIDDEN窗口以隐藏模式打开。
  • depth 参数表示用于颜色的位数。
    通常最好不要传递深度参数。它将默认为系统的最佳的颜色深度。如果您的游戏需要特定的颜色格式,您可以使用此参数控制深度。Pygame 将模拟一个可能很慢的不可用颜色深度。
  • vsync
    通过将vsync参数设置为1,可以获得垂直同步的显示,但不能保证获得。该请求仅适用于set_mode()设置了pygame.OPENGLor pygame.SCALED标志的调用,即使set_mode()设置了其中一个也不能保证生效。显示结果取决于运行 pygame 的系统的硬件和驱动程序配置。下面是一个调用的示例用法,它可能会给你一个带有 vsync 的显示:
flags = pygame.OPENGL | pygame.FULLSCREEN
window_surface = pygame.display.set_mode((1920, 1080), flags, vsync=1)

基本示例:

# Open a window on the screen
screen_width=700
screen_height=400
screen=pygame.display.set_mode([screen_width, screen_height])

display = 0表示使用默认显示。如果未提供display参数,则可以使用环境变量覆盖默认显示。
返回的 Surface 可以像普通 Surface 一样绘制,但最终会在显示器上看到变化。


4. 延伸阅读

内置模块

Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用。

我们以内建的sys模块为例,编写一个hello的模块:

# -*- coding: utf-8 -*-

' a test module '

__author__ = 'Michael Liao'

import sys

def test():
    args = sys.argv
    if len(args)==1:
        print('Hello, world!')
    elif len(args)==2:
        print('Hello, %s!' % args[1])
    else:
        print('Too many arguments!')

if __name__=='__main__':
    test()

第1行是标准注释,表示.py文件本身使用标准UTF-8编码;

第3行是一个字符串,表示模块的文档注释,任何模块代码的第一个字符串都被视为模块的文档注释;

第5行使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名;

以上就是Python模块的标准文件模板,当然也可以全部删掉,但是,按标准办事肯定没错。

后面开始就是真正的代码部分。

你可能注意到了,使用sys模块的第一步,就是导入该模块:

import sys
导入sys模块后,我们就有了变量sys指向该模块,利用sys变量,就可以访问sys模块的所有功能。

sys模块有一个argv变量,用list存储了命令行的所有参数。argv至少有一个元素,因为第一个参数永远是该.py文件的名称,例如:

运行python3 hello.py获得的sys.argv就是['hello.py']

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-05-10 11:52:00  更:2022-05-10 11:52:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:55:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码