学习心得:
我学习python一个月了,今天打算将从0开始学习python的经历与自己对python的理解整理成文章的形式,保存在博客里。
首先在学习之前应该先安装必要的软件,比如python和用来编程用的pycharm。 之后就进入了python的第一天的学习当中,我觉得在接触一门新的编程语言的第一天会很主动学习它,就像是我们第一次接触英语语言时,我们并不知道它是什么,但是我们有很大的兴趣去探索它。学编程也是一样,开始学习之后的几天后当好奇心被消耗殆尽,我们能否坚持下去这是最重要的。起步入门阶段我觉得是最容易放弃的时候,因为我们在其中的投入还很小,可以说几乎没有什么投入,又因为开始时候还会碰到很多问题。所以难免会有放弃它的想法但是只要挺过去,一切都会好起来的。希望和我一样的学习编程的伙伴们,不要在开始时放弃它。如果有其它语言的基础的话,这个问题就可以忽略的,因为有了一定的基础会避免很多的错误(比如在编程过程中中英文结合着去打符号,新手也不会看得出中英文符号的区别。这就会让人头疼因为代码都一样,为什么我的就报错了?在我接触第一门语言C语言时就是这样的。),有了一定的其他语言基础碰到报错也有一定的解决思路。
python学习内容:
一、变量与变量名
二、输入输出&类型转化
一、变量与变量名
本章节知识点:
什么是变量与变量名
变量名的命名规则
认识数据类型
运算符
变量与变量名
举例体验:我们去图书馆读书,怎么样快速找到⾃⼰想要的书籍呢?是不是管理员提前将书放到固定位置,并把这个位置进⾏了编号,我们只需要在图书馆中按照这个编号查找指定的位置就能找到想要的书籍。
这个编号其实就是把存放书籍的书架位置起了⼀个名字,⽅便后期查找和使⽤。
编号即为变量名,书架即为变量
程序中,数据都是临时存储在内存当中,为了更快速的查找或使⽤这个数据,通常在定义完成之后,定义⼀个名称,这个名称就是变量名。
变量名就是⼀个存储数据的的时候,当前数据所在的内存地址的名字⽽已。
id() 查看内存地址
定义变量
在python中,使用=来对变量进行命名
name = "洋洋"
# name是变量名,"洋洋"是变量值
也可为变量同时取多个变量名
name1 = name2 = name3 = "张三"
# 这里的name1,name2,name3都指向--"张三",所以他们内存地址是一样的
或者同时为多个变量进行同时赋值
name1, name2, name3 = "张三", "李四", "王五"
命名规则
变量名命名规则是Python中定义各种名字的时候的统⼀规范,具体如下:
- 变量名由数字,字母,下划线组成
注意:
- 不能数字开头&纯数字
- 不能使用python内置关键字等
- 不能用python数据类型
- 严格区分大小写
下面是python中的关键字:
import keyword
print(keyword.kwlist)
输出:
['False', 'None', 'True', '__peg_parser__', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass','raise', 'return', 'try', 'while', 'with', 'yield']
命名习惯
驼峰命名法
⼤驼峰:即每个单词⾸字⺟都⼤写,例如: MyName 。
⼩驼峰:第⼆个(含)以后的单词⾸字⺟⼤写,例如: myName 。
数据类型
在 Python ⾥为了应对不同的业务需求,也把数据分为不同的类型。
查看数据类型使用python内置函数type()来完成
数值类型
# 整数
num = 100
# 浮点数(小数)
number = 10.5
字符串类型
字符串使用单引号&双引号&三引号
name1 = '大家好我是小羊'
# 三引号在没有变量名的情况下属于多行注释
列表与元组
列表使用中括号表示,元组使用小括号表示
list1 = ["张三","李四","王五"]
tu1 = ("张三","李四","王五")
字典与集合
字典和集合都使用大括号表示,区分它们的方法是看里面的元素
# 集合当中的元素分布和列表元组一致
set1 = {"张三","李四","王五"}
# 字典当中的元素均为键值对
dict1 = {'name': '小羊', 'age': 20}
运算符
算数运算符
| 符号 | 描述 | 实例 |
|---|---|---|
| + | 加 | print(1+1) 输出结果为2 |
| - | 减 | print(1-1) 输出结果为0 |
| * | 乘 | print(2*2) 输出结果为4 |
| / | 除 | print(4/2) 输出结果为2 |
| // | 整除 | print(9//4) 输出结果为2 |
| % | 取余 | print(9%4) 输出结果为1 |
| ** | 乘方 | print(2**4) 输出结果为16 |
| () | 优先级 | print((1+1)*3) 输出结果为6 |
赋值运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| = | 赋值 | 将=右侧的结果赋值给=左侧的变量名 |
复合赋值运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| += | 加法赋值运算符 | a+=1等价于a=a+1 |
| -= | 减法赋值运算符 | a-=1等价于a=a-1 |
| *= | 乘法赋值运算符 | a*=1等价于a=ax1 |
| /= | 除法赋值运算符 | a/=1等价于a=a/1 |
| //= | 整除赋值运算符 | a//=1等价于a=a//1 |
| %= | 取余赋值运算符 | a%=1等价于a=a%1 |
| **= | 次方赋值运算符 | a**=1等价于a=axx1 |
比较运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| == | 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a == b) 为 True |
| != | 不等于 。如果两个操作数的结果不相等,则条件为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a != b) 为 False |
| 运算符左侧操作数结果是否⼤于右侧操作数结果,如果⼤于,则条件为真,否则为假 | 如a=7,b=3,则(a > b) 为 True | |
| >= | 运算符左侧操作数结果是否⼤于等于右侧操作数结果,如果⼤于等于,则条件为真,否则为假 | a=3,b=3,则(a >= b) 为 True |
| < | 运算符左侧操作数结果是否小于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=7,b=3,则(a < b) 为 False |
| <= | 运算符左侧操作数结果是否小于等于右侧操作数结果,如果小于等于,则条件为真,否则为假 | 如a=3,b=3,则(a <= b) 为 True |
逻辑运算符
| 运算符 | 逻辑表达式 | 描述 | 实例 |
|---|---|---|---|
| and | a and b | 如果 a 为 False,a and b 返回False | True and False, 返回False。 |
| or | a or b | 如果 a 为 True,a or b 返回True | False or True, 返回True。 |
| not | not b | 如果 b 为 True, not b 返回False | not True 返回 False; not False返回 True |
二、输入输出&类型转化
本章节内容
输入与输出
数据类型转化
输出
作用:程序输出内容给用户
占位符
所谓的格式化输出即按照⼀定的格式输出内容。
| 格式符号 | 转换 | 作用 |
|---|---|---|
| %s | 字符串 | 将变量作为字符串进行输出 |
| %d | 整数 | 将变量作为整数进行输出 |
| %f | 浮点数 | 将变量作为小数进行输出 |
实例:
name = "蔡徐坤"
num = 26
height = 180.5
print("全民制作人大家好,我是%s,我今年%d岁,我身高%f"%(name,num,height))
小技巧:
%06d,%.6d表示输出的整数显示位数,不⾜以0补全,超出当前位数则原样输出
%.2f,表示⼩数点后显示的⼩数位数。
format
相对基本格式化输出采用‘%’的方法,format()功能更强大,该函数把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’
name = "小羊"
num = 20
height = 170.5
print("大家好,我是{},我今年{}岁,我身高{}".format(name,num,height))
f"xxx{}xxx"
在字符串前面加上f以达到格式化的目的,在{}里加入对象,此为format的另一种形式
name = "小羊"
num = 20
height = 170.5
print(f"大家好,我是{name},我今年{num}岁,我身高{height}"
转义字符
| 转义符号 | 作用 |
|---|---|
| \n | 换行符 |
| \t | 制表符(四个空格) |
| \ | 续行符 |
| \单引号 | 单引号转义 |
| \双引号 | 双引号转义 |
输入
在Python中,程序接收⽤户输⼊数据的功能即是输⼊
var = input("请输入你的名字:")
print(var)
此处的var类型为str
输入的特点
- 当程序执⾏到 input ,等待⽤户输⼊,输⼊完成之后才继续向下执⾏。
- 在Python中, input 接收⽤户输⼊后,⼀般存储到变量,⽅便使⽤。
- 在Python中, input 会把接收到的任意⽤户输⼊的数据都当做字符串处理。
数据类型的转化
- 数据类型转换的必要性
- 数据类型转换常⽤⽅法
| 函数 | 说明 |
|---|---|
| int(x) | 将x转化为整数 |
| float(x) | 将x转化为浮点数 |
| str(x) | 将x转化为字符串 |
| eval(str) | 将字符串中的数据转换成Python表达式原本类型 |
| tuple(s) | 将序列 s 转换为⼀个元组 |
| list(s) | 将序列 s 转换为⼀个列表 |
整数,小数,字符串之间转化注意:
1、长得像整数的字符串可以转化为整数,也可以转化为浮点数 2、长得像小数的字符串可以转化为浮点数,不可以直接转化为整数
实例
# 1. float() -- 转换成浮点型
num1 = 1
print(float(num1))
print(type(float(num1)))
# 2. str() -- 转换成字符串类型
num2 = 10
print(type(str(num2)))
# 3. tuple() -- 将⼀个序列转换成元组
list1 = [10, 20, 30]
print(tuple(list1))
print(type(tuple(list1)))
# 4. list() -- 将⼀个序列转换成列表
t1 = (100, 200, 300)
print(list(t1))
print(type(list(t1)))
# 5. eval() -- 将字符串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '[1, 2, 3]'
str3 = '(1000, 2000, 3000)'
print(type(eval(str1)))
print(type(eval(str2)))
print(type(eval(str3)))
我的作业:
1.输入名字,年龄,身高,性别。再打印出去。
name=input("请输入你的姓名:")
age=input("请输入你的的年龄:")
height=input("请输入你的身高:")
sex=input("请输入你的性别:")
print(f"姓名:{name}\n身高:{height}\n年龄:{age}\n性别:{sex}")