Python入门:从Excel轻松入门Pandas【第一章】Python基础操作

注:该学习笔记是根据曾志贤老师编写的《Python数据分析实战:从Excel轻松入门Pandas》所学习整理的笔记。

# 第一章 Python基础操作

一、变量

在定义Python中的变量名时,要遵循以下规则:

  • 变量名必须以字母或下划线开始,名字中间只能由字母、数字和下划线组成。
  • 变量名的长度不能超过255个字符。
  • 变量名在有效范围内必须具有唯一性。
  • 变量名不能与Python中的保留关键字相冲突。
  • 变量名是区分大小写的。
# 数字  
a = 100  
# 字符串  
b = 'pandas'  
# 列表  
c = [1, 2, 3]

二、注释

注释表示对代码行进行说明,并不运行。

# 单行注释  
a = 110  
  
# 多行注释1  
'''  
多行注释第1行  
多行注释第2行  
多行注释第3行  
'''  
  
# 多行注释2  
"""  
多行注释第1行  
多行注释第2行  
多行注释第3行  
"""

# 代码注释快捷方式  
# 选中需要注释的代码段,按Ctrl键+/

三、数据结构

Python中常用的数据结构有6种:数字、字符串、列表、元组、集合、字典。
其中使用频率最高的是数字、字符串、列表和字典。
查询数据类型可是用type( )函数

1、数字

数字(number)有4中类型:

  • 整数型:int
  • 小数型:float
  • 复数型:complex
  • 布尔值:bool
    • 布尔值中只有False和True两种值,本质就是数字0和1
# 整数型  
print(type(100))  
# 返回 <class 'int'>  

# 小数型  
print(type(100.2))  
# 返回 <class 'float'> 

# 复数型  
print(type(9j))  
# 返回 <class 'complex'>  

# 布尔值  
print(type(False))  
# 返回 <class 'bool'>
print(type(True))  
# 返回 <class 'bool'>
print(int(False))  
# 返回 0
print(int(True))  
# 返回 1

2、字符串

字符串(string)的组成内容可以是数字、字母、汉字和符号等任何可以在计算机上表示出来的一串字符。

1)、字符串的表达

字符串放置在一对单引号(’ ')或双引号(" ")中,注意是英文状态下的。

name = '姓名:张三'  
age = "年龄:19岁"  
print(name, age)
2)、字符串切片
txt = 'Pandas超好的数据分析工具'  
# 取第1个字符  
print(txt[0])  
# 取最后1个字符  
print(txt[-1])  
# 指定开头到指定结尾的字符  
print(txt[6:8])  
# 从开头到指定结尾的字符  
print(txt[:6])  
# 从指定开头到结尾的字符  
print(txt[9:])  
# 所有的字符  
print(txt[:])  
print(txt)

3、列表

列表(list)可有序地存储一组数据元素。数据元素置于一对中括号之间,元素之间用英文半角逗号分隔,如[1, 2, 3]。
列表中的元素可以是任何数据类型,并且可以对列表进行修改。

1)、列表的添加
  • 添加单个元素:
    • append( )
  • 添加多个元素:
    • extend( )
# 添加单个  
lst1 = [98, 78, 100]  
lst1.append(1000)  
print(lst1) 

# 添加多个  
lst2 = [55, 66, 77]  
lst2.extend([88, 99])  
print(lst2)
2)、列表的删除
  • 删除列表中指定下标对应的元素:
    • pop( )
  • 删除列表中指定名称的元素:
    • remove( )
# 删除指定位置的元素  
lst3 = [55, 66, 77]  
lst3.pop(1)  
print(lst3)  
  
# 删除指定名称的元素,仅删除第1次找到的元素  
lst4 = [98, 78, 100, 98]  
lst4.remove(98)  
print(lst4)
3)、列表的切片

注意:如果列表切片的结果只有1个元素,则直接显示未标量值,如果为多个元素,则返回的是列表。

lst = [96, 85, 98, 100, 99]  
# 列表中的第1个元素  
print(lst[0])  
# 列表中的最后1个元素  
print(lst[-1])  
# 指定开头到指定结尾的元素  
print(lst[1:3])  
# 从开头到指定结尾的元素  
print(lst[:3])  
# 从指定开头到结尾的元素  
print(lst[2:])  
# 所有元素  
print(lst[:])  
print(lst)
4)、列表的修改

注意:如果切片结果是标量值,则提供修改的数据就是标量值;如果切片结果是列表,则提供修改的数据就是列表。

# 修改单个元素  
lst1 = [96, 85, 98, 100, 99]  
lst1[2] = 1000  
print(lst1)  
# 修改连续多个元素  
lst2 = [96, 85, 98, 100, 99]  
lst2[1:3] = [8, 9]  
print(lst2)

4、元组

元组(tuple)可有序地存储一组数据,数据元素置于一对圆括号之间,元素之间用英文半角逗号分隔。元组中的元素可以是任何数据类型。
不能对元组中的元素作修改,只能做切片设置。

注意:如果元组中只有1个元素,则需要再这个元素的后面加上逗号,如:(100,)

tup = (96, 85, 98, 100, 99)  
# 元组中的第1个元素  
print(tup[0])  
# 元组中的最后1个元素  
print(tup[-1])  
# 指定开头到指定结尾的元素  
print(tup[1:3])  
# 从开头到指定结尾的元素  
print(tup[:3])  
# 从指定开头到结尾的元素  
print(tup[2:])  
# 所有元素  
print(tup[:])  
print(tup)  
  
# 单个元组的写法  
tup1 = (100,)

5、集合

集合(set)是由唯一元素组成的无序集。数据元素置于一对花括号之间,元素之间用英文半角逗号分隔,如{1, 2, 3}。
集合里的每个元素必须保持唯一性,如果集合中的元素有重复,则在输出时会自动去重处理。

注意:集合是无序的,即集合中元素的位置无法固定,所以不能像列表、元组一样做切片。

st1 = {'苹果', '橙子', '石榴', '梨子'}  
print(st1)  
# 打印结果返回:{'苹果', '梨子', '橙子', '石榴'}  
  
st2 = {'苹果', '橙子', '石榴', '梨子', '梨子', '橙子'}  
print(st2)  
# 打印结果返回:{'苹果', '梨子', '橙子', '石榴'}

6、字典

字典(dict)是最重要的数据类型之一。每个元素由key与值组成,key与值之间用英文半角冒号分隔,key在字典中必须保持唯一性,值可以有重复的。
元素置于花括号中,元素之间用逗号分隔。

获取字典的key与值的相关信息,有以下3种常用操作。

  • 获取字典中所有的key用:keys( )
  • 获取字典中所有key对应的值用:values( )
  • 获取字典中所有的key与值用:items( )
dic1 = {'梨子': 99, '苹果': 95, '橙子': 91}  
print(dic1['苹果'])  
# 返回 95  
dic2 = {'梨子': 99, '苹果': 95, '橙子': 91}  
dic2['苹果'] = 75  
print(dic2)  
# 返回 {'梨子': 99, '苹果': 75, '橙子': 91}  
  
dic3 = {'梨子': 99, '苹果': 95, '橙子': 91}  
# 获取所有key  
print(dic3.keys())  
# 返回 dict_keys(['梨子', '苹果', '橙子'])  
  
# 获取所以的key的值  
print(dic3.values())  
# 返回 dict_values([99, 95, 91])  
# 获取所有的key与值  
print(dic3.items())  
# 返回 dict_items([('梨子', 99), ('苹果', 95), ('橙子', 91)])

四、控制语句

1、顺序语句

Python语句像其他编程语言一样,代码运行的顺序都是自上而下的。

注意:按顺序执行代码时,并不是绝对地自上而下运行每局代码,中途可能会做循环处理、条件分支处理等操作。

a = 100
b = 200
c = a + b
print(c)

2、循环语句

1)、for循环语句

for循环语句可以用来遍历仍和可迭代序列,如字符串、列表和字典等,在循环序列中的每个项目时,可以对项目执行处理操作。

# 循环字符串  
for i in 'pandas':  
    print(i)  
  
# 循环列表  
for i in ['pandas', 'python', 'excel']:  
    print(i)  
  
# 循环字典中的key  
for key in {'pandas': 100, 'python': 99, 'excel': 88}:  
    print(key)  
# 循环字典中的key与值  
for key, item in {'pandas': 100, 'python': 99, 'excel': 88}.items():  
    print(key, item)
2)、while循环语句

while循环语句用来循环执行指定的代码块,当条件成立时一直循环,直到条件不成立时终止循环。

n = 0  
while n < 5:  
    print(n)

3、分支语句

编写分支语句首先要定一个表达式,如果表达式返回值为布尔值True,则表示条件成立,如果表达式返回布尔值False,则表示条件不成立,可以根据返回的不同布尔值做不同的代码处理。

1)、单条件判断

if单条件分支语句判断指定的表达式是否成立。如果成立,则执行if下面的代码块,否则跳过。

n = 98  
if n > 90:  
    print('yes')  
else:  
    print('no')
2)、多条件判断
n = 76  
if n > 90:  
    print('优')  
elif n > 80:  
    print('良')  
elif n > 60:  
    print('中')  
else:  
    print('差')
3)、if三目运算

if三目运算是写一行的,如果条件判断比较简单,则可以使用此中代码编写方式。

n1 = 50  
val = 'yes' if n1 > 90 else 'no'  
print(val)

五、函数

函数是组织好的、可重复使用的代码,能提高应用的模块性和代码的重复利用率。

1、内置函数

内置函数无需用户定义,直接调用即可,例如print( )函数等等。

2、自定义函数

  • 语法结构:
    • def 函数名称(参数):
      • 语句块
      • return 返回值

创建自定义函数的规则如下:

  • 以def关键词开头,后接函数名称和圆括号(),在接冒号。
  • 传入的参数必须放在圆括号中,圆括号之间用于定义参数。
  • 函数代码块内容以冒号起始,并且缩进。
  • return后接函数的最终返回值。
def fun(x, y):  
    z = x + y  
    return z  
  
  
print(fun(100, 99))

3、匿名函数

匿名函数是一种特殊的自定义函数,特殊在定义的函数没有名称。一般在自定义功能比较简易的函数时,可以定义成匿名函数。

  • 语法结构:
    • lambda [arg1[,arg2,…argn]]: expression
fun = lambda x, y: x + y  
  
print(fun(10, 20))

4、函数的参数调用

注意:函数的参数分为必选参数和可选参数,例如自定义函数fun(x, y=1, z=0),x就是必选参数,表示必选填写;而y和z是可选参数,表示可以填写,也可以不填写(因为可选参数有默认值)。

def fun(x, y=1, z=0):  
    return x + y + z  


# 按位置传入必选参数数据  
print(fun(100))  
# 按位置传入所有参数数据  
print(fun(100, 200, 300))  
# 按位置传入必选参数数据,按关键字传入参数数据  
print(fun(10, z=20))  
# 按关键字传入参数数据  
print(fun(y=10, z=20, x=30))
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MeJonKing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值