Python 基础 第二天

import random
import math
# 集合(set)是一个无序的不重复元素序列
# 可以使用{} 或 set() 函数创建集合  值得注意的是 一个空集合必须用set() , 使用{}创建时会创建一个空字典
basket = {'iphone X','iphone XR','iPhone 11','iphone XR'}
print(basket) # 直接输出时会将重复的元素去除
print('iPhone 11' in basket) # 判断元素是否在集合中

# 集合间的运算
a = set('abcdefgabcdefg')
b = set('acegi')
print(a) 	#{'a', 'g', 'e', 'c', 'f', 'b', 'd'}
print(a-b) #{'f', 'b', 'd'}
print(a|b) #{'b', 'd', 'f', 'g', 'c', 'i', 'a', 'e'} a和b取并集
print(a&b) #{'e', 'g', 'a', 'c'} a和b取交集
print(a^b) #{'b', 'i', 'd', 'f'} a和b取异或 即不同时包含于ab的元素

# 集合的添加
# 语法:s.add(x)
thisset = set(("Google","Runoob","Taobao"));
thisset.add("Facebook")
print(thisset)

# 更新
# 语法:s.update(x) 如果集合中没有这个元素 则添加 有 则跳过
thisset.update({1,3})
print(thisset)
thisset.update([1,4],[5,6])
print(thisset)

# 移除
# 语法:s.remove(x) 若元素不存在 则会发生错误
thisset.remove("Taobao")
print(thisset)
# thisset.remove("神龙架") 没有 会报 key错误

# 移除方法二
# 语法:s.discard(x) 若元素不存在 也不会报错
thisset.discard("武当山")

# 随机移除集合中的元素
# 语法:s.pop()
x = thisset.pop()
print(x)
print(thisset)

# 计算集合中元素个数
# 使用函数:len(s)
print(len(thisset))

# 清空集合
# 语法:s.clear()
#thisset.clear()
print(len(thisset))

# 判断元素是否存在集合中
# 语法:x in s
print("Google" in thisset)

# 菲波那切数列
a , b = 0 , 1
while b < 10 :
    print(b)
    a , b = b , (a + b)

# 'end' 关键字 可以 将结果输出到同一行 , 或者在输出的末尾添加不同的字符
a , b = 0 , 1
while b < 1000 :
    print(b,end=' ,')
    a , b = b , (a + b)

print()
# if语句
a = 1
while a < 10 :
    if(a % 2==0) :
        print(a,"->是偶数",end=" ")
    else:
        print(a,"->是奇数",end=" ")
    a += 1
print()
# 如果 if 条件内为任意非0值 则为真 若为 数字 0 则 为假
if 0 :
    print("看我输不输出")

if '0' :
    print("我需要输出")

# 练习:若age 小于0 则输出 不可能 ; 若 age <= 12 输出 天真无邪小朋友 ;
# 若 age <= 20 则输出 祖国建设预备军 若 age > 20 则输出 奥利给
age = -1
age = int(input("输入你的年龄:")) # 输入一个值 转化为 int 型 若输入非 数字类型  报错
if age <0 :
    print("不可能")
elif age <= 12 :
    print("天真无邪小朋友")
elif age <= 20 :
    print("祖国建设预备军")
else:
    print("奥利给")

# 简单的数字猜谜游戏
# 游戏规则 系统随机提供一个100以内的随机数 直到猜中为止
answer = int(random.random()*100)
print("答案:",answer)
user_answer = int(input("输入你的答案:"))
while 1 :
    if (user_answer>answer) :
        print("你的值过大")
        user_answer = int(input("输入你的答案:"))
    elif (user_answer<answer) :
        print("你的值过小")
        user_answer = int(input("输入你的答案:"))
    else :
        print("答对了!!")
        break

# while循环的使用
# 输入一个数 求出从1一直加到这个数的和
num = int(input("输入一个数:"))
sum = 0
counter = 1
while counter <= num :
    sum += counter
    counter += 1
print("1 ~",num,"的和为:",sum)
# 或者用占位符的形式输出
print("1 ~ %d 的和为:%d" % (num,sum))

# while 循环 使用 else 语句 (第一次碰见while + else 震惊又好奇)
count = 0
while count < 5 :
    print(" %d 小于5" % (count))
    count += 1
else :
    print(count,"大于等于5")

# 当无限循环时 可以用Ctrl + C 中断循环

# for 语句
languages = ["C","C++","Java","Python"]
for x in languages :
    print(x,end=" ")

# break 的作用是跳出当前层的循环体

# range() 函数 :作用是生成一个数列
for x in range(5) :
    print(x,end=" ")
print()
for x in range(5,9) : #制定某一区间 不包含第二个参数 : 5<=x<9
    print(x,end=" ")
print()
for x in range(0,10,2) : #第三个参数设置增量
    print(x,end=" ")
print()
# 注意:如果首区间为负数时并且增量也是负数 则 数会越来越小
for x in range(-10,-100,-20) :
    print(x,end=" ")
print()

# range() 和 len()的结合使用
list = ['Google','Baidu','Taobao','Tengxun']
for i in range(len(list)) :
    print(i, list[i])

# continue的作用:跳过本次循环,直接进入下一次循环,注意 没有跳出循环
for letter in 'Runoob' :
    if letter == 'b' :
        break
    print('当前字母为:',letter)

for letter in 'Runoob' :
    if letter == 'o' :
        continue
    print('当前字母为:',letter)

# 循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被 break 终止时不执行。
for n in range(2,10) :
    for x in range(2,int(math.sqrt(n)+1)) :
        if n % x==0 :
            print(n,'等于',x,'*',n//x) # '//'是整形除法 '/'除法带浮点数
            break
    else:
        print(n,'是质数')

# pass语句
# 空语句,是为了保持程序结构的完整性
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值