python的版本
python V2
python V3

python的运行:
1. 在命令行提示符下
$ python3 xxxx.py
2. 在交互模式下执行:
$ python3 <回车>
>>>
>>> quit() / exit() / ctrl+d # 退出
python的注释:
以 # 开头,直至行尾

python常用的数据类型:
数字类型:
int
0, 999999999, -2, 0b1001, 0o11, 0x9
float
3.14, 0.314e1 314.0e-2
complex
1+2j
bool
True, False
字符串
列表
....

空值对象
None, 代表不存在(啥也没有)

运算符:
算术运算符:
+ - * / //(地板除) % (求余) **(幂运算)
比较运算符:
< <= > >= ==(等于) !=(不等于)

赋值语句:
变量 = 表达式
变量1 = 变量2 = 变量3 = 表达式
变量1, 变量2, 变量3 = 序列

作用是创建变量用来绑定表达式执行的结果

del语句
del 变量名
作用是删除变量

is,is not 运算符
判断两个对象的id是否相同

复合赋值算术运算符:
+= -= *= /= //= %= **=
y +=x 效果等同于 y = y + x

函数:
类型转换函数:
float(obj)
int(x, base=10), int(x=0)
complex(r=0.0, i=0.0)
bool(x)
函数调用的语法规则
函数名(传参列表)
函数调用是表达式,一定会返回一个结果(结果可能是None)

数值型函数:
abs(x) 取x的绝对值
round(number[,ndigit]) 取number的近似值
pow(x, y, z=None) # 求x的y次方或x的y次方对z求余

查看帮助的函数:
>>> help('字符串')
>>> help(函数名)

基本输入输出函数:
input("提示字符串") # 获取用户输入的字符串
print(value1, value2,..., sep=' ', end='\n'))
作用是把数字形成字符串后打印在屏幕终端上


day02笔记

if 语句
问题:
有两条语句:
print("这个数是偶数")
print("这个数是奇数")

如何只让其中的一条执行???

if语句的作用:
让程序根据条件选择性的执行某条语句或某些语句

语法:
if 真值表达式1:
语句块1...
elif 真值表达式2:
语句块2...
elif 真值表达式3:
语句块3....
...
else:
语句块4
说明:
elif 子句可以有0个,1个或多个
else 子句可以有0个或1个,且只能放在if语句的最后

示例见:
# 此示例示意让用户输入任意一个整数 
# 让程序来判断这个数是奇数还是偶数
s = input("请输入一个整数: ")  # 获取用户输入的字符串
n = int(s)  # 把s绑定的字符串转为整数用n绑定
# 下面对if语句来判断用户输入的数是奇数还是偶数
# 偶数能被2整除,即 n % 2 如果等于0,则n为偶数
if n % 2 == 0:
    print("这个数是偶数")
else:
    print("这个数是奇数")

# 练习:
#   任意输入一个整数
#     1) 判断这个数是否大于100
#     2) 判断这个数是否小于0
#     3) 判断这个数是否在50~150之间
#     (建议每一步用一个if语句来实现)

s = input("请输入一个整数: ")
n = int(s)  # 转为整数
# 1) 判断这个数是否大于100
if n > 100:
    print(n, '是大于100的')
else:
    print(n, '不大于100')

# 2) 判断这个数是否小于0
if n < 0:
    print(n, '是小于0的')
else:
    print(n, '不小于0')

# 3) 判断这个数是否在50~150之间
if 50 < n < 150:
    print(n,'是50~150之间')
else:
    print(n,'不在50~150之间')

 


if-elif-else示例:
# 输入一个数字,用程序来判断这个数是正数,
# 是负数还是零
# 以下两行可以改写为一行
# s = input("请输入一个数字: ")
# f = float(s)  # 转为浮点数
f = float(input("请输入一个数字: "))

# 开始判断
if f < 0:
    print(f, '是负数')
elif f > 0:
    print(f, '是正数')
# elif f == 0:
else:
    print(f, '是零')


练习:
# 1.输入一个季度1 ~ 4 输出这个季度有哪儿几个月份.
# 如果输入的不是1~4的整数,提示用户您输错了

season = int(input("请输入季度(1~4): "))

if season == 1:
    print("春季有1,2,3月")
elif season == 2:
    print("夏季有4,5,6月")
elif season == 3:
    print("秋季有7,8,9月")
elif season == 4:
    print("冬季有10,11,12月")
else:
    print('您输入有错')

 


# 2. 输入一年中的月份(1~12),输出这个月在哪儿个季度。
#     如果输入的是其它的数,则提示您输错了

month = int(input("请输入月份(1~12): "))
if 1 <= month <= 3:
    print("春季")
elif 4 <= month <= 6:
    print("夏季")
elif 7 <= month <= 9:
    print("秋季")
elif 10 <= month <= 12:
    print("冬季")
else:
    print("您的输入有误!!!")

if 语句嵌套
if语句本身是由多条子句组成的一条复合语句
if语句可以作为语句嵌套到另一个复合语句的内部

示例:
# 此示例示意if语句嵌套到另一个if语句内部
# 用嵌套实现输入月份判断季节

month = int(input("请输入月份(1~12): "))

if 1 <= month <= 12:
    if month <= 3:
        print("春季")
    elif month <= 6:
        print("夏季")
    elif month <= 9:
        print("秋季")
    else:
        print("冬季")
else:
    print("您的输入有误")

 



条件表达式
语法:
表达式1 if 真值表达式 else 表达式2
作用:
根据真值表达式的取值(True/False) 来决定执行表达式1
或者表达式2并返回结果
示例:
# 此示例示意条件表达式的语法和用法
# 商场促销,满100 减 20
money = int(input("请输入商品总额: "))

# 计算需要支付金额
pay = money - 20 if money >= 100 else money
# 如果money >= 100 为True,相当于 pay=money-20
# 如果money >= 100 为False,相当于pay=money

print("您需要支付:", pay, "")


练习:
#   1. 写一个程序,输入一个数,用if语句计算出这个数的
#     绝对值并打印出来

n = int(input("请输入一个整数: "))

# 方法1
# if n > 0:
#     r = n
# else:
#     r = -n

# 方法2
r = n
if r < 0:
    r = -r

print(n,'的绝对值是:', r)
#   2. 写一个程序,输入一个数,用条件表达式计算出这个数
#     的绝对值并打印出结果
n = int(input("请输入一个整数: "))

r = -n if n < 0 else n

print(n,'的绝对值是:', r)

 

pass 语句
作用:
通常用来填充语法空白
pass 又名空语句
语法:
pass
示例:
# 让用户输入1~12的数字。如果不符合条件,则提示输入有误
n = int(input("请输入数字(1~12): "))

if 1 <= n <= 12:
    # print("条件满足")
    pass
else:
    print("您的输入有误!")

# if not 1 <= n <= 12:
#     print("您的输入有误!")

# if n < 1 or n > 12:
#     print("您的输入有误!")

布尔运算:
运算符:
not and or
非 与 或

布尔非操作 not
语法
not x
作用:
对x进行布尔取非,如bool(x) 为True,则返回False,
否则为True
示例:

布尔与操作 and
语法:
x and y
注: x,y 代表表达式

作用:
优先返回假值对象,当x的布尔值为False时,返回x
否则返回y
示例:
True and True # True
True and False # False
False and True # False
False and False # False
100 and 0.0 # 0.0
0 and 0.0 # 0

布尔或操作 or
语法:
x or y
作用:
优先返回真值对象,当x为True时返回x,否则返回y
示例:
True or True # True
True or False # True
False or True # True
False or False # False
3.14 or 100 # 3.14
0 or 0.0 # 0.0

正负号运算符
+(正号) -负号
注: 一元运算符(一个元素参加运算)

语法:
+ 表达式
- 表达式
示例:
a = 5
b = -a # -负号
c = +a # 正号
print(a, b, c) # 5 -5 5


字符串 str
作用:
用来记录文字(文本)信息
表示方法:
在非注释中凡是用引号括起来的部分都是字符串
' 单引号
" 双引号
''' 三单引号
""" 三双引号
空字符串的字面值表达方法
'' "" '''''' """"""
非空字符串的字面值的表达方法
'hello' "hello" '''hello''' """hello"""

单引号和双引号的区别
单引号内的双引号不算结束符
双引号内的单引号不算结束符
示例见:
str.py

三引号字符串的作用:
三引号字符串可以包含单引号和双引号
三引号字符串中的换行会自动转换为换行符'\n'
示例见:
str2.py

隐式字符串字面值拼接
示例:
s = "I'm a teacher" 'my name is "Tarena"'
print(s) #

用转义序列代表特殊字符
字符串字面值中用字符反斜杠 \ 后跟一些字符代表
特殊的一个字符,如:
转字格式 含义
\' 代表一个单引号
\" 代表一个双引号
\\ 代表一个反斜杠
\n 换行
\r 返回光标至行首
\f 换页
\t 水平制表符
\v 垂直制表符
\b 倒退
\0 空字符(字符值为0)
\0oo oo为两位八进制表示的字符
\xXX XX为两位十六进制表示的字符
\uXXXX 四位十六进制表示的Unicode 16字符
\UXXXXXXXX 八位十六进制表示的Unicode 32字符

ASCII编码表
$ man ascii<回车>

常用的ASCII编码
字符 十进制 十六进制
'0' 48 0x30
'A' 65 0x41
'a' 97 0x61

序列的概念
字符串是序列(有序排列)
所有的序列都能用len(x) 函数求其长度

len(x) 函数
返回字符串中字符的个数

练习:
用交互模式验证如下字符串有几个字符
1. '1234abcd' # 8个
2. '5\'4"' # 4个
3. '\"A\x34\056'# 4个
4. '\a\bc\td\n' # 6个


raw 字符串(原始字符串)
格式:
r'字符串内容'
r"字符串内容"
r'''字符串内容'''
r"""字符串内容"""
作用:
让转义符号反斜杠 \ 无效
示例:
a = 'C:\newfile\test.py'
print(a)
print(len(a))
a = r'C:\newfile\test.py'
print(a)
print(len(a))


字符串的运算:
运算符:
+ += * *=
+ 加号运算符用于拼接字符串
x = "ABCD"
y = "123"
z = x + y
print(z) # ABCD123
+= 用于原字符串和右侧字符串拼接,再用变量绑定新的
字符串
x = 'ABC'
y = '123'
x += y
print(x) # ABC123

* 运算符生成重复的字符串
x = "ABC" * 3
print(x) # ABCABCABC
注: 字符串只能和整数相乘
*= 生成重复的字符串,再用原变量绑定
x = '123'
x *= 2
print(x) # 123123

字符串的比较运算
运算符:
< <= > >= == !=
比较规则:
依次按编码值进行两两字符比较,一但不同,则比较结束
并返回比较结果,当编码值和长度完全相同时,两个字符
串相同
示例:
'A' < 'B' # True
'ABC' > 'ABB' # True
'ADC' < 'ABC' # False
'ABC' >= '123' # True
'AB' < 'ABC' # True
'abc' == 'ABC' # False

in, not in 运算符
作用:
in 用于序列,字典,集合中,用于判断某个值是否存
在于容器中,如果存在则返回True,则返回False
not in 与 in 运算符的返回结果相反
格式:
对象 in 序列
示例:
x = 'welcome to tarena!'
'to' in x # True
'hello' in x # False
'e t' in x # True
'abc' not in x # True


练习:
1. 北京出租车计价器:
收费标准:
3公里以内收费 13元
基本单价 2.3元/公里(超出3公里以外)
空驶费: 超过15公里后,每公里加收单价的50%的
空驶费(3.45元/公里)
要求: 输入公里数,打印出费用金额
2. 输入一个学生的三科成绩:
1) 打印出最高分是多少分?
2) 打印出最低分是多少分?
3) 打印出平均分是多少分?
3. 计算 BMI指数(Body Mass Index) 又称身体质量指数
计算公式:
BMI = 体重(公斤)/身高的平方(米)
如:一个69公斤的人,身高173公分,则
BMI = 69 / 1.73 ** 2 # 得23.05
标准表:
BMI < 18.5 体重过轻
18.5 <= BMI < 24 体重正常
BMI >= 24 体重过重
要求: 输入身高和体重,打印BMI的值,并打印体重状况
4. 写一个程序.打印一个高度为4行的矩形方框
要示方输入一个整数,此整数代表矩形的宽度,输入此矩形
如:
请输入矩形宽度: 10
打印如下:
##########
# #
# #
##########
如果输入的数字越大,则此矩形会越宽




posted on 2019-05-13 19:02  菜包233  阅读(271)  评论(0编辑  收藏  举报