Java教程

基础语法(二)

本文主要是介绍基础语法(二),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.逻辑运算符

1.not

  1. ot就是把紧跟后面的结果取反
  2. not与紧跟其后的那个条件是一个不可分割的整体
print(not 16 > 3)
print(not 16 < 3)
print(not False)
print(not True)
print(not 10)

2.and

  1. and 逻辑与,and用来链接左右两个条件,只有两边全为真时最终结果才为True
print(True and 3 > 1)

print(True and 3>1 and False)  # 条件全为真时,结果才为真

3.or

  1. 逻辑或,or用来连接左右两个条件,两个条件但凡有一个为True,最终结果为True,只有在两个结果都为False的情况下,最终结果才为False
print(0 or 3)

4.优先级

  1. not>and>or
  2. 如果单独就只是一串and链接,或者说单独就只是一串or链接,按照从左到右的顺序依次运算即可(偷懒原则)
  3. 如果混用就需要考虑优先级了

2.流程控制

1.单分支

#if 条件成立:
#    执行代码


"""
输入姓名,性别和年龄,
如果是女生且年龄小于28,输出我喜欢年轻女孩
"""
name = input("input your name:")
sex = input("input your sex(boy|BOY/girl|GIRL):")
#input()读入的age是字符串,要转换为int才能与28做大小比较
age = int(input("input your age:"))
if sex.lower() == "girl" and age < 28:
    print(name+" i like young girl")
    
 

2.双分支

#if 条件:
 #   条件满足,执行代码
#else:
 #   条件不满足,执行代码
    
name = input("input your name:")
sex = input("input your sex(boy|BOY/girl|GIRL):")
#input()读入的age是字符串,要转换为int才能与28做大小比较
age = int(input("input your age:"))
if sex.lower() == "girl" :
    if age < 28:
        print(name+" i like young girl")
    else:
        print("the age is greater than me is also ok!")
else:
    print("i do not like boy")

3.多分支

#if 条件:
 #   满足条件执行代码
#elif 条件:
#    上面条件不满足,执行这里
#elif 条件:
#   上面条件不满足,执行这里
#else:
#    所有条件都不满足,执行这里

"""
输入姓名,性别和年龄,
如果是女生
年龄小于28,输出我喜欢年轻女孩,
年龄不小于28,输出年龄比我大也可以
如果不是女生
输出我不喜欢男生
"""
name = input("input your name:")
sex = input("input your sex(boy|BOY/girl|GIRL):")
#input()读入的age是字符串,要转换为int才能与28做大小比较
age = int(input("input your age:"))
if sex.lower() == "girl" :
    if age < 28:
        print(name+" i like young girl")
    else:
        print("the age is greater than me is also ok!")
elif sex.lower() == "boy":
    print("i do not like boy")
else:
    print("your input is not manual human")

3.深浅copy

赋值, 没有创建新对象. 共用同一个对象,他们是相同的,赋值后的变量指向原有的内存地址

1.浅copy

拷贝第一层内容.不拷贝内部子对象,用 [:]或copy()

lst1 = ["金毛狮王", "紫衫龙王", "青翼蝠王", "白眉鹰王",["张无忌","赵敏","周芷若"]]
print(lst1.copy())  #浅拷贝  拷贝出来的列表第一层与原来是不同的内存地址,第二层指向原来的地址 
>>>
['金毛狮王', '紫衫龙王', '青翼蝠王', '白眉鹰王', ['张无忌', '赵敏', '周芷若']] 
print(lst1[:]) #浅拷贝  
>>> 
['金毛狮王', '紫衫龙王', '青翼蝠王', '白眉鹰王', ['张无忌', '赵敏', '周芷若']]

2.深copy

拷贝所有内容. 包括内部的所有,形成一个新的对象,虽然与之前的值和内容一模一样,但是它们完完全全的两个对象,用deepcopy()

lst1 = ["金毛狮王", "紫衫龙王", "青翼蝠王", "白眉鹰王",["张无忌","赵敏","周芷若"]]
lst2 = copy.deepcopy(lst1)
print(lst2)   >>>  ["金毛狮王", "紫衫龙王", "青翼蝠王", "白眉鹰王",["张无忌","赵敏","周芷若"]]
print(id(lst1)) >>> 358961124936
print(id(lst2)) >>> 358961315656
# lst1和lst2 是两个不同内存地址的
这篇关于基础语法(二)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!