Professional Documents
Culture Documents
本章教学目标:
• 熟悉 Python 语言的基本语法。
• 理解数字数据类型的特点及其操作方法。
• 初步掌握字符串数据类型。
print('hello world’)
radius :弧形半径
当 radius 值为正数时,圆心在当前位置 / 小海龟左侧。
当 radius 值为负数时,圆心在当前位置 / 小海龟右侧。
extent :弧形角度。当无该参数或参数为 None 时,绘制整个圆形
当 extent 值为正数时,顺小海龟当前方向绘制。
当 extent 值为负数时,逆小海龟当前方向绘制。
第二章知识导图
s.lower()
s.upper()
s.split()
s.replace
s.join()
s.count()
s.strip()
s.find()
2.1 Python 语言源程序的书写格式与基本规则
• 注释:
单行注释: # 我是 python
三个单引号
多行注释: """ 第一行 也可以
第二行
第三行 ""“
或者选中需要注释的行,快捷方式 Ctrl + ?
标识符的命名规则
合法的标识符(变量、函数、类)必须遵守以下规则:
由一串字符组成,字符可以是任意字母、数字、下画线、汉字,但
这串字符中的开头字符不能是数字;
不可以使用特殊字符,除了 _
变量名严格区分大小写
变量名要避免和系统使用的保留字冲突
import keyword
print(keyword.kwlist)
变量定义
Python 中的变量不需要声明,每个变量在使用前都必须赋值,变量赋
值以后该变量才会被创建。
变量的赋值用“ =” 表示,一般形式为:
变量 = 表达式
什么是变量?
搞清楚变量与常量的区别?
例子
x=6
print(x)
X 为变量
6 为常量
2.2 Python 的基本数据类型
2.2 Python 的基本数据类型
2.2.1 数字 进制数也是整数
小数方式: x=3.141
科学计数法: x=314e2
判断数据类型的函数
• type(object) 返回 object 的数据类型
A 说:不是我;
B 说:是 C ;
C 说:是 D ;
D 说: C 胡说。
for x in ('A','B','C','D'):
print(x)
2.2.2 字符串
1 .字符串的组成
( 1 )字符串( String )
字符串是由字符组成的序列
字符串和数字一样,都是不可变对象。
( 2 )字符串界定符
① 单引号
② 双引号
( 3 )转义符
反斜杠( \ )为转义字符,如 \n
2 .字符串操作的简单方法
( 1 )字符串长度 len()
( 2 )字符串连接
利用加法运算符“ +” 可以让两个字符串首尾相连
( 3 )字符串重复
利用乘法运算符“ *” 可以让一个字符串自身多次重复并拼接
在一起
例子
方法 意义
s.lower() 没有参数。把字符转化为小写,并返回新值
s.upper() 没有参数。把字符转化为大写,并返回新值
s.split(sep=‘’) 返回 s 中被 sep 分隔的字符串列表。 sep 参数可以省略,默
认值为空格。
s.replace(s1,s2[,max]) 返回 s 中所有 s1 被 s2 替代的字符串。 max 参数是可选参数,
代表替换不超过 max 次
s.strip(x) 返回从 s 中去掉两端的 x 字符后的子串,但在 s 中间的 x 字
符不能被去掉
a.jion(s) 返回在 s 的每个元素之间插入字符串 a 的新字符串。注意 s
是可迭代对象, jion 只能转换元素是字符串格式的可迭代对
象
s.find(str, beg=0, 检测字符串中是否包含子字符串 str ,返回子字符串第一次
end=len(string)) 出现的索引值,否则返回 -1 。
s.count(str, beg=0, 统计字符串中字符串 str 的个数
end=len(string))
例子
s = 'ABC' s1 = 'A B C' s = 'abcabc'
ns = s.lower() s2 = 'a\nb\nc' ns = s.replace('a','22')
print(ns) ns1 = s1.split() print(ns)
ns2 = s2.split('\n')
print(ns1) s = ' 我爱你 '
print(ns2) ns = '♀'.join(s)
变量 1, 变量 2, 变量 3 = 值 1, 值 2, 值 3
复合赋值
变量 += 值
序列解包(元组)实例
a, b , c, d, e = 'hello'
print(a, b , c, d, e, sep=‘-’) 结果是。。。
a = b = c = d = e = 'hello'
print(a, b , c, d, e, sep='-')
x=2
x, y = 2, 5 y=5
x, y = y, x temp = x
print(x,y) x=y
y = temp
print(x ,y)
Python 的变量实质是引用
Python 变量“值”的修改,并不是通过原地址修改来实现的
id() 函数可以确切地知道变量引用的内存地址
使用运算符 is 可以判断两个变量是否引用同一个对象
2.3.2 .变量类型的转换
( 1 ) float() 函数。将其他类型数据转换为浮点数
( 2 ) str() 函数。将其他类型数据转换为字符串
( 3 ) int() 函数。将其他类型数据转换为整型
( 4 ) bool() 函数。将其他类型数据转换为布尔类型
( 5 ) round(x [, n] ) 函数。当参数 n 不存在时,将浮点型数值圆整为整
型,当参数 n 存在时,即使为 0 ,输出也会是一个浮点数。该函数返回
的结果会受到计算机精度的影响。
( 6 ) chr() 和 ord() 函数。进行整数( ASCII )和字符之间的相互转换
( 7 ) eval() 函数。将以一个字符串类型的算术表达式转换为其执行结
果,返回表达式的值,本质是去掉参数值两侧的引号。
思考 1
提示: python 大多数不能自动转换数据类型,需要用函数强制转换
如果是浮点数运算怎么处理?如果是整数运算怎么处理?
思考 2
对吗?
sname = ' 张三 '
stel = 13917591237
ns = sname + stel
print(ns)
ASCII 码表
2.3.2 运算符
用于运算的符号就是运算符。
Python 支持算术运算符、关系运算符、赋值运算符、逻辑运
算符等基本运算符。
浮点数除法
1. 算术运算 ( 优先级最高 )
加、减、乘 * 、除 / 、取余运算 % 、取商整除运算 // 、幂运算 **
4. 逻辑运算 ( 优先级最低 )
逻辑运算是布尔值之间( True or False )的运算,共有 4 种:
and 逻辑与运算
or 逻辑或运算 逻辑控制:
not 逻辑非运算 • 1>2
• 1<2<3
^ 异或运算(相同为假、不同为真) • 42 !=42
• 'Name' == 'name’
• 'M' in 'Magic’
返回值为 True 或 False
常用的 Python 数学运算类的内置函数
Math 模块中还包含了两个数学运算中的常量:
math.pi
math.e
思考:求个圆面积吧!!!
圆半径为 3 ,结果分别保留 2 位小数和取整数
import math
r=3
area = math.pi * r **2
print(round(area,2))
print('%.2f' % area)
print('%d' % area)
2.3.4 输入、输出
1 .输入
x = input(< 提示字符串 >)
注意: x 的数据类型为字符串 sep 和 end 属性
值默认为空格
和换行
2 .输出
print(< 输出值 1>[,< 输出值项 2>, … , < 输出值 n>, sep=‘ ', end='\n'])
3. 格式化输出(书本第 4 章 P67 )
1) 字符串格式化的一般形式是:
< 格式字符串 > % (< 逗号分隔的参数 >)
把参数按格式字符要求转换为字符串
例子: 格式化输出字符串示例
>>> test =5000
>>> print("%6d" % test) # 输出宽度为 6 ,结果为 5000 (前面有两个空格,右对齐)
>>> print("%2d" % test) # 输出宽度为 2 ,但 test 值宽度为 4 ,按实际输出,结果为 5000
>>> print("%-6d" % test)# 输出宽度为 6 ,结果为 5000 (后面两个空格,左对齐)
>>> print("%+6d" % test)# 输出宽度为 6 ,结果为 +5000 (前面一个空格,右对齐)
>>> print("%06d" % test)# 输出宽度为 6 ,结果为 005000 (前面两个 0 ,空格改为 0 )
>>> print("%#o" % test) # 以八进制数形式输出,前面添加 '0o' ,结果为 0o11610
>>> print("%#x" % test) # 以十六进制数形式输出,前面添加 '0x' ,结果为 0x1388
>>> test=128.3656
>>> print("%6.2f" % test) # 输出宽度为 6 ,小数点后面保留 2 位,结果为 128.37
>>> print("%3.1f" % test) # 按实际宽度输出,小数点后面保留 1 位,结果为 128.4
>>> print("%.3e" % test) # 小数点后面保留 3 位,结果为 1.284e+02
>>> test=" 上海是一个美丽的城市 "
>>> print("%5.2s" % test) # 输出宽度为 5 ,输出前两个字,结果为 ' 上海 ' (前面有三个空格)
上述字符串输出格式不一定用在 print 中,也可以用在
其他函数或代码块中,如 input 函数中:
a=2
b=3
c = input('%d + %d = ' % (a, b))
2 、格式化字符串函数
< 格式字符串 >.format(< 逗号分隔的参数 >)
如:
可将字符串格式化输出为“张三的年龄是 20 ,张三太胖了!“
还可以在 {} 中限定格式,比较常用的如:
avg_score = 82.4567
print(' 你的平均成绩是: {0}' .format(avg_score))
print(' 你的平均成绩是: {:.2f}' .format(avg_score))
print(' 你的平均成绩是: {:.0f}' .format(avg_score))
print(' 你的平均成绩是: {:%}' .format(avg_score))
print(' 你的平均成绩是: {:e}' .format(avg_score))
format() 方法的格式控制
import datetime
name = ' 张三 '
age = 20
date = datetime.date(2021,7,18)
score = 88.6
print(f' 我是 {name}, 今天是 {date:%Y-%m-%d}, 我这次考试成绩是 {score:.0f} 明年我
{age+1} 岁了 , 我会努力 ')
作业
【练习 2 】 从键盘输入两点的坐标
( x1,y1 )和( x2,y2 ),计算并输出
两点之间的距离。保留两位小数。