DevOps系列文章 之 Python基础

Python 基础篇(一)

print( )函数、input( )函数

用 Python 来打印 'Hello, world' 你会惊奇地发现Python是如此的简洁与优雅。

# 打印Hello, world
print('Hello, world')
Hello, world

# input()函数:接受一个标准输入数据,返回为string类型
name = input("请输入你的昵称:")
print("你好,"+ name + "!")
请输入你的昵称:你好,行远见大!

字符串:str( )、整型数:int( )、浮点数:float( )

  • 字符串:str( )、整型数:int( )、浮点数:float( ) 用法
  • 类型转换

# str()的作用:把一个数或任何其他类型转换成字符串
name = input("请输入你的昵称:")
# 其实在此处有name = str(name)的一个过程
print("你好,"+ name + "!")
请输入你的昵称:你好,行远见大!

# 此处str()的作用:把数值变成了字符串
a = str(input("输入一个数字:"))
print(a)
b = str(input("输入一个数字:"))
print(b)
print("打印两个数字相加:%s " % (a + "+" + b))
输入一个数字:3
输入一个数字:5
打印两个数字相加:3+5 

# 此处int()的作用:把字符串变成了数值
a = "5"
b = int(a)
# 去掉了双引号
print(b)
5

# 此处int()的作用:浮点数变整数,直接把小数点后的内容去掉
a = 3.222
b = int(a)
print(b)
3

# 输入一个整数,如果输入小数则报错
num = int(input("请输入一个整数:"))
print(num)
请输入一个整数:5

# 此处float()的作用:把整数转换成浮点数
a = 10
b = float(a)
print(b)
10.0

# 此处float()的作用:把字符串转换成浮点数
a = "10"
b = float(a)
print(b)
10.0

# 输入一个浮点数,如果输入整数则强制转换成浮点数
num = float(input("请输入一个浮点数:"))
print(num)
请输入一个浮点数:3.2

type( )函数、isinstance( )函数

用以识别变量的类型

# type()函数
a, b, c, d = 1, 2.0, "Hello, world", True
print(a, type(a), b, type(b), c, type(c), d, type(d))
1  2.0  Hello, world  True 

# isinstance()函数
print(isinstance("Hello, world", str))  # 返回True
print(isinstance("Hello, world", int))  # 返回False
print(isinstance(5,int))                # 返回True
print(isinstance(3.2, float))           # 返回True
print(isinstance(True, bool))           # 返回True
True
False
True
True
True

字符串格式化输出

格式化输出(formalized export)

符号 描述
%c 格式化字符及其ASCII码
%d 格式化整数
%e 格式化浮点数,用科学计数法
%f 格式化浮点数字,可指定小数点后的精度
%g 格式化浮点数字,根据值的大小采用%e或%f
%o 格式化无符号八进制数
%s 格式化字符串
%u 格式化无符号整型
%x 格式化无符号十六进制数(小写字母)
%X 格式化无符号十六进制数(大写字母)

# 格式化输出数字
age = 10
print("我今年%d岁了" % age)

num = int(input("请输入一个整数:"))
print("数字是:%d !" % num)
我今年10岁了
请输入一个整数:数字是:10 !

# 格式化输出字符串
print("我的名字是%s,我的国籍是%s。" % ("行远见大","中国"))
我的名字是行远见大,我的国籍是中国。

end函数、sep函数

改变打印间隔

# end函数
print("hello",end="")     # end=""   不换行,直接链接下一句
print("world",end="\t")   # end="\t" 中间空个Tab
print("next",end="\n")    # end="\n" 换行
print("python")
helloworld	next
python

# sep函数
print("www","baidu","com")
print("www","baidu","com",sep=".")
print("www","baidu","com",sep="\n")
www baidu com
www.baidu.com
www
baidu
com

python 四则运算

a, b, c, d, e = 1, 2, 3, 4, 5
print(a + b)            # 加
print(a - b)            # 减
print(c * b)            # 乘
print(c ** 2)           # 平方
print(b ** 0.5)         # 根号
print(a / d)            # 除
print(e // b)           # 地板除(向下取整)
print(e % b)            # 取余数
e += 1                  # 等价于 e = e + 1
print(e)
3
-1
6
9
1.4142135623730951
0.25
2
1
6

if 条件判断语句

  • 条件分支
  • 引入外部的库(随机数)
  • 三元操作符
  • assert函数

# 条件分支
num = int(input("请输入1到100之间的整数:"))
print(num)
if 1 <= num <= 100:
    print("输入正确!")
else:
    print("输入错误!")
请输入1到100之间的整数:10
输入正确!

# 猜固定数字
temp = input("从1~10中猜个正整数:")
print(temp)
guess = int(temp)
while guess != 5:
    temp = input("猜错了,请重猜:")
    guess = int(temp)
    if guess == 5:
        print("恭喜你,猜对了!")
    else:
        if guess > 5:
            print(guess)
            print("猜错了,要往小的猜!")
        else:
            print(guess)
            print("猜错了,要往大的猜!")
print("恭喜你,猜对了,游戏结束。")
从1~10中猜个正整数:2
猜错了,请重猜:4
猜错了,要往大的猜!
猜错了,请重猜:6
猜错了,要往小的猜!
猜错了,请重猜:恭喜你,猜对了!
恭喜你,猜对了,游戏结束。

# 猜随机数字
import random
secret = random.randint(1,10)
temp = input("从1~10中猜个正整数:")
print(temp)
guess = int(temp)
while guess != secret:
    temp = input("猜错了,请重猜:")
    guess = int(temp)
    if guess == secret:
        print("恭喜你,猜对了!")
    else:
        if guess > secret:
            print(guess)
            print("猜错了,要往小的猜!")
        else:
            print(guess)
            print("猜错了,要往大的猜!")
print("正确答案是:%d!" % guess)
print("恭喜你,猜对了,游戏结束。")
从1~10中猜个正整数:3
猜错了,请重猜:5
猜错了,要往大的猜!
猜错了,请重猜:8
猜错了,要往小的猜!
猜错了,请重猜:7
猜错了,要往小的猜!
猜错了,请重猜:恭喜你,猜对了!
正确答案是:6!
恭喜你,猜对了,游戏结束。

# 生成随机数
import random            # 引入随机库
x = random.randint(0,5)  # 随机生成0到5的数(0,1,2,3,4,5)
print(x)
5

# 现有两个不相等的数字,输出最小的数字
x , y = 3, 5
if x < y:
     small = x
else:
     small = y
print(small)
3

I

# 三元操作符
x , y = 3, 5
# 用三元操作符的条件表达式可以一句话来完成条件判断与赋值操作:
small = x if x < y else y
print(small)
3

# assert函数
assert 5 > 3
print("assert函数,当函数为真时,程序继续往下执行。")
assert函数,当函数为真时,程序继续往下执行。

如果输入 assert 3 > 5 时,函数为假,程序自动崩溃并抛出AssertionError的异常。

assert函数的作用:在程序中置入检查点,当需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert关键字就非常有用。

while循环语句、for循环语句

  • while循环语句语法:while 判断条件:\n 执行语句
  • for循环语句语法:for 目标 in 表达式:
  • range函数语法:range([strat, ]stop[, step=1])它有三个参数,其中用中括号括起来的两个表示这两个函数是可选的。step=1表示第三个参数的值默认值是1,range这个内置函数(BIF)的作用是生成一个从start参数的值开始到stop参数的值结束的数字序列

# while循环语句
i = 0
while i < 5 :
    print("当前是第%d次执行循环" % (i+1))
    print("i = %d" % i)
    i += 1
当前是第1次执行循环
i = 0
当前是第2次执行循环
i = 1
当前是第3次执行循环
i = 2
当前是第4次执行循环
i = 3
当前是第5次执行循环
i = 4

# 用while循环语句执行1到100求和
i = 0 ; sum = 0
while i <= 100 :
    sum = sum + i
    i += 1
print(sum)
5050

# 用while循环语句执行1到n求和
n = int(input("请输入求和数:"))
print(n)
i = 0
sum = 0
while i <= n :
    sum = sum + i
    i += 1
print("1到%d的和为:%d" % (n,sum))
请输入求和数:520
1到520的和为:135460

# 用while循环语句执行m到n求和
m = int(input("请输入起始求和数:"))
print(m)
n = int(input("请输入结束求和数:"))
print(n)
sum = 0
b = m
while m <= n :
    sum = sum + m
    m += 1
print("%d到%d的和为:%d" % (b,n,sum))
请输入起始求和数:300
请输入结束求和数:520
300到520的和为:90610

# while循环语句和else搭配用法
count = 0
while count < 5:
    print(count,"小于5")
    count += 1
else:
    print(count,"大于或等于5")
0 小于5
1 小于5
2 小于5
3 小于5
4 小于5
5 大于或等于5

# for循环语句
word = "helloworld"
for i in word:
	print(i,end=" ")
h e l l o w o r l d 

# range函数,左闭右开
for i in range(5):
    print(i,end=" ")
0 1 2 3 4 

# 从0开始,到10结束,步进值为3
for i in range(0,10,3):
    print(i,end=" ")
0 3 6 9 

# 从-10开始,到-70结束,步进值为30
for i in range(-10,-100,-30):
    print(i)
-10
-40
-70

# 用for循环语句执行1到100求和
sum = 0
for i in range(1,101):
    sum = sum + i
print(sum)
5050

break语句、continue语句

  • break语句的作用是终止当前循环,也就是跳出循环体。
  • continue语句的作用是终止本轮循环,并开始下一轮循环。值得注意的是,在开始下一轮循环之前,它会先测试一下循环条件,只有在循环条件为True的情况下,它才会开始下一轮循环,如果是False的话,它会退出循环。

# break语句
i = 0
while i < 10:
    i = i + 1
    if i == 6:
        break 
    print(i)
1
2
3
4
5

# break语句
bingo = "长江"
answer = input("中国最长的河流:")

while True:
    if answer == bingo:
        break
    answer = input("答错了,请重新输入:")

print(answer)
print("回答正确!")
中国最长的河流:长江
回答正确!

# continue语句
for i in range(10):
    if i % 2 != 0:
        print(i)
        continue
    i += 2
    print(i,end="\t")
2	1
4	3
6	5
8	7
10	9

# 此处continue 用处:跳过本次循环里边下面所有的语句
i = 0
while i < 10:
    i = i + 1
    if i == 5:
        continue   # 结束本次循环
    print(i)
1
2
3
4
6
7
8
9
10

本章练习题

1. 数字配对

要求:纠正如下代码中的错误并使程序正常运行

# 纠正如下代码
a = 5
b = input("请输入数字5:")

while True:
    if b == a:
        break
    b = input("配对失败,请重新输入或点击上方“中断”按钮退出循环:")

print(b)
print("数字配对成功!")

2. 等第评分

会考结束了,课代表帮老师录入考生等第。考生成绩在[90,100]等第评分为A,[80,90)等第评分为B,[70,80)等第评分为C,[60,70)等第评分为D,[0,60)等第评分为F,输入成绩大于100分或小于0分时返回“输入错误!”。

要求:补全代码并使程序正常运行

# 请在此处作答第二题
score = int(input("请输入一个分数:"))
if 100 >= score >= 90:
    print("A")
    

3. 石头剪刀布

要求:补全代码并使程序正常运行

print("来玩一局剪刀石头布,输掉的人今天请客吃饭~")
a = int(input("请输入数字 0(剪刀)、1(石头)、2(布): "))
if a == 0 :
    print("你出:剪刀(0)")
elif a == 1 :
    print("你出:石头(1)")
elif a == 2 :
    print("你出:布(2)")
else :
    print("哼~你赖皮,只能输入0或1或2!")
    print("不过我今天心情好,不跟你计较~")

# 补全代码并使程序正常运行


if b == 0 :
    print("我出:剪刀(%d) " % b)
elif b == 1 :
    print("我出:石头(%d) " % b)
else :
    print("我出:布(%d) " % b)

if a == 2 and b == 0 :
    print("哈哈,你输了!")
elif a == 0 and b == 2 :
    print("嘿嘿,你赢了!")
elif a < b :
    print("哈哈,你输了!")
elif a > b :
    print("嘿嘿,你赢了!")
else:
    print("别得意,平局而已!")

4. 用while循环语句实现九九乘法表

要求:用while循环语句

# 请在此处作答第四题 

5. 用for循环语句实现九九乘法表

要求:用for循环语句

# 请在此处作答第五题

 

你可能感兴趣的:(python,开发语言)