目录
- 1. 前言:
- 2. python基础使用
- -> 2.1 注释的使用
- ---> 2.1.1 单行注释
- 示例:
- ---> 2.1.2 多行注释
- -> 2.2 变量
- ---> 2.2.1 整数类型/浮点类型/字符串类型
- ---> 2.2.2 变量的简单使用
- ---> 2.2.3 查看类型与类型转换
- ---> 2.2.4 变量命名语法规则
- --->2.2.5 数学(算术)运算符
- =>代码如下
- =>结果如下
- -> 2.3 字符串相关操作
- ---> 2.3.1 字符串定义的三种操作
- ---> 2.3.2 字符串拼接
- ps: 特殊情况(报错原因)
- ---> 2.3.3 字符串格式化
- 方法一: 使用%s占位符号
- 方法二: 快速格式化方式 f 与{任意类型} 组合
- ---> 2.3.4 字符串格式化-数字精度控制 `%m.nf`
- --->2.3.5 浮点数四舍五入的问题
- -> 丢失精度问题( python写法)
- -> 丢失精度问题(java写法)
- ->丢失精度解释:
- -> 2.4 控制台输入 input()方法
- ---> 2.4.1 控制台输入方式一:
- ---> 2.4.2 控制台输入方式二:
- ->2.5 布尔类型和运算
- ---> 2.5.1 定义布尔变量
- ---> 2.5.2 比较运算符使用
- 代码如下:
- -> 2.6 if else elif 条件使用方式
- ---> 2.6.1 if 语句使用
- ---> 2.6.2 if else条件使用
- ---> 2.6.3 if elif else 条件使用
- -> 2.7 随机数方法 random.randint(a,b)
- 3. 前面语法的总结案例
- -> 3.1 超市的收银系统(控制台版)
- -> 3.2 python专栏地址
本文正式使用markdown
编辑器编写
1. 前言:
===> 传送门: python基础环境配置
2. python基础使用
-> 2.1 注释的使用
—> 2.1.1 单行注释
使用#表示 注意空格 不然会有警告
示例:
# 我是单行注释
print("helloword")
print("helloword")
—> 2.1.2 多行注释
使用"“” 表示
"""python入门01我是多行注释
"""
-> 2.2 变量
—> 2.2.1 整数类型/浮点类型/字符串类型
# 整数类型
666
# 浮点数字类型
13.14
# 字符串类型
"张三峰"
—> 2.2.2 变量的简单使用
定义变量 随便写名 不用像java声明类型
#
money = 666
apple = 10
print("钱是多少: -> ", 666)# 正常计算
print("剩余余额: ", money - apple, "元")
—> 2.2.3 查看类型与类型转换
查看类型方式 type(变量)
类型转换方式:str(),float(),int()
# 类型转换 (执行效果跟java类似 除了语法略有不同
"""int float str 相互转换"""
num = 123
str1 = "张三"
print(type(num))
# 转换string
print(type(str(num)))
# 转换float
print(type(float(num)))
# 转换int
print(type(int(num)))
测试报错
ValueError:
invalid literal for int() with base 10: ‘张三’ `
print(type(int(str1)))
—> 2.2.4 变量命名语法规则
- 变量名
大小写敏感
,区分命名 - 只能字母、下划线开头,
不能数字
开头。 - 变量名
不能有空格
,可以用下划线
- python
关键字,函数
不能用 - 变量名
见名知意
下划线命名 中英数字下划线
# 语法规则
# 1_a= 0
a_1 = 0
_a = 0# 变量名大小写敏感
apple = 1
Apple = 2
print(apple)
print(Apple)# 关键字敏感
# class = 1
—>2.2.5 数学(算术)运算符
名称 | 符号 |
---|---|
加 | + |
减 | - |
乘 | * |
除 | / |
整除 | // |
取余 | % |
平方 | ** |
=>代码如下
print("1+1 = ", 1 + 1)
print("2-1 = ", 2 - 1)
print("3*1 = ", 3 * 1)
print("41/2 = ", 41 / 2)
print("5//2 = ", 5 // 2)
print("8%3 = ", 8 % 3)
print("8**3 = ", 8 ** 3)# 赋值运算符 += -= *= /= %= **= //=
num = 1
num += 1
print("num += 1: ", num)
=>结果如下
1
2
1+1 = 2
2-1 = 1
3*1 = 3
41/2 = 20.5
5//2 = 2
8%3 = 2
8**3 = 512
-> 2.3 字符串相关操作
—> 2.3.1 字符串定义的三种操作
name = '张三'
print(name)
name = "李四"
print(name)
name = """王五"""
print(name)
—> 2.3.2 字符串拼接
单引号与双引号组合使用方式 与java一样 转移符 "\"
nick_name = "张三'123'"
print(nick_name)
nick_name = '张三"123"'
print(nick_name)
nick_name = "张三\"123\""
print(nick_name)
ps: 特殊情况(报错原因)
TypeError: can only concatenate str (not "int") to str
字符串拼接 (这种方式 只有字符串类型才可以进行拼接 数字类型不可以 (与java
不同)
—> 2.3.3 字符串格式化
方法一: 使用%s占位符号
# 字符串格式化 不同占位符 %s(字符串) %d(整数) %f(浮点数) (与java略不同)
username = "李四"
age = 18
habit = "睡觉"
money = 20.05
# print("姓名: " + username + " 年龄: " + age) # 不可以
print("姓名: " + username + " 年龄: " + str(age)) # 可以# 使用占位符 字符串格式化
print("姓名:%s, 年龄: %s, 喜好: %s" % (username, age, habit))print("姓名:%s, 年龄: %d, 喜好: %s" % (username, age, habit))print("姓名:%s, 零花钱: %f, 喜好: %s" % (username, money, habit))
方法二: 快速格式化方式 f 与{任意类型} 组合
print(f"姓名:{name}, 年龄: {age}, 喜好: {habit}")# 表达式的格式化 可以不使用变量
print(f"姓名:{name}, 年龄: {age * 100}, 喜好类型是: {type(habit)}")
—> 2.3.4 字符串格式化-数字精度控制 %m.nf
print("数字是112 宽度1 是 %1d" % 112)
print("数字是11.345 宽度7 小数2 是 %7.2f" % 11.345)
—>2.3.5 浮点数四舍五入的问题
-> 丢失精度问题( python写法)
特殊情况 11.23 (float类型并不准确
二进制转换
问题,可能存在四舍五入不正确
情况)
#结果是11.23 没有四舍五入
print("数字是11.235 宽度不限制 小数2 是 %.2f" % 11.235)
-> 丢失精度问题(java写法)
System.out.printf("%.2f%n", 11.235F);
->丢失精度解释:
在《Effective Java》这本书中也提到这个原则,
float
和double
只能用来做科学计算或者是工程计算,在商业计算中我们要用(java)
java.math.BigDecimal
-> 2.4 控制台输入 input()方法
类似java的Scanner简化版
—> 2.4.1 控制台输入方式一:
# 控制台输入方式一:
print("姓名是什么???")
name = input()
print(f"您输入的名字是{name}")
—> 2.4.2 控制台输入方式二:
注意: input()收集的都是str类型 类型转换不对 会报错
#控制台输入方式二: (输入的类型就是字符串 需要什么类型就转换一下)
name = input("姓名是什么???\n")
print(f"您输入的名字是: {name}")
print(f"您输入的类型是: {type(name)}")
print(f"您输入的类型是: {type(int(name))}") # 需要转换成数字就转换一下
age = input("你的年龄是: \n")
print(f"您输入的年龄是: {age}")print("您的名字是: %s, 您的年龄是: %s" % (name, age))
->2.5 布尔类型和运算
—> 2.5.1 定义布尔变量
True 和 False , type类型是 bool
bool_1 = True
bool_2 = False
# bool_1的变量内容是: True,类型是<class 'bool'>
# bool_2的变量内容是: False,类型是<class 'bool'>
print(f"bool_1的变量内容是: {bool_1},类型是{type(bool_1)}")
print(f"bool_2的变量内容是: {bool_2},类型是{type(bool_2)}")
—> 2.5.2 比较运算符使用
符号解释 | 运算符 |
---|---|
等于 | == |
不等于 | != |
大于 | > |
小于 | < |
大于等于 | >= |
小于等于 | <= |
代码如下:
num1 = 1
num2 = 2
print(f"num2==num1是: {num1 == num2}") # False
print(f"num2!=num1是: {num1 != num2}") # True
print(f"num2>=num1是: {num1 >= num2}") # False
print(f"num2<=num1是: {num1 <= num2}") # True
print(f"num2>num1是: {num1 > num2}") # False
print(f"num2<num1是: {num1 < num2}") # Truename = "张三"
name1 = "张三"
print(f"num2==num1是: {name == name1}") # True
-> 2.6 if else elif 条件使用方式
—> 2.6.1 if 语句使用
num1 = 1
if num1 > 0:print("num1>0成立")
print("必然执行代码!")
—> 2.6.2 if else条件使用
num1 = 1
if num1 > 0:print("ok")
else:print("error")
—> 2.6.3 if elif else 条件使用
if num1 > 0:print("big")
elif num1 == 0:print("same")
else:print("small")
-> 2.7 随机数方法 random.randint(a,b)
随机1-10 a = 1 b = 10 需要导包
import
一下
# import random 导包
num = random.randint(1, 10)
print(num)
3. 前面语法的总结案例
-> 3.1 超市的收银系统(控制台版)
python版与java版 看看
两种语言基础
的区别
===> 传送门: python入门篇03 基础案例 python版与java版
-> 3.2 python专栏地址
===> 传送门: python语言基础专栏
书写不易, 第一篇使用markdown
书写, 确实比富文本的编辑器舒服许多, 上手难度会略高于富文本, 不过也还好
作者pingzhuyan 感谢观看