第二章Python基础
一、Python的数字类型
1.整型:任意大小的整型数,没有位数的限制
十进制转换为其他进制
进制 | 函数 |
二进制 | bin() |
八进制 | oct() |
十六进制 | hex() |
其他进制转换十进制
输入其他进制,计算机自动转换为十进制
2.浮点型:每个浮点数占8个字节(64位),其中以51位表示其尾数
两种表示形式
①小数形式
②指数形式(科学计数法)
<实数>E<±整数>或者<实数>e<±整数>
举例
浮点数位数的不确定性:
> 0.1+0.2 == 0.3
False
>>> round(0.1+0.2,1) == 0.3
True
>>>
注:round()函数可以将任意的浮点数或者小数保留指定的位数。
3.布尔型:只有两个值True和False ,用于计算时True对应整数1,False对应整数0
4.复数型:Python特有的
格式:实部+虚部(以j或J结尾)
注意:
实部和虚部都是浮点型,且虚部的浮点数部分必须有,是1也不能省略
二、变量的命名规则和赋值
变量存在的原因:编程的本质就是对内存中的数据进行访问和修改。程序所用到的数据都会保存在内存中。
变量实际上是一块内存的标签(引用),比使用地址更为方便。
(1)命名规则
①由大小写英文字母,数字和下划线组成,不能以数字开头
②区分字母大小写
③变量长度不限
④不能使用关键字
(2)命名规范
①见名知义
②不用中文
③有多个单词时,如字数:
后面单词首字母大写:wordCount
全小写用下划线分割:word_count
(3)变量赋值
因为Python属于动态数据类型
语言,编译时不会事先进行类
型检查,而是在赋值时根据变量值的类型来决定变量的数据
类型,因此不需要声明数据类
型
同一个变量可以赋予不同类型的值
Python可以为多个变量赋值
x,y,z=1,2.5, “123” #把1,2.5, "123"分别赋给变量x、y、z
a=b=c=1 # 把1赋给a、b、c三个变量
三、运算符和表达式
(一)算数运算符
(二)赋值运算符
(三)关系运算符
(四)逻辑运算符
表达式:将不同类型的数据(常量、
变量、函数)用运算符按照一定的
规则连接起来的式子。
(1)优先级
算术运算符>关系运算符>赋值运算符>逻辑运算符
逻辑非(not)>逻辑与(and)>逻辑或(or)
(2)结合性
- 通常运算符由左向右结合:所有优先级相同的关系运算符
- 还有一些运算符由右向左结合:赋值运算符
- 小括号可以改变优先级:小括号运算符拥有最高的优先权
四、字符串类型和字符串方法
(一)字符串
1.字符串类型
单引号(’…’ )、
双引号(’’…’’ )、
三个单引号(’’’…’’’ )或三个双引号("""…""")
注:三双引号还可以互相嵌套,用来表示复杂的字符
串。
2.字符串的运算
合并:+
重复:*
(二)转义字符
1.格式:反斜杠(\)
2.举例:
说明:
(1)单引号括住的字符串里面又有单引号时,就必须使用转义字符。
str='They\'re students. '
(2)如果不需要反斜杠发生转义,可以在字符串前面添加字母r或R表示原始字符串,但字符串的最后一个字符不能是反斜杠符号。
>>>print(r"d:\computer\note”)
>>>d:\computer\note
(3)反斜杠可以作为续行符,表示下一行是上一
行的延续。
>>>print("This is a Python \
Program.")
This is a Python Program.
(三) 字符串方法的分类
1.可分为六类:
①大、小写字母转换类 ②连接分割类 ③字符串搜索类 ④字符串判断类 ⑤删除字符类 ⑥替换字符类
2.具体如下:
五、输出函数和输入函数
(一)print输出函数
1.基本格式:
print([object1,…][, sep=’ ‘][, end=’\n’])
>>>print(12) #输出一个对象
12
>>>print(12,34,56,78) #输出多个对象
12 34 56 78
>>>print("Hello World!") #输出一个字符串
Hello World!
>>>print(12,34,56,78,sep='@') #指定"@"作为输出分隔符
12@34@56@
>>>for i in range(1,6):
print(i,end=' ')
print()
1 2 3 4 5
2.格式化输出
(1)“%字符”格式化输出
① 语法格式:
print(“格式化文本”%(变量1, 变量2,…变量n))
说明一:
格式化文本可以用“%字符”代表输出格式,如下图中列出了各种格式化符号的输出格式说明。
>>>print(“Jack的年龄:%d岁"%19)
Jack的年龄:19岁
②语法格式:
print(“格式化文本”%(变量1, 变量2,…变量n))
说明二:
格式化文本有两个以上的变量,变量必须用括号括起来,变量之间用逗号隔开。
>>> name='Lucy'; age=18
>>> print("%s的年龄:%d岁"%(name,age))
Lucy的年龄:18岁
>>> print('%f是%d%%'%(3/4,75))
0.750000是75%
③
说明三:
格式化输出可以固定打印字符的个数和浮点数的位数。
>>> print("%6s的工资:%8.2f元"%("Marry",5658.3368))
Marry的工资: 5658.34元
(2)搭配format函数格式化输出
①说明一:
无论输出何种数据类型,都用大括号{}表示,{}内用format函数里面的变量或常量替换。
>>>print("{}是我们的计算机老师。".format("张三"))
张三是我们的计算机老师。
②说明二:
可以使用多个变量或常量,{0}表示使用第一个变量或常量,{1}表示使用第二个变量或常量,以此类推,也可以用format函数里面的变量名称取代数字编号,如果{}内省略,则按照变量或常量的顺序填入。
>>>print(“{0}的成绩为{1}分”.format(“李四”,90)) #指定顺序
>>>print(“{name}的成绩为{score}分”.format(name= 李四”,score=90)) #按名称
>>>print(“{}的成绩为{}分”.format(“李四”,90)) #默认顺序
>>>执行结果均为:李四的成绩为90分
③说明三:
在数字编号后面加上冒号,可以指定参数格式。
>>>print("{0:.2 }".format(3.1415926))#取2位小数
3.14
④说明四:
可以搭配“<”、“^”、“>”加上宽度来控制左、中、右输出对齐。未
指定填充字符则默认是以空格填充,指定填充字符则以指定字符作为填充。
>>> print("{0:6}的期末总分:{1:<9}".format("Billy",621))
Billy 的期末总分:621
>>> print("{0:>6}的期末总分为:{1:#^9}".format("Sue",598))
Sue的期末总分为:###598###
>>> print("{0:^6}的期末总分为:{1:@>9}".format("May",652))
May 的期末总分为:@@@@@@652
(二)input输出函数
1.input函数基本格式:
变量=input(“[提示字符串]")
input返回的变量是字符串类型
2.数值输入
需要输入整数或小数等,可以使用内置的int()、float()或eval()函数将输入的字符串转换为整数或浮点数。
>>>x=input("请输入工资:")
请输入一月份的工资:4230.12
>>>y=input("请输入奖金:")
请输入一月份的奖金:830.34
>>>float(x)+ eval(y)
5060.46
3.一次输入等多个变量
可以一次分别给多个变量赋值
>>>x,y,z=eval(input("请输入三个100到500之间的整数:"))
请输入三个100到500之间的整数:150,238,496
>>> print(x,y,z)
150 238 496
六、内置函数、math库和random模块
(一)内置函数
常用内置函数
Python语言包括若干用于实现常用功能的内置函数,内置函数可以不需要导入任何模块即可直接使用。
下图为Python常用内置函数及其功能和示例
(二)math库
math库中常用数学函数
math库中常用三角函数及数学常量说明
import math #使用math库前,用import导入该库
print("math.fabs(-56.19): ",math. fabs(-56.19)) #结果为:math.fabs(-56.19):56.19
print("math.pow(2000,-4): ",math. pow(2000,-4)) #结果为:math.pow(2000,-4): ): 6.25e-14
print("math.sqrt(16): ",math.sqrt(16)) #结果为:math.sqrt(16):4.0
print("math.sin(math.pi):",math.sin(math.pi))
#结果为:math.sin(math.pi):1.2246467991473532e-16
print("math.radians(30): ",math.radians(30))
#结果为:math.radians(30):0.5235987755982988
print("pi=",math.pi)#结果为:
pi=3.141592653589793
print("e=",math.e)
#结果为:e= 2.718281828459045
(三)random模块
Python常用随机数函数说明和示例
random模块使用示例
>>> import random
>>> print(random.choice([1,3,5,7,9])) #从列表[1,3,5,7,9]中随机取一个元素
9
>>> print(random.random()) #[0,1)随机小数
0.7626126877752427
>>> print(random.randint(0,100)) #[0,100]之间的随机整数
56
>>> print(random.randrange(0,100,2)) #[0,100)之间的随机偶数
96
>>> random.sample ('abcdef',3) #随机取样
['f', 'b', 'c ']
>>> x=[1,4,9,16]
>>> random.shuffle(x) #将序列的所有元素打乱随机排序
>>> print(x) #shuffle()函数返回None,所以不能直接用print()函数输出
[4, 9, 1, 16]
>>> print(random.uniform(2,5)) #随机产生[2,5]范围内的一个实数
2.270812338210189