【2】Python变量类型、IO

本文介绍了如何在Mac系统上设置环境变量以确保brew和Python3.10命令的可用性,包括编辑.bash_profile文件、添加路径、保存并使更改生效。同时讲解了变量的概念、Python中的变量使用、命名规则以及基础数据类型如数字、字符串等。
摘要由CSDN通过智能技术生成

环境变量设定

昨天我们已经在Mac上安装了 brew 和 python 3.10,部分同学反馈在自身环境中还是需要借助绝对路径来使用 brew 和 python。这是因为环境变量没有进行合适的设定,操作系统不知道该从何处去寻找 以上两个命令。

今天的课程开始之前,我们先设定好环境变量。

  1. 终端环境打开 ~/.bash_profile 文件
vim ~/.bash_profile
  1. 在打开的 .bash_profile 文件中增添下面一行:
`export PATH="/opt/homebrew/bin/"

保存退出(:wq)。

  1. 执行source ~/.bash_profile来使更改生效。
source ~/.bash_profile
  1. 关掉当前终端窗口,重新开启一个终端窗口。现在你应该可以通过 brew 和 python 直接进行调用。

变量

什么是变量

所谓「变量」,就是可以变化的量。变量可以通过变量名访问。

这一概念来源于数学,用在编程领域中,是指计算机语言中能储存计算结果或能表示值的抽象概念。

为什么要有变量

有个刚学 Python 第一天的同学问:

不懂为啥要用变量,需要什么值直接写就好了,干嘛还多此一举?

如果我们的程序都只是输出“Hello World”或做简单的四则运算,当然可以不用变量。

但实际的程序并不会这么简单。

在代码中,所有我们看到的符号、数字、字母、文字等,统称为数据。计算机程序就是由这些数据按照一定的语法规则组成的。

一个真正的程序里面会有各种数据,这些数据不可能都是固定不变的,会需要进行计算和处理。为了更方便地使用这些数据,我们要给这些数据取名字。简单来说,变量就是数据的名字,用以存取数据,通过不同的变量名区别不同的数据。

比如一个游戏里的角色,它所处的位置、它的等级、它攻击力、防御力、当前的血量等等,这些数据都需要用变量来管理。一个萝卜一个坑,一个数值也要关联到一个变量上,程序才好处理它。

变量的使用

使用变量无非两种情况,一是存放数值,二是提取存放的数值。

在 Python 语言中,变量需要遵循「先创建,后使用」的原则。

Python 中要创建一个变量,就是用等号(=)向一个变量名赋值。如:

a = 1

这就创建了一个值为 1 的变量 a。

然后你就可以使用这个变量。如:

print(a)

或者用它去创建另一个变量。如:

b = a + 2

既然都说了是“变”量,那自然也可以给变量重新赋值。如:

a = 3

这样 a 的值就被修改为了 3。

如果直接使用一个没有赋值过的变量名,会引发一个名称未定义的 NameError 错误,导致程序中断。如:

print(x)

会报错:

NameError: name 'x' is not defined

变量的命名

在编写任何编程代码时,包括Python代码,良好的变量命名实践对于代码的可读性和可维护性至关重要。良好的变量命名可以帮助其他人理解你的代码,也可以帮助你自己在日后更容易地回顾和修改代码。如果变量命名混乱或不符合规范,代码会变得晦涩难懂,降低了代码的质量。

Python的变量命名规则相对简单,但有一些关键规则需要遵循:

  1. 变量名只能包含字母、数字和下划线
    在Python中,变量名只能包含以下字符:
  • 字母(大写或小写)
  • 数字(0-9)
  • 下划线(_)
  1. 变量名必须以字母(大写或小写)或下划线开头
    变量名的第一个字符必须是字母(大写或小写)或下划线。数字不能作为变量名的开头字符。

  2. 变量名对大小写敏感
    Python是大小写敏感的编程语言,这意味着变量名中的大写字母和小写字母被视为不同的字符。例如,变量名myVariable和myvariable被视为两个不同的变量。

  3. 避免使用Python关键字
    Python有一些关键字,它们具有特殊含义,用于控制程序的流程和逻辑。因此,不要将这些关键字用作变量名。以下是Python的一些关键字:

import keyword
print(keyword.kwlist)

在这里插入图片描述

  1. 使用有意义的变量名
    为了增强代码的可读性,使用具有描述性的变量名是非常重要的。变量名应该清晰地反映出变量的用途。例如,使用user_age而不是u_a来表示用户的年龄。

  2. 采用下划线分隔的命名风格
    在Python中,通常采用下划线分隔的命名风格,这也被称为蛇形命名法(Snake Case)。这意味着变量名中的单词用下划线分隔,所有字母都小写,例如user_name或total_amount。

Python中的基础数据类型

Python3 中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

可以使用内置的type()、isinstance()函数可以用来查询变量所指的对象类型

Python可以同时为多个变量赋值

a = b = c = 1
a, b, c = 1, 2, "This is a string"

Number

Python3 支持 int、float、bool、complex(复数)。
在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

数值运算:

5 + 4  # 加法
9
4.3 - 2 # 减法
2.3
3 * 7  # 乘法
21
2 / 4  # ▲除法,/得到一个浮点数
0.5
2 // 4 # ▲除法,//得到一个整数
0
17 % 3 # 取余
2
2 ** 5 # 乘方
32

字符串

▲Python 没有单独的字符类型,一个字符就是长度为1的字符串
▲与 C 字符串不同的是,Python 字符串不能被改变。向一个索引位置赋值,比如word[0] = 'm’会导致错误。

string = 'Learning Python3 from Scratch'
print(string)  # 输出字符串
print(string[0:-2])  # 输出第1个到倒数第3个的所有字符
print(string[0])  # 输出字符串第1个字符
print(string[6:10])  # 输出从第7个开始到第10个的字符
print(string[6:])  # 输出从第6个开始后的所有字符
print(string[0:10:2])  # 输出从第1个开始到第10个且每隔一个的字符(步长为2)
print(string * 2)  # 输出字符串2次
print(string + '基础语法')  # 连接字符串
print('------------------------------')
print('Hello\nWorld')  # 使用反斜杠(\)+n转义特殊字符
print(r'Hello\nWorld')  # 在字符串前面添加一个 r,表示原始字符串,不会发生转义

List列表

List(列表) 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

▲与Python字符串不一样的是,列表中的元素是可以改变的

列表截取的语法格式如下:

变量[头下标:尾下标]

list = [ 'Python', 123 , 234, 'Self Learning', 345 ]
tinylist = [123, 'Python']
print (list)            # 输出完整列表
print (list[0])         # 输出列表第一个元素
print (list[1:3])       # 从第二个开始输出到第三个元素
print (list[2:])        # 输出从第三个元素开始的所有元素
print (tinylist * 2)    # 输出两次列表
print (list + tinylist) # 连接列表

Tuple元组、Set集合、Dictionary字典 留待后续课程。

Python基本IO

输入函数input()

Python 提供了 input() 内置函数从标准输入(键盘)读入一行文本,默认的标准输入是键盘。

input()函数等待用户从键盘输入,接收一个字符串,包括空格,都可以输入。只有回车不接受,作为结束符。格式:

input([prompt])

其中,prompt是可选的,可作为提示信息。

返回值是从键盘输入的一行文本。

用户输入的任何内容Python 都认为是一个字符串,如果需要其他类型就需要转换函数,如:

float() 字符串或者整数–>浮点型

int() 字符串或浮点型–>整数型

str() 数字–>字符串

eval() 数字–>实数

chr() ASCII值–>ASCII字符

例如:

a = input("请输入字符串:")

b= int(input(("请输入一个整数:")))

c = float(input("请输入一个数值:"))

输出函数print()

语法

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

将 objects 打印到 file 指定的文本流,以 sep 分隔并在末尾加上 end。可选项 sep, end, file 和 flush 如果存在,它们必须以关键字参数的形式给出。

参数描述

objects 要输出的对象,是复数形式,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。

sep 用来间隔多个对象,默认值是一个空格。

end 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。

file 要写入的文件对象,默认是标准输出。

flush 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。

print()无返回值。

下面给出Print()内置函数基本示例源码:

print(1)#输出:1
print("Hello World") #输出:Hello World
a= 10
b= "Hi"
print(a,b) #输出:10 Hi
print("aaa""bbb") #输出:aaabbb
print("aaa","bbb") #输出:aaa bbb
print("aaa","bbb",sep=".")  # 设置间隔符,输出:aaa.bbb

如何使用print()输出多个不同数据类型的数据

★用str函数统一成字符串,如:

age = 10

print("她今年" + str(age) + " 岁.")

★数据的格式化输出

在这里插入图片描述
例子

s='syy'

x=20

print('%s 明年%d岁' %(s,x))

作业

  1. 接收三个整数的输入,将其中最大的值打印出来。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值