学习Python需要准备什么?BoBo仔为您指点明经~~~

news2025/1/21 5:56:47

前言

大家好!我是bobo仔,欢迎来阅读我的文章。我的这篇文章是专门为Python新手筹备的,大家一定要好好阅读,做好每一步,完成每一节。

【注:部分内容为作者见解、发现,如有版权侵袭或是信息错误请指出,谢谢!】

一、为什么要学习Python?

首先,Python是非常有使用前景的。
据悉,近期各年级学生热衷于游玩的一款网易(NetEasy)出品的游戏蛋仔派对(Eggy Party)风靡全国。让人惊讶的是,这么完美的游戏主引擎居然是Python做的!Python凭借着它的间简洁性、实用性在各大游戏市场所向披靡,迅速发展起来,一跃成为当代主流编程语言之首
在这里插入图片描述
可见,Python的使用前景极为广泛。
而且,Python也频繁使用于当代的“黑科技”——AI人工智能中,由此可见一斑。
所以,我们学习Python是非常有必要的。

二、学习Python难吗

这个不好说,我们先拎出1门语言——C++与跑Python对比
这个程序叫做“Hello World!”程序,是一个新手常用的入门程序。让我们来对比一下,看看哪种语言略胜一筹

C++

#include <iostream>
using namespace std;
int main()
{
	cout<<"Hello World!"<<endl;
	return 0;
}

Python

print('Hello World!')

看看,c++为了输出一个小小的helloworld足足用了7行代码,而Python则只用了1行!由此,Python的简洁性可见一斑。
其次,我们再来对比一下Python和c++循环的对比

C++

for(int i = 1; i <= 10; i++)
{
    cout<<i<<endl;
}

而Python却只有这样:

for i in range(1,11):
	print(i)

所以,大家知道Python都多简单了吗?

当然,学习Python不能说难,也不能说简单,因为Python变态的时候也是有的:

这是游戏《外星人入侵》的部分源码

import sys

import pygame
from pygame.sprite import Group
from settings import Settings
from ship import Ship
from alien import Alien
import game_functions as gf
from game_stats import GameStats
from scoreboard import Scoreboard

from button import Button

def run_game():
    #初始化pygame、设置和屏幕对象
    pygame.init()
   
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Alien Invasion")

    #创建play按钮
    play_button = Button(ai_settings, screen, "Play")
    
    #创建一艘飞船#创建一个用于存储子弹的编组#创建一个外星人编队
    ship = Ship(ai_settings, screen)
    bullets = Group()
    aliens = Group()

    # 创建外星人群
    gf.create_fleet(ai_settings, screen, ship, aliens)

    #创建一个用于存储游戏统计信息的实例,并创建计分牌
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    
    # 开始游戏的主循环
    while True:
        
        # 监视键盘和鼠标事件
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets)
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_settings, screen, stats, sb,
                              ship, aliens, bullets)
            gf.update_aliens(ai_settings, screen, stats, sb, ship, aliens,
                             bullets)
        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens,
                         bullets, play_button)
        print(len(bullets))
        
##        gf.update_screen(ai_settings, screen, ship, bullets)

        

run_game()


设置类

#settings.py  factor 要素,像素
class Settings():
    """存储《外星人入侵》的所有设置的类"""

    def __init__(self):
        """初始化游戏的静态设置"""
        #屏幕设置
        self.screen_width = 800
        self.screen_height = 600
        self.bg_color = (230, 230, 230)

        # 飞船的设置
        self.ship_limit = 3
        self.ship_speed_factor = 1.3
        
        
        # 子弹设置
        self.bullet_width = 3
        self.bullet_height = 15
        self.bullet_color = 60, 60, 60
        #子弹数量
        self.bullets_allowed = 5

        #外星人设置
        self.fleet_drop_speed = 10

        #以什么样的速度加快游戏节奏
        self.speedup_scale = 1.1
        #外星人点数的提高速度
        self.score_scale = 1.5
        
        self.initialize_dynamic_settings()


    def initialize_dynamic_settings(self):
        """初始化随游戏进行而变化的设置"""
        self.ship_speed_factor = 1.5
        self.bullet_speed_factor = 3
        self.alien_speed_factor = 1


        #记分
        self.alien_points = 50

        #fleet_direction为1表示向右,为-1表示向左
        self.fleet_direction = 1

    def increase_speed(self):
        """提高速度设置和外星人分值"""
        self.ship_speed_factor *= self.speedup_scale
        self.bullet_speed_factor *= self.speedup_scale
        self.alien_speed_factor *= self.speedup_scale

        self.alien_points = int(self.alien_points * self.score_scale)
        #print(self.alien_points)

三、学习Python要准备些什么?

首先,最重要的,你需要有一颗坚持不懈、勇往直前的心,因为学习编程一定是一段艰难的历程;如果半途而废,那之前耗费的心血一定会灰飞烟灭。
其次,我们需要有一个完美的编程环境
环境的搭建过程我把文章介绍给你们:
https://editor.csdn.net/md/?articleId=132636510
大家别忘了阅读哦,有不明白的记得询问!

然后,就是完美的配置。

我在这篇文章里也讲了,我们要用到一个软件——海龟编辑器。
在这里插入图片描述
这是海龟编辑器的logo。
这款软件支持积木编程,适合新手使用;学会了积木之后,我们就要学习代码编程【建议3年级以上直接上手代码编程】。在软件界面里,我们可以看到上面的栏中有一个叫做库管理的东西。
在这里插入图片描述
看到了吗?这就是海龟编辑器的厉害之处——它以软件直装的方式将第三方库完美的展现给了我们。
我们只要在顶部搜索框中搜索我们想要安装的第三方库即可。
在这里插入图片描述
我推荐新手使用这款软件,因为它不用像其他软件(比如visual studio以及IDLE这样)那样麻烦。

具体的安装过程我就不详细讲了,大家只要认真阅读我的文章即可。

四、教程推荐

因为我就是1为Python博主,因此我也写了许多Python的教程系列文章,大家只要打开百度或者浏览器,搜索Python新手小白低级(或者入门级)教程即可。
我目前(截止至2月13日)已经写了关于21篇文章,是完整体系的入门级/低级教程,精彩不容错过!
【注:是CSDN博客!】

结束语

最后,制作不易,别忘了一圈三连,点赞加关注!后续我会不断推出Python的新教程,敬请期待!

浏览方法

通过我的头像点进我的主页
在这里插入图片描述
方法:点击左上角我的头像,来到以下页面之后,即可浏览自己想看的文章了。
在这里插入图片描述
【注:我可能会更换头像,别忘了我的名字:BoBo仔学编程!】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1446945.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

kali系统概述、nmap扫描应用、john破解密码、抓包概述、以太网帧结构、抓包应用、wireshark应用、nginx安全加固、Linux系统加固

目录 kali nmap扫描 使用john破解密码 抓包 封装与解封装 网络层数据包结构 TCP头部结构​编辑 UDP头部结构 实施抓包 安全加固 nginx安全 防止缓冲区溢出 Linux加固 kali 实际上它就是一个预安装了很多安全工具的Debian Linux [rootmyhost ~]# kali resetkali …

BUUCTF-Real-[Jupyter]notebook-rce

1、简介 Jupyter Notebook&#xff08;此前被称为 IPython notebook&#xff09;是一个交互式笔记本&#xff0c;支持运行 40 多种编程语言。 如果管理员未为Jupyter Notebook配置密码&#xff0c;将导致未授权访问漏洞&#xff0c;游客可在其中创建一个console并执行任意Pytho…

Java中“==”和equals方法的区别

目录 一、“”举例 二、equals举例 区别如下&#xff1a; &#xff08;1&#xff09;“”既可以用在基本数据类型&#xff0c;也可以用在引用数据类型&#xff1b;如果用在基本数据类型上&#xff0c;那么比较时比较的是具体的值&#xff0c;如果用在引用数据类型&#xff0c…

Stable Diffusion 模型下载:majicMIX reverie 麦橘梦幻

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十

线性代数的本质 1 向量

向量是线性代数中最为基础的概念。 何为向量&#xff1f; 从物理上看&#xff0c; 向量就是既有大小又有方向的量&#xff0c;只要这两者一定&#xff0c;就可以在空间中随便移动。 从计算机应用的角度看&#xff0c;向量和列表很接近&#xff0c;可以用来描述某对象的几个不同…

2024-2-6-复习作业

1> 要求&#xff1a; 源代码&#xff1a; #include <stdio.h> #include <stdlib.h> void output(int arr[],int len) {for(int i0;i<len;i){printf("%d ",arr[i]);}puts(""); } void bubble_sort(int arr[],int len) {for(int i1;i<…

upload-labs文件上传漏洞靶场

第一关 <?php eval ($_POST[123]);?>发现他这个是通过客户端前端写了一个限制 我们禁用srcipt即可 蚁剑成功打开 第二关 我们上传文件2.php它提示我们文件类型不正确 我们可以联想到做了后缀检测 我们通过burp抓包修改后缀 第三关 我们上传一个.php文件不可上…

Netty应用(一) 之 NIO概念 基本编程

目录 第一章 概念引入 1.分布式概念引入 第二章 Netty基础 - NIO 1.引言 1.1 什么是Netty&#xff1f; 1.2 为什么要学习Netty&#xff1f; 2.NIO编程 2.1 传统网络通信中开发方式及问题&#xff08;BIO&#xff09; 2.1.1 多线程版网络编程 2.1.2 线程池版的网络编程…

C++异常特性以及使用

异常 1.C传统的处理错误方式2.异常概念3.异常使用规则抛出和匹配规则 4.异常的重新抛出4.异常安全5.异常规范6.使用自定义的异常7.C标准异常体系7.异常优缺点 1.C传统的处理错误方式 终止程序&#xff1a;如assert&#xff0c;缺陷&#xff1a;用户难以接受。如发生内存错误&a…

探索Gorm - Golang流行的数据库ORM框架

&#x1f3f7;️个人主页&#xff1a;鼠鼠我捏&#xff0c;要死了捏的主页 &#x1f3f7;️系列专栏&#xff1a;Golang全栈-专栏 &#x1f3f7;️个人学习笔记&#xff0c;若有缺误&#xff0c;欢迎评论区指正 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&…

备战蓝桥杯---组合数学2

本专题主要介绍容斥原理。 大家高中的时候肯定接触过韦恩图&#xff0c;容斥原理比较通俗的理解就是减去所有可能并加上重叠的部分。 我们直接看公式&#xff1a; 知道后&#xff0c;我们先看道模板题&#xff1a; 下面是AC代码&#xff1a; #include<bits/stdc.h> us…

C#,奥西里斯数(Osiris Number)的算法与源代码

1 奥西里斯数(Osiris Number) 奥西里斯数(Osiris Number)是一个数字&#xff0c; 其值等于通过将其自身数字的所有排列相加而形成的所有数字的值之和。 计算结果&#xff1a; 2 源程序 using System; namespace Legalsoft.Truffer.Algorithm { /// <summary> /…

【JavaScrpt 漫游】【015】JSON 对象简记

文章简介 本文为【JavaScript 漫游】专栏的第 015 篇文章&#xff0c;主要是对 JS 语言中的 JSON 对象的知识点进行了简要记录。 JSON 格式JSON 对象JSON.stringify()JSON.parse() JSON 格式 JSON 格式&#xff08;JavaScript Object Notation 的缩写&#xff09;是一种用于…

windows10|音视频剪辑|FFMPEG录屏和网络推流源初步的生成

前言&#xff1a; FFMPEG的功能强大是毋庸置疑的&#xff0c;那么录屏的需求大家在某些时候大家可能是非常需要的&#xff0c;例如&#xff0c;现有的项目需要演示&#xff0c;因此录制一段演示视频&#xff1b;亦或者做内容分发直播的&#xff0c;比如游戏主播&#xff0c;需…

Netty Review - NioServerSocketChannel源码分析

文章目录 概述入口NioServerSocketChannel 类继承关系实例化过程中做的事情小结 概述 入口 ChannelFuture channelFuture serverBootstrap.bind(9000).sync();我们进入bind方法 /*** Create a new {link Channel} and bind it.*/ public ChannelFuture bind(int inetPort) {…

【学网攻】 第(26)节 -- 综合网络实验一

系列文章目录 目录 系列文章目录 文章目录 前言 一、综合实验 二、实验 1.引入 实验目标 实验设备 实验拓扑图 实验配置 文章目录 【学网攻】 第(1)节 -- 认识网络【学网攻】 第(2)节 -- 交换机认识及使用【学网攻】 第(3)节 -- 交换机配置聚合端口【学网攻】 第(4)节…

Ubuntu Desktop - Files Preferences

Ubuntu Desktop - Files Preferences 1. Behavior2. ViewsReferences 1. Behavior Go to file browser’s Menu -> Edit -> Preferences -> Behavior 2. Views Go to file browser’s Menu -> Edit -> Preferences -> Views ​​​ References [1] Yong…

猫头虎分享已解决Bug || AttributeError: ‘Sequential‘ object has no attribute ‘session‘

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

盘点数据可视化大屏焦点图十种样式

所谓焦点图就是大屏中居于中心位置的图&#xff0c;是视觉的中心&#xff0c;本位列举了十种焦点图样式供大家参考。 地球作为焦点图 图片来自网络 地图作为焦点图 图片来自网络 城市作为焦点图 图片来自网络 园区做焦点图 图片来自网络 建筑做焦点图 图片来自网络 生产线…

【lesson51】信号之信号处理

文章目录 信号处理可重入函数volatileSIGCHLD信号 信号处理 信号产生之后&#xff0c;信号可能无法被立即处理&#xff0c;一般在合适的时候处理。 1.在合适的时候处理&#xff08;是什么时候&#xff1f;&#xff09; 信号相关的数据字段都是在进程PCB内部。 而进程工作的状态…