变量的定义规则:
除了上述的硬性规则外,还建议变量的取名应该遵守见名知意的原则,还有驼峰或者蛇形命名规范
例如 maxSum / max_sum
变量的创建:
通过“ = ”可以对变量进行创建和赋值
avg = (10 + 20 + 30 + 40) / 4
print(avg)
Python 中变量的类型不需要在定义变量的显示声明,只需要依靠初始化语句,根据初始化的值来进行确定
num1 = 10000000000000000000
num2 = 10000000000000000000
print(type(num1))
print(num1 + num2)
e = 'my name is "shuaige"'
print(e)
还可以使用三引号
e = '''my 'name' is "shuaige"'''
print(e)
Python 中也可以进行字符串的拼接
string1 = 'hello '
string2 = 'word'
print(string1 + string2)
还可以通过 len() 函数求出字符串的长度
print(len(string1))
布尔类型 : True / False
动态类型 : 在程序运行过程中,变量的类型可能会发生改变
a = 10
print(type(a))
a = 'hello'
print(type(a))
a = True
print(type(a))
Python 是一个动态类型的语言, 在定义类型的时候也可以选择声明变量类型, 但后续类型还是可以改变
a : int = 10
在 Python 中是使用 # 来表示注释的
# 打印 a 的类型
print(type(a))
还可以通过文档字符串的形式来表示文档注释,通过三个引号来表示,单引号和双引号都可以
"""
这是一个文档字符串,表示文档注释
"""
之前一直用的 print 就是输出的函数,可以直接传入变量,常量进行打印
格式化输出:
a = 10
print(a)
print(f"a = {a + 10}")
如果直接打印 a ,就是打印它本身被赋予的常量,通过 f - string (格式化字符串)的方式可以在字符串中嵌入变量或者表达式,实现格式化输出的效果
输入:
num = input("请输入一个数字:")
print(f"您输入的数字是:{num}")
input 执行的时候就会等待用户输入,还可以传入字符串作为输入提示
input 返回的是一个字符串,如果想要进行整形的计算,就需要进行转换:
num1 = input("请输入一个数字:")
num2 = input("请输入一个数字:")
print(f"{num1} + {num2} = {int(num1) + int(num2)}")
同理,还有 str() ,float() 等其他类型的转换
在 Python 中除了有 + ,- , * ,/ 之外,还有 乘方 **, //(地板除法,向下取整) 的运算符,并且 Python 中的 / 是可以得到小数的,并不像 Java 那样取整数部分
print(1 / 2)
print(2 ** 2)
print(2 ** 0.5)
print(3 // 2)
print(-7 // 2)
** 运算符可以是整数也可以是小数,上面的 -7 // 2 ,按理说是 -3.5 ,由于向下取整,就往更小的方向取,也就是 -4
> , < , == , >= , <= , != 这些关系运算符都是和 Java 一样的,需要注意的是,关于 str 的比较是可以使用 == 和 != 来进行比啊交的,这一点和 Java 不同
还有关于浮点数的比较,使用 == 来比较的话是存在一定问题的,因为浮点数在内存中的存储和表示是可能存在误差的,这样的误差在进行算术运算时就可能会被放大
print(0.1)
print(0.2)
print(0.1 + 0.2)
print(0.1 + 0.2 == 0.3)
Python 中还支持连续比较的写法,Java 中是不支持的
print(1 < 2 < 3)
and : 逻辑与,相当于 Java 中的 &&
or:逻辑或,相当于 Java 中的 ||
not :逻辑取反,相当于 Java 中的 !
短路求值:和 Java 中是一样的,在进行 and 判断时,左边的判断为 False,那么右边就不用执行了,进行 or 判断时,左边判断为 True ,右边就不用执行了
= 就是赋值运算符,Python 中有以下几种赋值操作
a = 10
a = b = 10
a,b = 10,20
还有 += ,-= ,*=,&=,/=,**=,//= 这样的操作,而自增++,自减--,这样的操作在 Python 中是不支持的