Python入门指南:从零开始学习Python编程

news2024/11/23 21:19:45

文章目录

  • 前言
  • 安装Python
  • 变量以及数据类型
  • 总结

前言

Python是一种简单而又强大的编程语言,它在全球范围内广受欢迎,适用于各种应用场景,包括Web开发、数据分析、人工智能和科学计算等。本篇博客将为初学者提供一份Python入门指南,帮助你从零开始掌握Python编程基础。

安装Python

首先,我们需要安装Python解释器。前往Python官方网站(https://www.python.org/)下载最新版本的Python,然后按照安装向导进行安装。在安装过程中,请务必勾选“将Python添加到系统环境变量”选项,以便能在命令行中运行Python。
也可以参考:Python下载及环境的安装

变量以及数据类型

1.变量的定义

对于重复使用,并且经常需要修改的数据,可以定义为变量,来提高编程效率。
定义变量的语法为: 变量名 = 变量值 。(这里的 = 作用是赋值。)
定义变量后可以使用变量名来访问变量值。
变量即是可以变化的量,可以随时进行修改。
程序就是用来处理数据的,而变量就是用来存储数据的。

name = '小尘要自信'

2.变量的类型

在python中,只要定义了一个变量,而且它有数据,那么它的类型就已经确定了,不需要开发者主动的去说明它的类型,系统会自动辨别。也就是说在使用的时候 “变量没有类型,数据才有类型”。

数字:int(有符号整型),long(长整型),float(浮点型),complex(复数),
布尔型:true,false
string:字符串
List:列表
Tuple:元组
dictionary:字典

# int
age = 18
# float
money = 18.0
# boll 男  True
sex = True
gender = False

# string 
# 字符串 使用的是单引号 或者双引号
s = '小尘要自信'
# list  列表
# 应用场景:当获取到了很多个数据的时候 那么我们可以将他们存储到列表中 然后直接使用列表访问
name_list = ['罗志祥','吴亦凡']
print(name_list)
# tuple 元组
age_tuple = (18,19,20,21)
print(age_tuple)
# dict  字典
# 应用场景:scrapy框架使用
# 格式:变量的名字 = {key:value,key1:value1}
person = {'name':'小尘要自信','age':18}
print(person)

如果临时想要查看一个变量存储的数据类型,可以使用 type(变量的名字),来查看变量存储的数据类型。

a = type(age)
print(a)
  • 字符串

字符串的常见操作包括:
获取长度:len len函数可以获取字符串的长度。

s = 'china'
print(len(s))

查找内容:find 查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次出现的开始位置索引值,如果不存在,则返回-1

s1 = 'china'
print(s1.find('a'))

判断:startswith,endswith 判断字符串是不是以谁谁谁开头/结尾

s2 = 'china'
print(s2.startswith('h'))
print(s2.endswith('n'))

计算出现次数:count 返回 str在start和end之间 在 mystr里面出现的次数

s3 = 'aaabb'
print(s3.count('b'))

替换内容:replace 替换字符串中指定的内容,如果指定次数count,则替换不会超过count次。

s4 = 'cccdd'
print(s4.replace('c','d'))

切割字符串:split 通过参数的内容切割字符串

s5 = '1#2#3#4'
print(s5.split('#'))

修改大小写:upper,lower 将字符串中的大小写互换

s6 = 'china'
print(s6.upper())
s7 = 'CHINA'
print(s7.lower())

空格处理:strip 去空格

s8 = '   a   '
print(len(s8))
print(len(s8.strip()))

字符串拼接:join 字符串拼接

s9 = 'a'
print(s9.join('hello'))
  • 列表

  • 添加元素

append 在末尾添加元素

# append  追加   在列表的最后来添加一个对象/数据
food_list = ['铁锅炖大鹅','酸菜五花肉']
print(food_list)
food_list.append('小鸡炖蘑菇')
print(food_list)

insert 在指定位置插入元素

char_list = ['a','c','d']
print(char_list)
# index的值就是你想插入数据的那个下标
char_list.insert(1,'b')
print(char_list)

extend 合并两个列表

num_list = [1,2,3]
num1_list = [4,5,6]
num_list.extend(num1_list)
print(num_list)
  • 修改元素

通过指定下标来访问列表元素,因此修改元素的时候,为指定的列表下标赋值即可实现修改元素

city_list = ['北京','上海','深圳','武汉','西安']
print(city_list)
# 将列表中的元素的值修改
# 可以通过下标来修改,注意列表中的下标是从0开始的
city_list[4] = '大连'
print(city_list)
  • 查找元素

所谓的查找,就是看看指定的元素是否存在,主要包含一下几个方法:
in 和 not in
in, not in
python中查找的常用方法为:
in(存在),如果存在那么结果为true,否则为false
not in(不存在),如果不存在那么结果为true,否则false

# in 是判断某一个元素是否在某一个列表中
# food_list = ['锅包肉','汆白肉','东北乱炖']

# 判断一下在控制台输入的那个数据 是否在列表中
# food = input('请输入您想吃的食物')
#
# if food in food_list:
#     print('在')
# else:
#     print('不在,一边拉去')


# not in

ball_list = ['篮球','台球']

# 在控制台上输入你喜欢的球类 然后判断是否不在这个列表中
ball = input('请输入您喜欢的球类')

if ball not in ball_list:
    print('不在')
else:
    print('在')
  • 删除元素

类比现实生活中,如果某位同学调班了,那么就应该把这个条走后的学生的姓名删除掉;在开发中经常会用到删除这种功能。
列表元素的常用删除方法有:
del:根据下标进行删除
pop:删除最后一个元素
remove:根据元素的值进行删除

# in 是判断某一个元素是否在某一个列表中
# food_list = ['锅包肉','汆白肉','东北乱炖']

# 判断一下在控制台输入的那个数据 是否在列表中
# food = input('请输入您想吃的食物')
#
# if food in food_list:
#     print('在')
# else:
#     print('不在,一边拉去')


# not in

ball_list = ['篮球','台球']

# 在控制台上输入你喜欢的球类 然后判断是否不在这个列表中
ball = input('请输入您喜欢的球类')

if ball not in ball_list:
    print('不在')
else:
    print('在')
  • 元组

Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
访问元组
修改元组
python中不允许修改元组的数据,包括不能删除其中的元素。
定义只有一个数据的元组
定义只有一个元素的元组,需要在唯一的元素后写一个逗号

# a_tuple = (1,2,3,4)
# print(a_tuple[0])
# print(a_tuple[1])
# 元组是不可以修改里面的内容的
# a_tuple[3] = 5
# print(a_tuple)
# a_list = [1,2,3,4]
# print(a_list[0])
#
# a_list[3] = 5
# print(a_list)
# 列表中的元素是可以修改的 而元组中的元素是不可以被修改
a_tuple = (5)
print(type(a_tuple))
# 当元组中只要一个元素的时候  那么他是整型数据
# 定义只有一个元素的元组,需要在唯一的元素后写一个逗号
b_tuple = (5,)
print(type(b_tuple))
  • 切片

切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
切片的语法:[起始:结束:步长],也可以简化使用 [起始:结束]
注意:选取的区间从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身),步长表示选取间隔。

s ='hello world'
# 在切片中直接写一个下标
print(s[0])
# 左闭右开区间   包含坐标的数据 不包含右边的数据
print(s[0:4])
# 是从起始的值开始  一直到末尾
print(s[1:])
# 是下标为0的索引的元素开始 一直到第二参数为止   遵循左闭右开区间
print(s[:4])
# hello  world
# 从下标为0的位置开始 到下标为6的位置结束  每次增长2个长度
print(s[0:6:2])
  • 字典

查看元素

除了使用key查找数据,还可以使用get来获取数据

# 定义一个字典
person = {'name':'吴签','age':28}
# 访问person的name
# print(person['name'])
# print(person['age'])
# 使用[]的方式,获取字典中不存在的key的时候  会发生异常   keyerror
# print(person['sex'])
# 不能使用.的方式来访问字典的数据
# print(person.name)
# print(person.get('name'))
# print(person.get('age'))
# 使用.的方式,获取字典中不存在的key的时候  会返回None值
print(person.get('sex'))

修改元素

字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改
添加元素
如果在使用 变量名[‘键’] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素

person = {'name':'张三','age':18}
# 修改之前的字典
print(person)
# 修改name的值为法外狂徒
person['name'] = '法外狂徒'
# 修改之后的字典
print(person)

demo:添加新的元素

person = {'name':'老马'}
print(person)
# 给字典添加一个新的key value
# 如果使用变量名字['键'] = 数据时  这个键如果在字典中不存在  那么就会变成新增元素
person['age'] = 18
# 如果这个键在字典中存在 那么就会变成这个元素
person['name'] = '阿马'
print(person)

删除元素

del

# 删除字典中指定的某一个元素
person = {'name':'老马','age':18}
# 删除之前
# print(person)
# del person['age']
# # 删除之后
# print(person)
# 删除整个字典
# 删除之前
# print(person)
# del person
# # 删除之后
# print(person)

clear()

# clear
# 清空字典 但是保留字典对象
print(person)
# 清空指的是将字典中所有的数据 都删除掉  而保留字典的结构
person.clear()
print(person)

字典的遍历

# 遍历--》就是数据一个一个的输出
person = {'name':'阿马','age':18,'sex':'男'}

遍历字典的key(键)

# (1) 遍历字典的key
# 字典.keys() 方法 获取的字典中所有的key值  key是一个变量的名字 我们可以随便起
# for key in person.keys():
#     print(key)

遍历字典的value(值)

# (2) 遍历字典的value
# 字典.values()方法  获取字典中所有的value值   value也是一个变量 我们可以随便命名
# for value in person.values():
#     print(value)

遍历字典的项(元素)

# (3) 遍历字典的key和value
# for key,value in person.items():
#     print(key,value)

遍历字典的key-value(键值对)

for item in person.items():
    print(item)

总结

本篇博客简要介绍了Python编程的入门知识,包括安装Python、变量和数据类型、函数以及列表和字典。这只是Python编程世界的冰山一角,希望它能帮助你起步。在接下来的学习过程中,你可以深入学习Python的更多特性和功能,开发出更加强大的应用程序。祝你编程愉快!

图书推荐

《Python之光》
在这里插入图片描述
《Python之光》将重新定义Python的学习方式,帮助读者更好地应用Python进入实际工作中。

  • 本书亮点

零基础,尽量不使用专业词汇,不需要任何背景知识;
语言通俗易懂,讲解深入浅出,内容详略得当;
代码简洁,变量命名尽量使用简单单词;
知识全面,讲解精练,涵盖最新的语言特性;
知识结构设计合理,学习曲线平滑;
面向应用,讲解必备的第三方库,配有经典、实用的案例。
另外,本书不堆砌知识,而是合理编排内容,从总到分,从原理到细节,从理论到实例,根据读者的学习心智模型层层递进。在应用部分,本书选取了数据科学(数据处理、数据分析、数据可视化)、办公自动化(对Word、Excel的操作)、图形及界面、Web开发等领域的案例,引导读者在实践中应用Python。这些案例非常有代表性,且均有详细的代码讲解。
提供海量免费配套资源,包括100个视频、1600个实战案例、源代码下载、高品质练习题、作者提供全程辅导、思维导图呈现全书知识精华、配套完整教学PPT,让学习过程直观易懂。
无论学习者的年龄、职业或行业,都能轻松入门Python编程。《Python之光》为初学者提供了极简的入门之路,是入门Python编程的不二之选。
在这里插入图片描述

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

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

相关文章

甄知科技新一代AIGC产品发布

文/玉娇龙 本文约3200字,阅读全文需要大约3分钟左右 演讲嘉宾:张礼军 甄知科技联合创始人,CTO 首席产品官 一、甄知科技简介 2023年7月29日,甄知科技联合创始人兼 CTO 张礼军作为演讲嘉宾,在2023汉得新一代产品体系发布…

webgpu之旅05

看一下粒子 这次看官方的demo吧分析 这次看官方的demo吧 演示了一个粒子如何用cs动起来 分析 这里是着色部分&#xff0c;看起来没什么特别的&#xff0c;接下来看cs部分 binding(0) group(0) var<uniform> sim_params : SimulationParams; binding(1) group(0) var&l…

《向量数据库指南》——当前向量数据库的赛道有哪些?

当前&#xff0c;向量数据库赛道主要分为四个类别&#xff1a; 基于PG、Clickhouse 等进行魔改或者插件化实现的向量数据库&#xff1a;这类解决方案以现有的关系数据库或列存数据库作为基础&#xff0c;通过修改或插件扩展的方式添加向量搜索功能。PG Vector 是这类解决方案的…

领航ADR新赛道 边界无限靖云甲究竟新在哪儿?

随着5G、物联网、大数据、人工智能和云计算等新技术的加速落地应用&#xff0c;全球已经迈入数字化时代&#xff0c;传统的网络边界持续瓦解&#xff0c;物联网安全、云安全、移动安全、数据安全、安全智能运维等全新的挑战越发受到业界关注&#xff0c;产业技术的发展尤其是云…

Django框架之路由用法

简介 路由简单的来说就是根据用户请求的 URL 链接来判断对应的处理程序&#xff0c;并返回处理结果&#xff0c;也就是 URL 与 Django 的视图建立映射关系。 Django 路由在 urls.py 配置&#xff0c;urls.py 中的每一条配置对应相应的处理方法。 Django 不同版本 urls.py 配…

【NLP概念源和流】 05-引进LSTM网络(第 5/20 部分)

一、说明 在上一篇博客中,我们讨论了原版RNN架构,也讨论了它的局限性。梯度消失是一个非常重要的缺点,它限制了RNN对较短序列的建模。香草 RNN 在相关输入事件和目标信号之间存在超过 5-10 个离散时间步长的时间滞时无法学习。这基本上限制了香草RNN在许多实际问题上的应用,…

【组合计数】CF1151E

Problem - 1151E - Codeforces 题意&#xff1a; 思路&#xff1a; 我们要统计区间数量&#xff0c;有两个思考方向 一个是枚举右端点r&#xff0c;然后计算左端点l的贡献 还有一个就是&#xff0c;更换枚举对象 这道题是后者 因为答案是连通块数量 连通块数量点数-边数…

基于量子同态加密的改进多方量子私有比较

摘要量子同态加密在隐私保护方面具有明显的优势。本文提出了一种改进的基于量子同态加密的多方量子私钥比较协议。首先&#xff0c;引入可信密钥中心&#xff0c;安全辅助加密密钥的分发和解密密钥的更新&#xff0c;同时防止恶意服务器发布虚假结果的攻击;在保证所有参与者得到…

视频太大怎么压缩变小?视频压缩技巧快来学

我们都知道&#xff0c;视频分辨率越高&#xff0c;文件体积也就越大&#xff0c;为了更好的存储、传输和播放&#xff0c;我们需要适当压缩视频的大小&#xff0c;那么怎么才能轻松的将视频文件压缩变小呢&#xff1f;下面就给大家分享几个简单的方法&#xff0c;一起来看看吧…

GlobalSign证书是什么?

GlobalSign自1996年起开始签发可信赖的SSL数字证书&#xff0c;为全球各类企业提供SSL证书服务&#xff0c;在国内大中型企业中普及度高&#xff0c;且支持本地化服务&#xff0c;获得BAT高度认可。GlobalSign证书是电商行业优选证书&#xff0c;也是中国各大互联网公司青睐的S…

危化品行业防雷检测综合解决方案

危化品是指具有毒害、腐蚀、爆炸、燃烧、助燃等性质&#xff0c;能够对人体、设施或者环境造成危害的化学品。危化品的生产、储存、运输、使用等过程中&#xff0c;都存在着遭受雷击引发火灾或者爆炸事故的风险。因此&#xff0c;对危化品场所进行防雷检测&#xff0c;是保障危…

高薪Offer收割机之索引及索引的数据结构

什么是索引,索引的数据结构 索引是帮助数据库高效获取数据的数据结构,索引也是以文件的方式存在磁盘中,索引以某种方式指向数据,所以可以在索引中实现高效的数据查询。 我们以二叉树为例来讲解一下索引的原理。下图左边为原始表数据,右边为在年龄字段上建立的二叉树结构…

Spring系列二:基于注解配置bean【建议收藏】

文章目录 &#x1f497;通过注解配置bean&#x1f35d;基本介绍&#x1f35d;快速入门&#x1f35d;注意事项和细节 &#x1f497;自己实现Spring注解配置Bean机制&#x1f35d;需求说明&#x1f35d;思路分析&#x1f35d;注意事项和细节 &#x1f497;自动装配 Autowired&…

sql 参数自动替换

需求&#xff1a;看日志时&#xff0c;有的sql 非常的长&#xff0c;参数比较多&#xff0c;无法直接在sql 客户端工具执行&#xff0c;如果一个一个的把问号占位符替换为参数太麻烦&#xff0c;因此写个html 小工具&#xff0c;批量替换&#xff1a; 代码&#xff1a; <!…

【Autoresizing案例2 Objective-C语言】

一、Autoresizing案例2 1.那么,接下来,咱们看第二个案例, 刚才我们设置了Autoresizing,的外面四根线,用来设置这个子控件距离父控件的距离,是固定吧 然后呢,我们给大家演示一下什么,演示一下里面这两根线, 里面有一根横的一根线,和一根竖的一根线, 这两根线是什么作…

windows系统的IP、路由、网关、内外网同时访问路由以及修改系统文件hosts的配置

当我们刚刚入职一家公司的时候、一般公司会给我下发一个ip地址和mac地址、还有访问一些公司的平台需要修改hosts之后的路由配置、以及第一次配置内网、如何内外网同时上网。 目录 一、ip的配置 1.1、IP的配置 1.2、mac地址的配置 1.3、内外网路由的配置&#xff08;w11系统需…

c语言指针一

#include "stdio.h" #include <stdlib.h>int main() {//char buf[] "ab";char a[] { a,b,0,c };//内存存储的为数字0 等价于 \0char b[] { a,b,0,c };char c[] { a,b,\0,c };//printf("%s\n",buf);//puts(buf);//数组元素的首地址//fp…

[Linux]基础IO详解(系统文件I/O接口、文件描述符、理解重定向)

hello&#xff0c;大家好&#xff0c;这里是bang___bang_ &#xff0c;今天和大家谈谈Linux中的基础IO&#xff0c;包含内容有对应的系统文件I/O接口&#xff0c;文件描述符&#xff0c;理解重定向。 目录 1️⃣初识文件 2️⃣ 系统文件I/O接口 &#x1f359;open &#x1…

51单片机学习--DS1302可调时钟

之前学习过用定时器做的时钟&#xff0c;但是那样不仅误差大还费CPU&#xff0c;接下来利用DS1302时钟模块做一个可调实时时钟 这一次直接编写DS1302模块&#xff0c;首先要在DS1392.c 中根据下面的模块原理图进行位声明&#xff1a; sbit DS1302_SCLK P3^6; sbit DS1302_IO …

05 Ubuntu下安装.deb安装包方式安装vscode,snap安装Jetbrains产品等常用软件

使用deb包安装类型 deb包指的其实就是debian系统&#xff0c;ubuntu系统是基于debian系统的发行版。 一般我们会到需要的软件官网下载deb安装包&#xff0c;然后你既可以采用使用“软件安装”打开的方法来进行安装&#xff0c;也可以使用命令行进行安装。我推荐后者&#xff…