Python 基础笔记
Posted Xiu Yan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 基础笔记相关的知识,希望对你有一定的参考价值。
文章目录
一、注释
注释分为:单行注释 和 多行注释
-
单行注释
# 注释内容
pycharm 中快捷键:ctrl + /
-
多行注释
''' 注释内容 注释内容 ''' """ 注释内容 注释内容 """
二、数据类型
2.1 数据类型分类
python 检测数据类型的方法:type()
a = 1
print(type(a)) # <class 'int'> -- 整型
b = 1.1
print(type(b)) # <class 'float'> -- 浮点型
c = True
print(type(c)) # <class 'bool'> -- 布尔类型
d = 'test'
print(type(d)) # <class 'str'> -- 字符串
e = [10, '20', 30]
print(type(e)) # <class 'list'> -- 列表
f = (10, '20', True)
print(type(f)) # <class 'tuple'> -- 元组
h = 10, 20, 30
print(type(h)) # <class 'set'> -- 集合
g = 'name':'Kevin', 'age':20
print(type(g)) # <class 'dict'> -- 字典
3.2 数据类型转换
函数 | 说明 |
---|---|
int(x) | 将 x 转换为一个整数 |
float(x) | 将 x 转换为一个浮点数 |
complex(real [,imag]) | 创建一个复数,real为实部,imag为虚部 |
str(x) | 将对象 x 转换为字符串 |
repr(x) | 将对象 x 转换为表达式字符串 |
eval(str) | 用来计算在字符串串中的有效Python表达式,并返回一个对象 |
tuple(s) | 将序列列 s 转换为一个元组 |
list(s) | 将序列列 s 转换为一个列列表 |
chr(x) | 将⼀个整数转换为一个 Unicode 字符 |
ord(x) | 将⼀个字符转换为它的 ASCII 整数值 |
oct(x) | 将一个整数转换为一个八进制字符串 |
bin(x) | 将一个整数转换为一个二进制字符串 |
示例代码:
# 1. int() -- 将数据转换成整型
num = 1.1
print(type(num))
print(type(int(num)))
# 2. float() --转换成浮点类型
num = 1
print(float(num))
print(type(float(num)))
# 3. tuple() -- 将第一个序列转换成元组
list1 = [1, 2, 3]
print(tuple(list1))
print(type(tuple(list1)))
# 4. list() -- 降低一个序列转换成列表
tu1 = (1, 2, 3)
print(list(tu1))
print(type(list(tu1)))
# 5. eval() -- 将字符串串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '1.1'
str3 = '(1, 2, 3)'
str4 = '[10, 20, 30]'
print(type(eval(str1))) # <class 'int'>
print(type(eval(str2))) # <class 'float'>
print(type(eval(str3))) # <class 'tuple'>
print(type(eval(str4))) # <class 'list'>
结果如下:
三、输入与输出
3.1 格式化输出
所谓的格式化输出即按照⼀一定的格式输出内容。
3.1.1 格式化符号
格式符号 | 转换 |
---|---|
%s | 字符串 |
%d | 有符号的十进制整数 |
%f | 浮点数 |
%c | 字符 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写ox) |
%X | 十六进制整数(大写OX) |
%e | 科学计数法(小写’e’) |
%E | 科学计数法(大写’E’) |
%g | %f 和 %e 的简写 |
%G | %f 和 %E 的简写 |
%06d
:表示输出的整数显示位数,不不⾜足以0补全,超出当前位数则原样输出%.2f
:表示⼩小数点后显示的⼩小数位数。- 格式化字符串除了
%s
,还可以写为f'表达式'
3.1.2 格式化输出示例
age = 18
name = 'Kevin'
weight = 75.5
student_id = 1
# 我的名字是Kevin
print('我的名字是%s' % name)
# 我的学号是0001
print('我的学号是%04d' % student_id)
# 我的体重是75.50公斤
print('我的体重是%.2f公斤' % weight)
# 我的名字是Kevin,今年18岁了
print('我的名字是%s,今年%d岁了' % (name, age))
# 我的名字是Kevin,明年19岁了
print('我的名字是%s,明年%d岁了' % (name, age+1))
# 我的名字是Kevin,明年19岁了
# f表达式
print(f'我的名字是name,明年age+1岁了')
# %s 扩展
print('我的名字是%s,今年%s岁了,体重是%s' % (name, age, weight))
3.1.3 结束符
print()
函数默认带有换行功能,是结束符 end 的作用。示例:print('输出的内容') 等价于 print('输出的内容', end="\\n")
,其中 end 可以自定义设置。
示例:
# 默认结束符是 \\n,以下两种效果等同
print('hello world', end='\\n')
print('hello world')
print('-------------')
# 可自定义设置
print('hello', end='\\t')
print('world')
print('hello', end='...')
print('world')
运行结果:
3.1 输入
输入的语法:input("提示信息")
注意:Python中,input() 接收的任何数据默认都是字符串数据类型。
示例:
age = input("请输入年龄")
if age >= 18:
print("可以上网")
else:
print("不可以上网")
会报错结果如下:
对输入数据进行数据类型转换,修改代码如下:
age = int(input("请输入年龄:")) # 数据类型转换
if age >= 18:
print("可以上网")
else:
print("不可以上网")
结果如下:
四、运算符
1. 算术运算符:+ - * / //(整除) % ()**
注意: 混合运算优先级顺序: ( ) () () 高于 ∗ ∗ ** ∗∗ 高于 ∗ * ∗ / / / / / // // % 高于 + + + − - −
2. 赋值运算符: = = =
- 单个变量赋值
- 多个变量赋值
num1, float1, str1 = 10, 0.5, 'hello world'
- 多变量量赋相同值
a = b = 10
3. 复合赋值运算符:+= -= *= /= //= %= **=(幂赋值运算符,如:c**=a 等价于 c=c**a)
4. 比较运算符:== != > < >= <=
5. 逻辑运算符:and or not(非)
-
and、or 有短路效果
def printFalse(): print("333") return False # 下面中后面的 printFalse()不会被执行,并且 print("111") 会执行 if True or printFalse(): print("111") # 后面的 printFalse()不会被执行,并且 print("222") 不会执行 if False and printFalse(): print("222")
-
and、or 的扩展用法
and 运算符,只要有一个值为 0,则结果为 0,否则结果为最后一个非 0 数字
or 运算符,只有所有值为 0 结果才为 0,否则结果为第一个非 0 数字a = 0 b = 1 c = 2 # and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字 print(a and b) # 0 print(b and a) # 0 print(a and c) # 0 print(c and a) # 0 print(b and c) # 2 print(c and b) # 1 # or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字 print(a or b) # 1 print(a or c) # 2 print(b or c) # 1
五、条件语句
5.1 条件语句语法
注意: 除了三目运算符以外,if 条件成立执行的代码 必须缩进
- if 语法:
if 条件: 条件成立执行的代码
- if…else…语法:
if 条件: 条件成立执行的代码 else: 条件不成立执行的代码
- 多重判断语法:
if 条件1: 条件1成立执行的代码 elif 条件2: 条件2成立执行的代码 ...... else: 以上条件都不成立执行执行的代码
- if 嵌套语法:
if 条件1: 条件1成立执行的代码 if 条件2: 条件2成立执行的代码
- 三目运算符:
条件成立执行的表达式 if 条件 else 条件不成立执行的表达式
5.2 应用示例
猜拳游戏示例:
import random
computer = random.randint(0, 2)
print(computer)
player = int(input('请出拳:0-石头,1-剪刀,2-布:'))
if (player==0 and computer==1) or (player==1 and computer==2) or (player==2 and computer==0):
print('玩家获胜')
elif player == computer:
print('平局')
else:
print('电脑获胜')
其中:
- 导入 random 模块:
import 模块名
- 使用 random 模块中的随机整数功能:
random.randint(开始,结束)
三目运算符示例:
a = 1
b = 2
c = a if a > b else b
print(c) # 2
aa = 10
bb = 20
cc = aa - bb if aa > bb else bb - aa
print(cc) # 10
六、循环语句
6.1 循环语句语法
注意: 循环条件成立执行的代码 必须缩进
-
while 语法:
while 条件: 条件成立重复执行的代码 ......
-
while 循环嵌套语法:
while 条件1: 条件1成立执行的代码 ...... while 条件2: 条件2成立执行的代码 ......
-
for 语法:
for 临时变量 in 序列: 重复执行的代码
-
for 循环嵌套语法略…
-
else 语法: 循环可以和 else 配合使用,else 下方缩进的代码指的是当循环正常结束之后要执行的代码
- while…else
while 条件: 条件成立重复执行的代码 else: 循环正常结束之后要执行的代码
- for…else
for 临时变量 in 序列: 重复执行的代码 ... else: 循环正常结束之后要执行的代码
- while…else
6.2 continue 与 break
- continue: 退出当前一次循环继⽽而执⾏行行下一次循环代码。
- break: 跳出所有循环。
- 注意: 当应用于
while...else 和 for...else
时,continue 执行 else 中的代码, break 不执行 else 中代码,原因在于 break 时非正常结束。
6.3 应用示例
-
1 到 100 累加和
result = 0 i = 1 while i <= 100: result += i i += 1 print(result) # 5050
-
1 到 100 中的偶数累加和
# 法一: result = 0 i = 1 while i <= 100: if i%2 == 0: result += i i += 1 print(result) # 2550 # 法二: result = 0 i = 0; while i <= 100: result += i i += 2 print(result) # 2550
-
三角形
i = 0 while i < 5: j = 0 while j <= i: print("*", end='') j += 1 print() i += 1
-
9*9乘法表
i = 1 while i <= 9: j = 1 while j <= i: print(f'j*i=i*j', end="\\t") j += 1 print() i += 1
-
continue 和 break 在 while…else 中应用
i = 1 while i <= 5: if i == 3: break # 不执行下方 结束循环 print('循环') i += 1 else: print('结束循环') print("--------------") i = 1 while i <= 5: if i == 3: i += 1 continue # 执行下方 结束循环 print('循环') i += 1 else: print('结束循环')
以上是关于Python 基础笔记的主要内容,如果未能解决你的问题,请参考以下文章