今天学习Python,Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
1、先从helloword开始(定义变量)
# 定义变量 print("hello word!") name = '人妖' # 存东西,不能以数字开头,加了引号是字符串 # print(name) age = 30 # int整数不加引号 score = 89.9 # float不加 grade = '射手座' # 字符串,string一定加引号 words = " let'go " words2 = '蔡蔡长得非常 "帅气、高大威猛"' words3 = '''let'go,昌姐美丽又漂亮,因为是个“人妖”!!!''' print(words2) print(words3)
运行结果
hello word! 蔡蔡长得非常 "帅气、高大威猛" let'go,昌姐美丽又漂亮,因为是个“人妖”!!!
注:
# 名字="蔡蔡"中文可以当变量名,但不可这么写,太low
# words='''abcde''' 定义变量
# '''''' 注释,多行注释
pycharm快捷键
# 注释/解注释:ctrl+?
# 快速复制一行:ctrl+d
# Ctrl+D:快速复制一行代码
# Ctrl + /:注释(取消注释)选择的行;
# Ctrl + Alt + L:格式化代码(Code-Reformat Code);
# Shift + Enter:在下方新建行并移到新行行首;
# Ctrl + Enter:在下方新建行但不移动光标;
2、条件判断
if...else...条件判断/if...elif...else条件判断。当条件满足其中一个条件时,不再执行其他if语句,按顺序去执行
# 条件判断:if else # if xxx: # else: # xxx age = 20 if age >= 20: # 有冒号,下行缩进 print('老男人') else: print('小男生') # > < >= <= != # and #并且的意思,多个条件判断 if age <= 6: print('小男生') elif age < 18 and age > 6: print('未成年') elif age >= 18 and age <= 35: print('成年人') elif age > 35 and age <= 55: print('中年人') else: print('老年人') if age > 35: # 单独写if时阔以的 print('欢迎') sex = '男' if sex == '男' or sex == '女': # or是或者 print('性别正常') else: print('无法识别性别')
运行结果:
老男人
成年人
性别正常
(1)判断练习
var = input('请输入您想说的话:') print('您想说的是:', var) # 分数,0-100 # >= 90 优秀 # <=90 >= 80 #良好 # >=60 <= 80 #及格 # 小于60 不及格 # 分数如果不在1-100之间,提示分数输入不合法 score = int(input("请输入您的成绩:")) # input接收到的,全部都是str类型 print(type(score)) # 获取score类型 # score = int(score) # 转成int类型 # score = float(score) # 转成浮点型 if score >= 90 and score <= 100: print("优秀") elif score < 90 and score >= 80: print("良好") elif score >= 60 and score < 80: print("及格") elif score < 60 and score >= 0: print("不及格") else: print('分数不合法') # 需求不能包含脏话:sb,SB,傻逼 title = input('请输入标题:') # if 'sb' in title or 'SB' in title or '傻逼' in title: # print('标题不合法') # else: # print('标题合法') if 'sb' not in title and 'SB' not in title and '傻逼' not in title: print('合法') else: print('标题不合法')
运行结果:
请输入您想说的话:我想喝奶茶 您想说的是: 我想喝奶茶 请输入您的成绩:99 <class 'int'> 优秀 请输入标题:sb 标题不合法
3、循环(for和while)
a、while:循环必须指定结束条件,否则会死循环
b、break:立即结束循环,不管你剩余多少次没有循环
c、continue: 结束本次循环,继续进行下一次循环
d、while对应的else作用:
while正常结束循环后,会执行else里的代码(else不是必写的)
# 循环、迭代、遍历 # for 和 while # while (循环必须指定结束条件,否则会死循环),需要一个计数器 # while循环示例,可以死循环 count = 0 while count < 10: count = count + 1 # if count == 4: # continue #结束本次循环,继续进行下一次循环 print('while创建了文件夹', count) print('*****************') break # 立即结束循环 else: print('while对应的else') # while正常结束循环后,会执行else里的代码(else不是必写的) # for循环示例,不需要计数,自动加,不能写死循环 for i in range(10): if i == 4: continue print('for创建了文件夹', i) else: # 只要循环不是被break提前结束的,就会执行else里面的代码 print('for对应的else')
运行结果:
while创建了文件夹 1 ***************** for创建了文件夹 0 for创建了文件夹 1 for创建了文件夹 2 for创建了文件夹 3 for创建了文件夹 5 for创建了文件夹 6 for创建了文件夹 7 for创建了文件夹 8 for创建了文件夹 9 for对应的else
(1)循环练习
# 猜数字游戏 ,最多7次机会,1~100之间,若猜对了,提示“恭喜猜对了” # 如果猜错了,告诉玩家猜大了 还是小了 # 需求分析 # 1、随机产生一个数字 # 2、循环7次 # 3、input输入猜得数字 # 4、判断猜测结果,大于、等于、还是小于 # 5、7次都没猜中,提示:次数超限,游戏结束 # while循环示例 # import random # number = random.randint(1, 100) # print(number) # count = 0 # while count < 7: # count = count + 1 # guess = input('请输入1-100数字:') # guess = int(guess) # if guess > number: # print('猜大了') # elif guess < number: # print('猜小了') # else: # print('猜对了') # break # else: # print('次数超限,游戏结束') # for循环示例 import random number = random.randint(1, 100) print(number) for i in range(7): guess = input('请输入1-100数字:') guess = int(guess) if guess == number: print('恭喜你,猜对了,结果是', guess) break elif guess < number: print('猜小了') else: print('猜大了') else: print('次数超限,游戏结束')
运行结果:
92 请输入1-100数字:50 猜小了 请输入1-100数字:80 猜小了 请输入1-100数字:90 猜小了 请输入1-100数字:99 猜大了 请输入1-100数字:97 猜大了 请输入1-100数字:95 猜大了 请输入1-100数字:92 恭喜你,猜对了,结果是 92
注:
# count+=1 #count = count + 1
# count*=1 #count = count*1
# count/=1 # count = count/1
# count-=1 #count = count-1
4、字符串格式化
# 字符串格式化,使用加号来连接字符串。 name = '人妖' time = '2020/04/18' s1 = '欢迎' + name + '登录,时间' + time # 不推荐使用,内存会存在多个变量 s2 = '欢迎%s登录,时间%s' % (name, time) # 占位符,推荐使用 s3 = '欢迎 %s 登录' % name # 只有名字,省略括号 print(s1) print(s2) # %s表示输出为字符串格式,%d表示输出为整数,%f表示为浮点型,保留x位小数 age = 18 score = 99.9999 s4 = '年龄是 %d,分数是 %.2f' % (age, score) # 保留2位小数 s5 = '年龄是 %s,分数是 %s' % (age, score) # %s不管是什么类型 s6 = '年龄是{age},分数是{score}'.format(age=18, score=36) print(s4) print(s5) print(s6) # 使用format格式化输出,第一种方式是指定按位置输出,第二种是指定具体变量名输出 # insert into user (id,name,addr,phone,qq,email,gold,class) values (%s,%s,%s,%s,%s,%s,%s,%s) # sql = 'insert into user (id,name,addr,phone,qq,email,gold,class) values ({id},{name},{addr},{phone},{qq})' # sql.format(id=1,addr='beijing',name='小暗黑',phone='1111',qq='xxxx') # s7 = '年龄是{age},分数是{score}'.format(age=age, score=score) s7 = '年龄是{age},分数是{score}' s7 = s7.format(age=age, score=score) # format方法会产生新的值,得重新给s7赋值 print(s7)
运行结果:
欢迎人妖登录,时间2020/04/18 欢迎人妖登录,时间2020/04/18 年龄是 18,分数是 100.00 年龄是 18,分数是 99.9999 年龄是18,分数是36 年龄是18,分数是99.9999
注: #f 格式化字符串是python3.6中新增的格式化方法,该方法更简单易懂