第一篇里我们主要简单讲解:变量的处理、条件判断与循环以及引申模块的导入
1. 第一个代码,简单的输出
print("l love python!")
2."" "" 多行注释符号
'''
这里是多行注释内容:大段的注释可以使用它,我们这里简单说几个需要关注的小点~
1:python 对格式要求非常严格,因此,在Python的代码块中必须使用相同数目的行首缩进空格数。比如下面的代码前面有段空格,这样是错误的
【 我是空格 】print("哈哈,我要显得特殊一些,往前跨一步~~")
2:__init__.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件,可以为空,也可以编辑。
'''
3.简单的了解一下变量
3.1、哪些可以定义成变量?Python有五个标准的数据类型:(列表、元祖、字典后边章节介绍)Numbers(数字)、String(字符串)、List(列表)、Tuple(元组)、Dictionary(字典),他们都可以被定义为变量来使用。
3.2、格式符?输出变量时经常回到用到格式符,为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型,详情如下:
%s 字符串 (采用str()的显示)
%r 字符串 (采用repr()的显示)
%c 单个字符
%b 二进制整数
%d 十进制整数
%i 十进制整数
%o 八进制整数
%x 十六进制整数
%e 指数 (基底写为e)
%E 指数 (基底写为E)
%f 浮点数
%F 浮点数,与上相同
%g 指数(e)或浮点数 (根据显示长度)
%G 指数(E)或浮点数 (根据显示长度)
# 我们对以上内容进行一些小练习
# 先定义好变量
a = "运维工程师" # 赋值字符串
b = "我们需要学习开发能力" # 赋值字符串
c = 2019 # 赋值整型变量
d = 100.00 # 赋值浮点型
e = f = g = 1 # 多变量赋值
h, i, j = 100,88,"tom" #多变量赋不同的值
# 将定义好的变量进行各种输出
print("我们的工作是:",a)
print("%d%s:%s"%(c,"年的小成长",b)) #格式化输出 %d代表整型;%s代表字符串
# 疑问下面的输出正确吗?应该如何修改
print(c + b ) # 我们想得到的输出内容是:“2019我们需要学习开发能力”
3.3 python的字符串内建函数:有很多,我们这里只列2个:format()、isdigit()
#格式化字符串函数 format()方法,使用.format可以更好的将不同数据类型变量加在一起
# {} 定义输出格式 .format() 里定义输出内容,用逗号分割。
aa = "{}{}{}".format(2019,"我要学习python","坚持就好!")
cc = "{}:我们开始学习{},为了让我们的level等级达到{}。".format("2016-12-31","PYTHON",10)
print(aa)
print(cc)
以上代码输出内容:
# isdigit() 判断变量只包含数字则返回 True 否则返回 False.
# 下面的实例中(猜数字游戏)使用了,这里不再举例。
3.4 对变量内容的处理,比如一段字符串,我们可以对其内容进行截取、替换、查找、分割等操作
# 先定义变量
str = "2019python"
#对变量进行部分截取
print(str[0:3]) # 截取第一位到第三位的字符
print(str[:]) # 截取字符串的全部字符
print(str[6:]) # 截取第七个字符到结尾
print(str[:-3]) # 截取从头开始到倒数第三个字符之前
print(str[2]) # 截取第三个字符
print(str[-1]) # 截取倒数第一个字符
print(str[::-1]) # 创造一个与原字符串顺序相反的字符串
print(str[-3:-1]) # 截取倒数第三位与倒数第一位之前的字符
print(str[-3:]) # 截取倒数第三位到结尾
以上代码输出内容:
# 定义变量,对变量进行替换/查找/分割,我们简单举例!
a = "lllyyylll"
a = a.replace('l','6') # 将变量中的l 全部替换为6
print(a)
b = "b,lukypython"
print(b.find('p')) # 查找变量b中"p"的位置,从下标0开始,查找在字符串里第一个出现"p"的位置
c = "l,u,k,y"
clist = c.split(',') # 以逗号分隔l,u,k,y并保存列表中
for value in clist: # for循环输出列表值
print(value)
以上代码输出内容:
4.简单的条件判断和循环
4.1、条件判断。小伙伴们还记得shell里的 if判断吧,if....;then....else....fi,
下面我们看看python的if条件判断:(就是这么简洁)
if 判断条件:
执行语句……
else:
执行语句……
# 定义变量
flag = False
name = 'python'
if name == 'python': # 判断变量否为'python'
flag = True # 条件成立时设置标志为真
print("Welcome back! ") # 并输出欢迎信息
else:
print(name) # 条件不成立时输出变量名称
4.2 当判断条件为多个值的时候,我们可以这么写
# 修改变量level 看一看是否可以匹配到相应的输出
level = 10
if level == 10: # 判断level的值
print("工资:10万元")
elif level == 8:
print("工资:8万元")
elif level == 5:
print("工资:5万元")
elif level == 1:
print("工资:1万元")
else:
print("大写的穷") # 条件均不成立时输出
4.3 简单的while循环
# 循环创建10个用户,当然看思路就可以,暂时只用print输出,不用着急,过几天我们就可以直接用while循环在服务器上批量操作了。
user_count = 0
while (user_count < 10): # 当user_count小于10的时候循环结束
print("useradd -s /sbin/nologin","newuser"+str(user_count))
user_count = user_count + 1 #每次循环后user_count的值+1
4.4 while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立也就是死循环
# continue 用法
i = 1
while i < 10:
i += 1
if i % 2 > 0: # 非双数时跳过输出
continue
print(i) # 输出双数2、4、6、8、10
# break的用法
i = 1
while 1: # 循环条件为1必定成立
print(i) # 输出1~10
i += 1
if i > 10: # 当i大于10时跳出循环
break
#无限循环,永远满足条件。
var = True
while var: # 该条件永远为true,循环将无限执行下去
user_input = input("随意输入都可以 :")
print("您输入的内容是: ", user_input)
print("Good bye!")
4.5 还有for循环,前面的内容其实用到了,这里就不多描述了,还有各种嵌套循环,小伙伴们自学,自学,自学吧
5. 实例
5.1 钱大家都喜欢,那么做个汇率的转换工具吧
# 定义用户的输出以及汇率
money_str = input("请输入带单位的金额(人民币CNY、美元USD):")
usd_vs_rmb = 6.77
# 增加条件,判断用户的输入:人民就兑换美金,美金兑换人民币,需要注意对于字符串的截取[0:3]是不包含3的,位置从0开始。
if money_str[-3:] == "CNY":
money_value = int(money_str[:-3]) / usd_vs_rmb
print(money_str +"兑换美金为:" + str(money_value))
elif money_str[-3:] == "USD":
money_value = int(money_str[:-3]) * usd_vs_rmb
print("%s%s:%d"%(money_str,"兑换人民币为",money_value))
else:
print("请输入正确的金钱种类!!!")
5.2 为了增加趣味,我们来玩个猜数字游戏~
# 引入random模块#
import random
# 调用random模块中的随机整数函数#
secret = random.randint(1,10)
# 输出旁白切割线+随机生成的数字,方便测试用(注意str(secret) 这么写是因为字符和整形不能相加,需要统一修改成字符串类型)#
# print('-------------------------------------------' + str(secret))
# 定义变量count用于while循环,限定循环次数#
count = 1
# 开始while循环,限定循环3次,从1开始小于4一共三个数:1、2、3#
while count < 4:
# 此处需注意如果要用temp.isdigit(),则不能直接定义 temp=int(input(......)),所以先判断用户输入,然后再定义新变量等于int(temp)#
temp = input("【请猜一猜我的幸运数字(只有三次机会呦~)现在是第" + str(count) + "次】:")
# 增加个判定限制用户只能输入整形数字temp.isdigit() #
if temp.isdigit():
guess = int(temp)
if guess == secret:
print("【哎我去,你一定是我肚子里的蛔虫】 ")
print("【猜对就猜对吧,哈哈!没有奖励,再见~】")
break
else:
if guess > secret:
print("【数字大了,哈哈~~】")
else:
print("【数字小了,哈哈~~】")
count = count + 1
else:
print("【请输入1-10的整数数字】")
if count == 4:
print("【好笨啊,三次都猜不对!】")
print("【游戏结束,欢迎下次在玩~~~】")