关于python基础的一点理解

一、常量与变量

(一)常量和常量

举个2例子如下:

name = "张三"
age = 18

上面两行代码中,nameage分别是变量名,而"张三"18就是常量值。

(二)变量名命名规则

  • 不能以数字开头
  • 可由数字、字母或下划线组成
  • 对大小写敏感
  • 不能是关键字

二、数据类型与运算符

(一)数据类型

类型是编程语言对数据的一个分类。

1.基本数据类型

基本数据类型有3种:数字类型、字符串类型和布尔型。

(1)数字类型

就是对应的数学里面的数字,有了数字类型在程序设计中才能进行数学运算。数字类型分2类:

  • 整型:即整数
  • 浮点型:即带有小数的数字
(2)字符串类型

我们知道计算机只知道0和1,但0和1对于人来说不好理解,所以字符串类型就是为了方便人而诞生的。
用一对单引号、双引号或一对三引号作为定界符:

str1 = '中华人民共和国'
str2 = "中华人民共和国"
str3 = '''中华人民共和国'''

对于一些特殊字符,需要用使用转义字符\或者r来表示。

file_path = "d:\\test.py"
file_path = r"d:\test.py"

字符串操作—访问字符:

  • 字符串值本质上是一个字符序列
  • 字符串最左端位置标记为0,依次增加
  • 这个标记也被称为“索引”
  • 单个索引则返回指定位置的单个字符
  • 访问方法:字符串[索引]
str1 = '中华人民共和国'
str1_1 = str1[0]
  • 假设一个字符串长度为L,其索引从0开始,到L-1结束
  • Python允许索引为负数,代表从末尾向左边方向索引,最右边则为-1
  • 两个整数索引值可以确定一个位置范围,返回子串,访问方法:字符串[start:end],其中startend代表索引位置,子串从索引start开始到end-1结束,不包括end
str1 = '中华人民共和国'
str_cut = str1[4:7]
  • 两个字符串之间可以通过+连接成为一个新的字符串
str1 = "中华人民共和国"
str2 = "你好"
str_full = str1 + str2
  • 一个字符串和一个整数可以使用*生成一个由其本身字符串重复连接而成的字符串
str1 = "中华人民共和国"
num= 3
str_full = str1 * num
  • len()方法可以返回一个字符串的长度
str1 = "中华人民共和国"
str_len = len(str1)
(3)布尔型

这个类型里面就两个值:真和假,布尔型就是为了在程序设计中进行流程判断(条件判断和循环语句)而诞生的。
布尔值有且仅有两个: TrueFalse(注意首字母要大写),分别代表表真假值。
在Python中,0空字符串 ""None被编译器看成False,其他数值和非空字符中都被看成True

2.组合数据类型

组合数据类型有4种:元组类型、列表类型、集合类型,字典类型
其实有了基本类型,我们就可以进行程序设计了,但是光有基础类型会在对程序设计有很大的限制。举个例子:
现在为一所学校设计一个功能:要根据学号找到学生姓名。
如果我们光有基础类型要实现这个功能就会很麻烦。
这个时候我们就需要一个类似新华字典一样的学生字典,于是字典类型就应运而生了。

(二)运算符

有了数字就可以进行计算了
计算有:加、减、乘、除
还有:取余、取整和指数

1.算术运算符

这些算术运算符在python中有对应的符号:

名称 符号
+
-
*
/
取余 %
指数 **
整数 //

当然计算完我们要得到结果,这个时候就需要用赋值运算符中的等号(=)。
接下来举个例子,让我们知道如何在python中写一个加法等式:

num1 = 1
num2 = 2
result = num1 + num2

解释一下上面的代码:
首先num1 = 1num2 = 2这两个式子就是最开始我们学的常量和变量时接触到的,这两句代码的意思分别是:把数字12通过=赋值给了num1num2这两个变量名,这样我们就可以通过num1num2这两个变量名来访问赋值的内容。
接下来就是第三行代码中num1 + num2,表示把两个变量名代表的值加起来,然后把加法运算的结果通过=赋值给了result这个变量名。

上面的代码中还涉及了一个概念,就是表达式即变量,操作符或者函数的组合。result = num1 + num2就是一个表达式。

如果我们要给上面result的基础上再加1,我们要怎么写呢?
答案如下:

result = result + 1

2.赋值运算符

实现上面的功能python中还可以一种简便写法:

result += 1

语法就是:用原来=后面的result+替换=前面的result
所有的赋值运算符如下:

名称 符号
等号 =
加等号 +=
减等号 -=
乘等号 *=
除等号 /=
余等号 %=
整除等号 //=
指数等号 **=

3.关系运算符

在基本数据类型中有一个布尔型,现在我们使用关系运算符得到的结果就是一个布尔型。
所有的关系运算符:

名称 符号
相等 ==
不等 !=
大于 >
小于 <
大于等于 >=
小于等于 <=

现在我们通过判断数字12的大小来演示一下,在python中如何使用关系运算符:

num1 = 1
num2 = 2
result = num1 > num2

解释一下上面的代码:
首先第1行和第2行就是声明两个变量num1num2,然后把数字12通过赋值运算符=分别赋值给这两个变量,接着第3行代码中num1 > num2,表示把num1代表的数字1num2代表的数字2使用关系运算符中的>进行大于判断,最后把运算的结果通过=赋值给了result这个变量名。

提示:与其他程序设计语言不同,Python关系运算符可以连用:num1 > num2 > num3

4.逻辑运算符

当我们通过关系运算符得到了多个布尔类型的变量时,我们就有对多个布尔型进行逻辑判断的需求,举个例子:

num1 = 1
num2 = 2
result1 = num1 > num2

num3 = 3
num4 = 4
result2 = num3 < num4

result = result1 and result2 

通过上述代码,我们得到了值为Falseresult1和值为Trueresult2两个布尔型的变量,现在我们使用逻辑与and来判断最终得到Flase赋值给result

所有的逻辑运算符:

名称 符号
逻辑与 and
逻辑或 or
逻辑非 not

5.运算符优先级

运算符说明 Python运算符 优先级 结合性
小括号 ( ) 19
索引运算符 x[i] 或 x[i1: i2 [:i3]] 18
属性访问 x.attribute 17
乘方 ** 16
按位取反 ~ 15
符号运算符 +(正号)、-(负号) 14
乘除 *、/、//、% 13
加减 +、- 12
位移 >>、<< 11
按位与 & 10
按位异或 ^ 9
按位或 | 8
比较运算符 ==、!=、>、>=、<、<= 7
is 运算符 is、is not 6
in 运算符 in、not in 5
逻辑非 not 4
逻辑与 and 3
逻辑或 or 2
逗号运算符 exp1, exp2 1

三、输入输出

(一)input()函数

从交互命令行获得用户输入,用户在命令行里输入的任何内容,都会以字符串的类型接受并返回。

user_input_str = input("请输入内容:")

(二)print()函数

在命令行里输出信息,如果print中包含变量值,则需要使用格式化输出。

1.%方式

name = "张三"
print("%s你好!"%(name))

上述代码最终在控制台中显示张三你好,这是因为我们对字符串"%s你好!"进行了格式化输出,其中%s表示为字符串占个位置,最后%(name)中括号里的name就会按顺序对号入座。
还有其他如%d为十进制整数占位等很多的格式字符。

2.format方式

(1)位置映射
name = "张三"
age = 18
print("{}今年{}岁".format(name,age))

上述代码最终在控制台中显示张三今年18岁.format(name,age)中的变量时按顺序填入前面的{}占位符中。{0}今年{1}岁"

(2)元素访问

如果不是顺序填入的就需要明确填入元素序号了,如下代码:

name = "张三"
age = 18
print("{0}你好,{0}今年{1}岁".format(name,age))

上述代码最终在控制台中显示张三你好,张三今年18岁

(3)关键字映射
name = "张三"
age = 18
print("{0}你好,{0}今年{1}岁性别是{sex}".format(name,age,sex = '男'))

上述代码最终在控制台中显示张三你好,张三今年18岁性别是男,我们通过在占位符中填入sex可以使用sex = '男'中的值。

(4)填充对齐
year = 2023
month = 9
print("现在是何年何月:{0}年{1:0>2}月".format(year,month))

上述代码最终在控制台中显示现在的日期是:2023年09月,其中的{1:0>2}大括号是占位符的标志,大括号中开头的1表示使用位置为1的变量month,然后:表示后面的就是对当前占位符的内容进行格式化的设置,0表示填充符,>表示变量值放置在右边,2表示变量值的长度不足2时才填充。

对齐有三种:

  • ^居中,表示变量值居中
  • <左对齐,表示变量值放置在左边
  • >右对齐,表示变量值放置在右边
(5)精度设置

当我们的格式化参数中有小数也就是浮点型时,会有保留小数位的需求:

num_f = 1.2456
print("{0:0>10.2f}".format(num_f ))

上述代码最终在控制台中显示0000001.25,其中的.2f的意思就是小数点后保留2位,如果要保留4位就需要修改为.4f

(三)eval()函数

能够以Python表达式的方式解析并执行字符串,并返回结果。

user_input_num = eval(input("请输入一个小数:"))

你可能感兴趣的:(python,开发语言)