第2章 变量及简单的数据类型

2.1 print()函数

print是一个函数,print是函数名,()里提供的是这个函数的参数

print("How beautiful my life is !")

2.2 变量

n = 3
fPrice = 3.6
fAmount = n * fPrice
fMoney = 20
Money = fMoney - fAmount
sText = "我买了"
print(sText, n, "斤苹果,每斤3.6元,一共花了", fAmount, "元。", "妈妈给了我", fMoney, "元,还剩下", Money, "元。")

变量在使用前必须绑定一个对象

2.3 变量的命名

变量命名要求
1、变量名只能包含字母、数字和下划线,且不能以数字开头
2、变量名不能包括空格
3、不能将python关键字和函数名用作变量名
4、python区分大小写
使用以下代码可以打印出python的全部关键字

import keyword
print(keyword.kwlist)

2.4 简单的数据类型

n = 3
print(n, type(n))  # n的数据类型为整数/int
f = 3.1415926
print(f, type(f))  # f的数据类型为浮点数/float
s = "How beautiful my life is. "
print(s, type(s))     # s的数据类型为字符串/str
b = 3 < 2
print(b)  # b的数据类型为布尔型/bool
print("3<2", type(b))

type()函数用于返回参数的数据类型
变量也可称为对象,每个对象都要特定的数据类型,数据类型也称类

2.4.1整数——int,integer

所有自然数都是整数

2.4.2浮点型——float

浮点数就是通常理解的小数

  • 浮点数的误差
    受限于有效数字的位数,浮点数的精度会受到限制
  • 浮点数产生误差的原因
    1、由于计算机内部以二进制保存,所以有些十进制的有限位的小数,在计算机内部会是一个无限位的小数

    2、计算机保存浮点数的精度有限
n = 0.14
n = n * 100
print(n)
if n==14:
    print("0.14*100 == 14")
else:
    print("0.14*100 <> 14")

运行结果

n= 14.000000000000002
0.14*100 <> 14
  • 整数与整数的+、-、*运算结果为整数,整数除以整数运算结果为浮点数
  • 整数与浮点数的四则运算结果为浮点数
  • 浮点数与浮点数的四则运算结果为浮点数

2.4.3字符串——string、str

用双引号或单引号括起来的任意长度的文本都称为字符串

2.4.4布尔型——boolean、bool

布尔型只有true和false两个取值

print(int(True))
print(int(False))

if 3:
    print("True")
if -0.00099:
    print("True")

运行结果

1
0

True
True
  • 布尔True转换为整数,其值为1;布尔False转换为整数,其值0
  • 非0即真

2.5 字符串

双引号和单引号可配合使用,配合使用时,可在字符串内部包含双引号或单引号

print('I told you, "Python is good".')
print("I told you, 'Python is good'.")

如果执行以下代码,就会报错

print("I told you,"Python is good".")
print('I told you,'Python is good'.')

2.5.1常用的转义字符

print("I know many popular programming languages as follows:\n\tJavaScript\n\tPython\n\tJava\n\tC\n\tC++\n\tRuby")

运行结果

I know many popular programming languages as follows:
    JavaScript
    Python
    Java
    C
    C++
    Ruby

2.5.2大小写转换

  • .title():将相关字符串对象的各单词首字母大写,非首字母小写
  • .upper():将字符串的全部字母大写
  • .lower():将字符串的全部字母小写
sName = "aLan turing"
print(sName.title())

sName = "John von Neumann"
print(sName.upper())
print(sName.lower())

运行结果

Alan Turing
JOHN VON NEUMANN
john von neumann

2.5.3去除空格

  • .rstrip()将相关字符串对象的右端空格去除
  • .lstrip()将相关字符串对象的左端空格去除
  • .strip() 将相关字符串对象两端的空格去除
sText = " How beautiful my life is ! "
print("Output by stext :", sText, "END.")
print("Output by rstrip:", sText.rstrip(), "END.")
print("Output by lstrip:", sText.lstrip(), "END.")
print("Output by strip :", sText.strip(), "END.")

运行结果

Output by stext :  How beautiful my life is !  END.
Output by rstrip:  How beautiful my life is ! END.
Output by lstrip: How beautiful my life is !  END.
Output by strip : How beautiful my life is ! END.

2.6 类型转换

  • int()接受一个其他类型的参数,返回int型
  • float()接受一个其他类型的参数,返回float型
  • str()返回一个字符串,该字符串由参数转换而得
s1 = "120"
s2 = "3.1415926"
print(s1+s2)
s1 = int(s1)
s2 = float(s2)
print(s1+s2)

运行结果

1203.1415926
123.1415926

字符串的+只会把两个字符串连接起来

微实践——鸡兔同笼

iHeads = 35  # 变量 - 头的数量
iFeet = 94  # 变量 - 脚的数量
a = iFeet - 2 * iHeads  # 假设全部是鸡,余下的脚的数量
iRabbits = a / 2  # 免的数量等于余下的脚数/2
iChicken = iHeads - iRabbits  # 鸡的数量等于 头的数量 - 兔的数量
print("Number of chicken = %d," % iChicken, "Number of rabbits = %d" % iRabbits)  # 输出
print(iFeet == iChicken * 2 + iRabbits * 4)  # 验证脚数 = 鸡数*2 + 兔数*4
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容