###############    if条件控制语句    ###############

# 以下实例 x 为 0-99 取一个数,y 为 0-199 取一个数,如果 x>y 则输出 x,如果 x 等于 y 则输出 x+y,否则输出y
import random
x=random.randint(0,100)
y=random.randint(1,100)
print(x,y)
print('#'*30)
if x>y:
print(x)
elif x==y:
print(x+y)
else:
print(y)

###############    三元运算符   ###############

一、三元运算符
三元运算符就是在赋值变量的时候,可以直接加判断,然后赋值
格式:[on_true] if [expression] else [on_false]
res = 值1 if 条件 else 值2
1.举例说明:
a =1
b = 2
c= a if a>1 else b #如果a大于1的话,c=a,否则c=b 如果不用三元运算符,就用if-else条件判断,如下:
a = 1
b = 2
if a >1:
c = a
else:
c = b 2.三元运算符也可以用在列表和字典中
例:1-10的数字,打印出其中的偶数
三元运算:
ss = [i for i in range(1,11) if i%2==0 ] #循环1-11间的值(不包括11),如果值能被2整除(即取偶数),就写到ss这个list中
print(ss) #最终打印结果 [2, 4, 6, 8, 10] if-else条件判断
s = []
for i in range(1,11):
if i %2==0:
s.append(i)
print(s)

###############    while循环语句    ###############

# 实例:使用了 while 来计算 1 到 100 的总和:
# a=0
# total=0
# while a<=100:
# total+=a
# print(a)
# a+=1
# print(total) # 无限循环
# 加法计算器 while True:
print('1:加法 q:退出')
option=input('请输入你的操作:')
if option=='':
a=int(input('请输入a:(输入000退出)'))
b= int(input('请输入b(输入000退出)'))
c=a+b
print('a+b=%d'%c)
if option=='q':
break

###############    for循环语句    ###############

# 遍历列表
list1=['c','c++','java','python']
for i in range(4): # range是0-4,左开右闭,
print(i,list1[i]) # 0-100的和
sum=0
for i in range(0,101):
sum+=i
print(i)
print(sum)

##########################################

# 打印九九乘法表

print("\n".join("\t".join(["%s*%s=%s" %(x,y,x*y) for y in range(1, x+1)]) for x in range(1, 10)) )

for i in range(1,10):
for j in range(1,i+1):
print("%d * %d = %d "%(i,j,i*j),end='')
print()

##########################################

# 列表推导式

# 30以内,所有能被3整除的数
print([i for i in range(31) if i%3 ==0]) # 30以内,所有能被3整除的数的平方
print([i*i for i in range(31) if i%3 ==0]) # 例题3:找到嵌套列表中名字含有两个‘e’的所有名字
names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'],
['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']] # 方法一: 普通方法
l4 = []
for i in names:
for j in i:
if j.count('e') >= 2:
l4.append(j)
print(l4) # 方法二: 列表推导式方法
print([j for i in names for j in i if j.count('e') >= 2 ]) # 用一行构建代码
l1 = [i for i in range(1,101)] # 100以内所有的偶数写入列表.
print([i for i in range(2, 101, 2)]) # 选出1-100中的奇数。
[i for i in range(100) if i % 2 != 0]
list(range(100))[1::2] 可以通过切片的方式 # 过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母
l1 = ['太白金星', 'fdsaf', 'alex', 'sb', 'ab']
l2 = [i.upper() for i in l1 if len(i) > 3]
print(l2) 优点:
​ 简单,快捷,装b 缺点:
​ 可读性不高,不好排错

例题:

# [[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
a = [[1,2],[3,4],[5,6]]
print([j for i in a for j in i ])

##########################################

##########################################

python语法基础-基础-控制语句的更多相关文章

  1. Python语法教程-基础语法01

    目录 1. Python应用 2. 在Linux中写python 3. Python基础语法 1. 注释 2. 变量定义及类型 3. 格式化输出 4. 用户输入 5. 运算符 6.数据转换 7. 判断 ...

  2. python语法_1基础语法概述

    http://www.runoob.com/python3 章节:教程.基础语法.数据类型.解释器.注释.运算符. 大纲 查看python版本 实现第一个python3.x程序,hello world ...

  3. Python入门篇-基础语法

    Python入门篇-基础语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编程基础 1>.程序 一组能让计算机识别和执行的指令. 程序 >.算法+ 数据结构= 程 ...

  4. (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md

    第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...

  5. Python:笔记(1)——基础语法

    Python:笔记(1)——基础语法 我很抱歉有半年没有在博客园写过笔记了,客观因素有一些,但主观原因居多,再多的谴责和批判也都于事无补,我们能做的就是重振旗鼓,继续出发! ——写在Python之前 ...

  6. Python学习①. 基础语法

    Python 简介 Python 是一种解释型,面向对象的语言.特点是语法简单,可跨平台 Python 基础语法 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编 ...

  7. 深入理解python(一)python语法总结:基础知识和对python中对象的理解

    用python也用了两年了,趁这次疫情想好好整理下. 大概想法是先对python一些知识点进行总结,之后就是根据python内核源码来对python的实现方式进行学习,不会阅读整个源码,,,但是应该会 ...

  8. 基础语法-其它流程控制语句break和continue

    基础语法-其它流程控制语句break和continue 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.break语句 /** * break语句 * @author 尹正杰 * ...

  9. python 笔记2:python语法基础

    python语法学习笔记: 1 输入输出 input(),print(). name = input('input your name : ')print('hello ,'+name)print(& ...

  10. Python基础部分:5、 python语法之变量与常量

    目录 python语法之变量与常量 一.什么是变量与常量 1.什么是变量 2.什么是常量 二.变量的基本使用 1.代码中如何记录事物状态 2.变量使用的语法结构与底层原理 3.变量名的命名规范 4.变 ...

随机推荐

  1. PAT Advanced 1079 Total Sales of Supply Chain (25) [DFS,BFS,树的遍历]

    题目 A supply chain is a network of retailers(零售商), distributors(经销商), and suppliers(供应商)– everyone in ...

  2. UML-迭代3-中级主题

    初始阶段和迭代1:揭示了大量面向对象分析和设计建模的基础知识. 迭代2:特别强调对象设计模式 迭代3:涉及主题比较宽泛: 1).更多GoF设计模式及其在框架(尤其是一个持久化框架)的设计中的应用. 2 ...

  3. A - Period(kmp的next数组的应用)

    For each prefix of a given string S with N characters (each character has an ASCII code between 97 a ...

  4. TCP_Wrappers简介

    转载自:http://www.cnblogs.com/duzhaoqi/ TCP_Wrappers     简介 TCP_Wrappers是一个工作在第四层(传输层)的的安全工具,对有状态连接的特定服 ...

  5. [Python Cookbook]Pandas: How to increase columns for DataFrame?Join/Concat

    1. Combine Two Series series1=pd.Series([1,2,3],name='s1') series2=pd.Series([4,5,6],name='s2') df = ...

  6. Springboot注解--@Controller和@RestController的区别

    1.使用@Controller 注解,在对应的方法上,视图解析器可以解析return 的jsp,html页面,并且跳转到相应页面:若返回json等内容到页面,则需要加@ResponseBody注解 2 ...

  7. CMS-熊海网站内容管理系统漏洞测试

    开门见山 在虚拟机中搭建网站,本机访问http://192.168.31.68/ 一.SQL注入获取管理员账号密码 1. 点开一篇文章,存在get请求参数 2. 手工注入无果,使用sqlmap,后跟- ...

  8. IOC与AOP的理解

    转自 https://blog.csdn.net/qq_38006047/article/details/80797386 1,理解“控制反转” 控制反转,也叫依赖注入,是面向对象编程中的一种设计理念 ...

  9. PAT Advanced 1089 Insert or Merge (25) [two pointers]

    题目 According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and ...

  10. Codeforces Round #621 (Div. 1 + Div. 2)D dij(思维)

    题:https://codeforces.com/contest/1307/problem/D 题意:给定无向图,n为点,m为边.在给个k,为特殊点的数目,题目要求在这些特殊点上连一条边,让新图最短路 ...