python语法基础-基础-控制语句
############### 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语法基础-基础-控制语句的更多相关文章
- Python语法教程-基础语法01
目录 1. Python应用 2. 在Linux中写python 3. Python基础语法 1. 注释 2. 变量定义及类型 3. 格式化输出 4. 用户输入 5. 运算符 6.数据转换 7. 判断 ...
- python语法_1基础语法概述
http://www.runoob.com/python3 章节:教程.基础语法.数据类型.解释器.注释.运算符. 大纲 查看python版本 实现第一个python3.x程序,hello world ...
- Python入门篇-基础语法
Python入门篇-基础语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编程基础 1>.程序 一组能让计算机识别和执行的指令. 程序 >.算法+ 数据结构= 程 ...
- (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md
第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...
- Python:笔记(1)——基础语法
Python:笔记(1)——基础语法 我很抱歉有半年没有在博客园写过笔记了,客观因素有一些,但主观原因居多,再多的谴责和批判也都于事无补,我们能做的就是重振旗鼓,继续出发! ——写在Python之前 ...
- Python学习①. 基础语法
Python 简介 Python 是一种解释型,面向对象的语言.特点是语法简单,可跨平台 Python 基础语法 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编 ...
- 深入理解python(一)python语法总结:基础知识和对python中对象的理解
用python也用了两年了,趁这次疫情想好好整理下. 大概想法是先对python一些知识点进行总结,之后就是根据python内核源码来对python的实现方式进行学习,不会阅读整个源码,,,但是应该会 ...
- 基础语法-其它流程控制语句break和continue
基础语法-其它流程控制语句break和continue 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.break语句 /** * break语句 * @author 尹正杰 * ...
- python 笔记2:python语法基础
python语法学习笔记: 1 输入输出 input(),print(). name = input('input your name : ')print('hello ,'+name)print(& ...
- Python基础部分:5、 python语法之变量与常量
目录 python语法之变量与常量 一.什么是变量与常量 1.什么是变量 2.什么是常量 二.变量的基本使用 1.代码中如何记录事物状态 2.变量使用的语法结构与底层原理 3.变量名的命名规范 4.变 ...
随机推荐
- 题解 P4781 【【模板】拉格朗日插值】
题目 本蒟蒻看到一道数学题,就顺手切了.感觉单单对这一题而言,部分评论区的大佬过于复杂了 [分析] 先讲讲拉格朗日插值法: 对于给定的 \((n+1)\) 个点,我们可以确定唯一的一个 至多\(n\) ...
- MLP神经网络 隐含层节点数的设置】如何设置神经网络隐藏层 的神经元个数
神经网络 隐含层节点数的设置]如何设置神经网络隐藏层 的神经元个数 置顶 2017年10月24日 14:25:07 开心果汁 阅读数:12968 版权声明:本文为博主原创文章,未经博主允许不得转 ...
- 加速软件源更新和安装 ubuntu 软件中心
Linux mint 12 修改加速软件源更新和安装 ubuntu 软件中心 由于 linux mint 12 是基于 ubuntu 的,可以使用 ubuntu 的源(Ubuntu 11.10 代号 ...
- nginx常用编译参数
./configurate --prefix=/app/tengine --user=www --group=www --with-http_v2_module --with-http_ssl_mod ...
- 27. docker compose 单机 均衡负载
1.编写Dockerfile #Dockerfile FROM python:2.7 LABEL maintaner="eaon eaon123@docker.com" COPY ...
- 线性可分支持向量机与软间隔最大化--SVM(2)
线性可分支持向量机与软间隔最大化--SVM 给定线性可分的数据集 假设输入空间(特征向量)为,输出空间为. 输入 表示实例的特征向量,对应于输入空间的点: 输出 表示示例的类别. 我们说可以通过间隔最 ...
- html属性,上传图片选择时只显示图片文件
这个实现比较简单,就是用到accept属性: 注意这里我们对这个file元素进行了隐藏,因为它默认呈现是下面这个样子的,并不好看. <div style="display:none;& ...
- go语言学习资料
Go语言圣经(中文版): https://docs.hacknode.org/gopl-zh/index.html Go语言高级编程(Advanced Go Programming) https:// ...
- 吴裕雄--天生自然 PHP开发学习:表单 - 必需字段
<?php // 定义变量并默认设为空值 $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $ema ...
- PAT Basic 1043 输出PATest (20分)[Hash散列]
题目 给定⼀个⻓度不超过10000的.仅由英⽂字⺟构成的字符串.请将字符重新调整顺序,按"PATestPATest-."这样的顺序输出,并忽略其它字符.当然,六种字符的个数不⼀定是 ...