C++程序员学习Python的笔记

# this is a test project
i = input()  # cin>>
a = int(i)

print(r"123\n")  # 非转义

print(True)  # bool
print(False)

print(10 // 3)  # div

if a > 10:  # if else
    print("The input is bigger than 10")
elif a > 5:
    print("The input is between 6~10")
else:
    print("The input is smaller than 10")

print(ord('A'))  # Unicode编码
print(ord('我'))  # 支持所有语言
print(chr(2221))  # Unicode编码对应的字符

print("Hello %s%d" % ("world", 3))  # 格式化输出,和c类似

# List
# tuple 元组 和List的区别就是tuple一旦初始化了,就不能修改,当然里面可以放list元素来实现动态添加的功能
fruit = ['apple', 'banana', 'juice']
print(fruit[1])

# 循环
sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:  # 枚举型循环
    sum = sum + x
print(sum)

sum = 0
for i in range(10, 100):
    sum += i

n = 1
while n <= 100:
    if n > 10:  # 当n = 11时,条件满足,执行break语句
        break  # break语句会结束当前循环
    print(n)
    n = n + 1

# dict 相当于c++中的Map
dict1 = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
print(dict1.get(dict1, 'Tracy'))
dict1['Michael'] = 100


# Python也支持强制转换

# 定义函数
def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x


# 加入参数默认值,有默认值的情况下,可以不传入此参数
# 需要注意默认参数必须指向不变对象!否则默认值会随着对象值不停改变
# None是不变对象
def power(x, n=2):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x
    return s


# 可变参数numbers
def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n * n
    return sum


# 关键字参数**kw
# 可以实现传入任意数量的不同参数名的参数,传入后以dict方式保存
# 这样用户可以
def person(name, age, **kw):
    if 'city' in kw:
        # 有city参数
        pass
    if 'job' in kw:
        # 有job参数
        pass
    print('name:', name, 'age:', age, 'other:', kw)


# 命名关键字参数
# 限制关键字参数的名称
# 命名关键字参数需要一个特殊分隔符*,*后面的参数被视为命名关键字参数。
def person(name, age, *, city, job):
    print(name, age, city, job)
# 使用*args和**kw是Python的习惯写法,当然也可以用其他参数名,但最好使用习惯用法。
# 切片
L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']
print(L[0:3])

 

你可能感兴趣的:(Python)