python入门篇02- 注释,变量,数据类型,运算符及条件控制语句


本文正式使用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 变量命名语法规则

  1. 变量名大小写敏感,区分命名
  2. 只能字母、下划线开头,不能数字开头。
  3. 变量名不能有空格,可以用下划线
  4. python关键字,函数不能用
  5. 变量名见名知意 下划线命名 中英数字下划线
# 语法规则
# 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》这本书中也提到这个原则,floatdouble只能用来做科学计算或者是工程计算,在商业计算中我们要用 (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}")  # True

name = "张三"
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 感谢观看
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/pingzhuyan/article/details/132377303