本文正式使用markdown
编辑器编写
===> 传送门: python基础环境配置
使用#表示 注意空格 不然会有警告
# 我是单行注释
print("helloword")
print("helloword")
使用"“” 表示
"""
python入门01
我是多行注释
"""
# 整数类型
666
# 浮点数字类型
13.14
# 字符串类型
"张三峰"
定义变量 随便写名 不用像java声明类型
#
money = 666
apple = 10
print("钱是多少: -> ", 666)
# 正常计算
print("剩余余额: ", money - apple, "元")
查看类型方式 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)))
大小写敏感
,区分命名不能数字
开头。不能有空格
,可以用下划线
关键字,函数
不能用见名知意
下划线命名 中英数字下划线# 语法规则
# 1_a= 0
a_1 = 0
_a = 0
# 变量名大小写敏感
apple = 1
Apple = 2
print(apple)
print(Apple)
# 关键字敏感
# class = 1
名称 | 符号 |
---|---|
加 | + |
减 | - |
乘 | * |
除 | / |
整除 | // |
取余 | % |
平方 | ** |
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
name = '张三'
print(name)
name = "李四"
print(name)
name = """王五"""
print(name)
单引号与双引号组合使用方式 与java一样 转移符 "\"
nick_name = "张三'123'"
print(nick_name)
nick_name = '张三"123"'
print(nick_name)
nick_name = "张三\"123\""
print(nick_name)
TypeError: can only concatenate str (not "int") to str
字符串拼接 (这种方式 只有字符串类型才可以进行拼接 数字类型不可以 (与java
不同)
# 字符串格式化 不同占位符 %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))
print(f"姓名:{name}, 年龄: {age}, 喜好: {habit}")
# 表达式的格式化 可以不使用变量
print(f"姓名:{name}, 年龄: {age * 100}, 喜好类型是: {type(habit)}")
%m.nf
print("数字是112 宽度1 是 %1d" % 112)
print("数字是11.345 宽度7 小数2 是 %7.2f" % 11.345)
特殊情况 11.23 (float类型并不准确
二进制转换
问题,可能存在四舍五入不正确
情况)
#结果是11.23 没有四舍五入
print("数字是11.235 宽度不限制 小数2 是 %.2f" % 11.235)
System.out.printf("%.2f%n", 11.235F);
在《Effective Java》这本书中也提到这个原则,
float
和double
只能用来做科学计算或者是工程计算,在商业计算中我们要用(java)
java.math.BigDecimal
类似java的Scanner简化版
# 控制台输入方式一:
print("姓名是什么???")
name = input()
print(f"您输入的名字是{name}")
注意: 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))
True 和 False , type类型是 bool
bool_1 = True
bool_2 = False
# bool_1的变量内容是: True,类型是
# bool_2的变量内容是: False,类型是
print(f"bool_1的变量内容是: {bool_1},类型是{type(bool_1)}")
print(f"bool_2的变量内容是: {bool_2},类型是{type(bool_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 < num2}" ) # True
name = "张三"
name1 = "张三"
print(f"num2==num1是: {name == name1}") # True
num1 = 1
if num1 > 0:
print("num1>0成立")
print("必然执行代码!")
num1 = 1
if num1 > 0:
print("ok")
else:
print("error")
if num1 > 0:
print("big")
elif num1 == 0:
print("same")
else:
print("small")
随机1-10 a = 1 b = 10 需要导包
import
一下
# import random 导包
num = random.randint(1, 10)
print(num)
python版与java版 看看
两种语言基础
的区别
===> 传送门: python入门篇03 基础案例 python版与java版
===> 传送门: python语言基础专栏
书写不易, 第一篇使用markdown
书写, 确实比富文本的编辑器舒服许多, 上手难度会略高于富文本, 不过也还好
作者pingzhuyan 感谢观看