python用于数据分析实战 之控制流

条件语句与循环语句

编写一个程序,检查3个变量x,y,z,输出其中最大的奇数。如果没有奇数,就输出一个消息进行说明。

x,y,z = 2,5,9
list_num = [x,y,z]
odd=[]
for i in list_num :
    if i %2 == 1:
        odd.append(i)
if odd:
    print(sorted(odd)[-1])
else:
    print('没有奇数')

编写一个程序,要求用户输入10个整数,然后输出其中最大的奇数。如果用户没有输入奇数,则输出一个消息进行说明。

#循环从控制台输入程序
num_list=[]
for i in range(10):
    num=int(input("第"+str(i+1) + "个数"))  #这里必须把i转为字符串类型,因为默认的i是int型
    num_list.append(num)   #这里用append函数将用户输入的num添加到列表中
 
odd=[]
for numb in num_list:
    if numb % 2==1:
        odd.append(numb)  #遍历原列表,将其中的奇数添加到odd列表中
 
if odd:  #如果odd不为空
    print (sorted(odd)[-1]) #升序排列后直接取最后一位数即为最大值
else:
    print("没有奇数")

真假值测试

以下是在 Python 中被视为 False 的大多数内置对象:

定义为 false 的常量:None 和 False
任何数字类型的零:0、0.0、Decimal(0)、Fraction(0, 1)
空序列和空集合:""、()、[ ]、{ }、set()、range(0)

实际练习:将以下代码中的注释替换为while循环语句。

numXs = int(input(‘How many times should I print the letter X? ‘))
toPrint = ”
numXss=abs(numXs)
concatenate X to toPrint numXs times

numxs = int(input('How many times should I print the letter X? '))
toprint = ''
while numxs != 0:
    numxs = abs(numxs)
    toprint=toprint + 'x'
    numxs =  numxs - 1
print(toprint)

R语言实现

利用索引
number <- c(5,8,9)
odd <- number[number %%2 ==1] 
sort(odd)[length(odd)]
利用控制流
number <- c(5,8,9)
number_list=c()
n=1
for (i in number){
  if (i%%2 ==1) {
    number_list[n] <- number[n]
  } 
  n = n+1
}
sort(na.omit(number_list),decreasing=TRUE)[1]


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值