Python变量的使用

1. 变量和类型

在程序设计中,变量是一种存储数据的载体。计算机中的变量是实际存在的数据,在内存中占据一定的空间,与常量不同的是,变量可以进行修改。下面介绍几种常见的数据类型:

  • 整型:Python中的整型,与C/C++等语言不同,它可以处理任意大的整数,而且可以支持多中进制的数据,比如二进制,八进制,十六进制等。
  • 浮点数:浮点数通俗意义上来讲,可以认为是小数,可以使用科学计数法(如20.19e10)
  • 字符串型:字符串类型的数据是用单引号或者双引号括起来的数据,有多种表达方式。
  • 布尔型:布尔型数据只有两种状态,True和False
  • 复数型:在Python中复数的表现方式和数学中的稍有不同,在Python中是用j来表示虚部(如:2+4j)

2. 变量命名规则

类似其它语言一样,在Python中变量的命名也不是随意的,必须要遵守一定的规则。

  • 硬性规则:
    • 变量名由字母、数字和下划线构成,且开头不能为数字
    • 大小写敏感,同一字母的大小写代表不同的变量
    • 不能为关键字和系统保留字
  • PEP 8要求:
    • 用小写字母拼写,多个单词用下划线连接。
    • 受保护的实例属性用单个下划线开头。
    • 私有的实例属性用两个下划线开头

3. 变量的简单使用

下面利用示例来说明变量的命名和使用

"""
利用变量来进行数据的保存以及数据之间的运算
Author: Cyberist
"""
var_1 = 2019
var_2 = 2020

print(var_1 + var_2)  # 加法
print(var_1 - var_2)  # 减法
print(var_1 * var_2)  # 乘法
print(var_1 / var_2)  # 除法
print(var_1 // var_2) # 取商
print(var_1 % var_2)  # 取余

注:print是Python中的一个内置函数,可以输出对应的结果

"""
利用type函数来检查变量的类型
Author: Cyberist
"""
a = 1
b = 1.0
c = 1 + 1j  # 如果是虚部是1,必须也写上
d = "Python"
e = False
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'complex'>
print(type(d)) # <class 'str'>
print(type(e)) # <class 'bool'>

类型C/C++中变量类型中的转换,Python中也有对应的函数:

  • int():将一个数值或字符串转换成整数,可以指定进制。
  • float():将一个字符串转换成浮点数。
  • str():将指定的对象转换成字符串形式,可以指定编码。
  • chr():将整数转换成该编码对应的字符串(一个字符)。
  • ord():将字符串(一个字符)转换成对应的ASSIC编码

下面的代码可以使用对输入的数据进行运算

"""
对输入的数据进行运算
Author: Cyberist
"""
a = int(input("Please input a integer: "))
b = int(input("Please input a number: "))
print('%d + %d = %d' % (a, b, a + b))
print('%d - %d = %d' % (a, b, a - b))
print('%d * %d = %d' % (a, b, a * b))
print('%d / %d = %f' % (a, b, a / b))
print('%d // %d = %d' % (a, b, a // b))
print('%d %% %d = %d' % (a, b, a % b))
print('%d ** %d = %d' % (a, b, a ** b))

上面使用的是占位符,%d->整数,%f->小数,%%->%(类似转义), 当然可以使用Python内置的format()函数 具体用法以后将会提到

4. 运算符号的使用

Python支持多种运算符,我们可以将它作为计算机使用,下表是常用的运算符

运算符 描述
[] [:] 下标,切片
** 指数
~ + - 按位取反, 正负号
* / % // 乘,除,模,整除
+ - 加,减
>> << 右移,左移
& 按位与
^ | 按位异或,按位或
<= < > >= 小于等于,小于,大于,大于等于
== != 等于,不等于
is is not 身份运算符
in not in 成员运算符
not or and 逻辑运算符
= += -= *= /= %= //= **= &= ` =`^= >>= <<= (复合)赋值运算符

如果在实际的开发中不清楚运算符的优先级别,我们可以使用括号来保证正确性

"""
使用运算符 
Author:Cyberist
"""
var_1 = 10
var_2 = 5
a += b # <=> a = a + b
a *= a + b # <=> a = a * (a + b)


str = "Hello World"
flag_1 = "He" in str

flag_2 = 2 == 3

flag_3 = 3 > 2

flag_4 = not flag_3

flag_5 = flag_4 is True

flag_6 = flag_4 and flag_5

flag_6 = flag_5 or flag_5

以上运算结果希望读者自己动手解决


练习

  1. 计算正方形的面积和周长 Answer :
"""
Author:Cyberist
"""
length = float(input("Please input the length of the sqare: "))
print("Area: ", length**2)
print("Perimeter: ", 4*length)
  1. 判断某一年是闰年否 Answer :
"""
Author: Cyberist
"""
year = int(input("Please input a year: "))
is_leap = (year % 4 == 0 and year % 100 != 0) or year % 400 == 0
print(is_leap)

关注公众号,获取更多资讯