python入门学习笔记

  1. 开发环境、工具:python3.7(https://www.python.org/downloads/windows/)+ Pycharm 2019.3(https://www.jetbrains.com/pycharm/download/#section=windows
  2. 简单介绍:龟叔研究的解释性语言,开源,设计哲学是“优雅”、“明确”、“简单”,所以代码量相较于c,c++,java来说是最少的。
  3. python的源码以py格式保存。下面是:注释、键盘输入、输出、占位符、比较预算符的一些源码。
# 单行注释:# [注释]
# python对代码的要求比较严格,有些空格必须要有
# 描述天气
print("hello world!!")  # 代码行后面加注释

"""
多行注释,三个引号
"""
print("hello 中国")

# 通过键盘输入来拼接字符串
a = input("输入数字:")
b = input("输入数字:")
print("您输入字符串为:"+a+b)

# 输出占位符
# %sz :字符串
# %d :整数
# %f :浮点数
# %.3 :设置小数的位数,省略数字,代表是取整
# %% :输出%

age = 18
name = "张三"
height = 1.780

print("姓名是%s,年龄是%d岁,身高%.3f米,期望薪资是处于同龄人的5%%" % (name, age, height))

print("计算圆的面积测试=====================================================")
# 圆的半径
r = float(input("请输入圆半径(最多2位小数):"))
# 圆周率
pi = 3.14

# 计算圆的面积
area = pi * r ** 2
print("半径为%.2f的圆的面积为:%.2f" % (r, area))

# 比较运算符
score1 = 100
score2 = 200
print(score1 == score2)

# 字符串间的比较运算
# 大小顺序:0<1<2<...9<A<B<C<...Z<a<b<c<...z
score1 = "100"
score2 = "200"
print(score1 < score2)

下面这张图是有关字符串大小的比较:随着箭头逐渐增大。 

python的三种逻辑运算符: 与(and) 或(or ),非(not )

  • 短路与: A and B中, 若操作数A为False,那么操作数B将不会执行(被短路),输出False
  • 短路或:A  or B中, 若操作数A为True,那么操作数B将不会执行(被短路),输出True
# 关系运算符 and or not(非)
# and 全1才1,有0即0
# or  有1即1
# 结论:某个操作数可以决定整个式子值的,最终结果即为该操作数;
#    两个操作数都无法单独决定整个式子值的,最终结果即为后面的操作数。
age = True
money = True
print(age and money)
print("分隔符11111111111111")
# 数字 and 逻辑
print(1 and True)  # True
print(0 and True)  # 0
print(1 or True)  # 1
print(0 or True)  # true
print("分隔符22222222222222")
# 逻辑 and 数字
print(True and 1)  # 1
print(True and 0)  # 0
print(False or 0)  # 0
print(False or 2)  # 2
print(False and 1)  # False
print("分隔符33333333333")
# 数字 and 数字
print(1 and 2)  # 2
print(1 and 0)  # 0
print(0 or 0)   # 0
print(0 or 2)   # 2
print("分隔符44444444444")

# 注意: 这种下面是位运算符,都是按位&、|、^、~
print(1 & 2)   # 0 按位与
print(1 | 2)   # 3 按位或
print(2 | 3)   # 1 按位异或,两数不同返回1

4.分支语句和循环语句。

分支语句:

# 分支语句:if语句
print("开始")
if True:     # 冒号必须有,代表条件写完了
    print("分支语句学习1")  # 缩进4个空格必须有,if只控制缩进的语句
    print("分支语句学习2")
print("结束")
# 案例
num = 100
if num > 100:
    print("大于100")

# 分支语句:if...else...语句
if 10 % 2 == 0:
    print("这是 个偶数")
else:
    print("不是偶数")

# 分支语句 多种情况
salary = 8000
if salary < 5000:
    print("实习生")
elif 5000 <= salary < 8000:
    print("助理工程师")
elif 8000 <= salary:
    print("工程师")

# 案例
day = input("请输入星期数:")
if day == 1:
    print("跑步")
elif day == 2:
    print("游泳")
elif day == 3:
    print("健身房")
elif day == 4:
    print("动感单车")
elif day == 5:
    print("拳击")
elif day == 6:
    print("爬山")
else:
    print("约会")

# 嵌套分支语句 :注意空格即可
# 判断输出一个数是偶数还是奇数还是负数
number = 19

if number > 0 :
    if number % 2 == 0 :
        print("是偶数")
    else:
        print("是奇数")
else:
    print("是负数")

# 超长行处理:
# 在连续书写的内容位置敲回车,换行后会出现一个\,还有一个是括号。

循环语句: 

# 循环。一般从0开始,用小于号控制次数,比如下面输出4次
# i = 0
# while i < 5:
#     #
#     print("hello Python!")
#     i += 1

# 数据累计求和
num = 1
sum = 0
while num <= 100:
    sum = sum + num
    num += 1
print("1到100的和为:%d"  % sum)


# break功能(结束循环)
i = 0
while i < 10:
    i += 1
    # 大于5就结束
    if i > 5:
        break
    print("查数:%d" % i)
print("break结束")

# continue 功能 (结束本次循环,开始下一轮循环)
i = 0
while i < 10:
    i += 1
    # 只查偶数
    if i % 2 == 0:
        continue
    print("查数:%d" % i)
print("结束")

# 循环嵌套
# *
# * *
# * * *
# * * * *
# * * * *
j = 1
while j <= 5:
    i = 1
    while i <= j:
        print("*", end=" ")
        i += 1
    print()  # 换行
    j += 1


# 九九乘法表
j = 1
while j < 9:
    i = 1
    while i <= j:
        print("%d*%d=%d" % (i, j, i * j), end="\t")  # \t就是tab键,控制打印对齐
        i += 1
    print()   # 换行
    j += 1

5.函数。

"""
函数的定义与调用
定义格式:
def 函数名():
    函数体
调用格式:
函数名()
"""


def say():
    """
    打印hello Python
    :return:
    """
    print("hello world")
    print("hello china")
    print("How beautiful the girl is! ")


# 函数的调用必须写在函数定义之后,即先定义,后调用
say()


# 注意:
# 1.函数的文档注释,在函数体第一行写。
# 2.Pycharm 规范:函数的前后空两行。

# 函数的参数
def sumDemo(a,b):  # 形参
    """用于计算1到500的和"""
    print(a+b)


sumDemo(10,6)  # 实参

函数的作用域、返回值、global关键字

"""全局变量与局部变量的冲突,用global关键字把局部变量提升为局部变量。注意先声明,再使用。
格式:
global 变量名
"""


def test():
    global x  # 先声明,即把函数里的x =10 提升为了全局变量。
    x = 10
    print(x)  # 10


x = 20
test()
print(x)  # 10



"""
函数返回值
"""
def add(a,b):
    return a+b


def max1(a, b):
    if a > b:
        return a
    else:
        return b


print(max1(3, 4))


# 注意:
# 当函数没有返回值,结果是一个None。 同一个函数执行过程中只能执行一次return语句。
def max1(a, b):
    if a > b:
        print(a)
    else:
        print(b)


def max1(a, b):
    if a > b:
        return a
    else:
        return b


c = max1(3, 4)  # None

6.面向对象。跟java一样"一切即对象"

类:一系列事务的统称,同类事物必定具有相同的特性。

类根据特性分为状态行为,转化语言分别是:变量和方法。

"""
类的2种定义格式:
1.
class 类名:
    pass

2.
class 类名:
    成员
"""


class Cat:
    pass


class MyName:
    pass


"""
如何创建对象
格式:
变量名 = 类名 ()
"""
# 创建对象不限制个数
cat1 = Cat()
cat2 = Cat()
cat3 = Cat()


"""
类的成员变量。
定义格式一:
class 类名:
    def _init_(self):
        self.变量名1= 值1 
        self.变量名2= 值2
        self.变量名3= None
        
定义格式二(不常用):
对象名.变量名 = 值

调用格式:
取值:对象名.变量名
赋值:对象名.变量名 = 值
"""


class Dog:  # 格式一的定义
    def __init__(self):
        self.type = "藏獒"  # 所有狗的类型都是藏獒
        self.name = None  # 暂时没有名字,因为狗的名字狗的名字可能不一样


"""
调用格式
取值:对象名.变量名
赋值:对象名.变量名 = 值
"""
dog1 = Dog()
print(dog1.type)  # 取值
dog1.name = "小黄"  # 赋值
print(dog1.name)  # 取值

dog2 = Dog()
print(dog2.type)  # 取值
dog2.name = "小黄"  # 赋值
print(dog1.name)  # 取值
dog2.color = "红色"

"""
创建对象就有的属性是公有属性;创建对象之后才有的属性是独有属性,如上面的color
"""



类的成员方法

class Cat:
    def __init__(self):
        self.type = "波斯猫"
        self.name = None


    def eat(self):
        print("猫爱吃鱼")

    def climb(self,meter):
        print("猫会爬树,怕了%d米" % meter)


cat1 = Cat()
print(cat1.type)
cat1.eat()
cat1.climb(15)
# __init__(self)方法是在创建对象时调用的,无需手工调用即可执行。对于程序中声明、定义的方法在特定实际自动执行的方法,称为魔术方法。

# _str_() 方法在使用print函数打印输出对象到屏幕时被运行,无需手工调用即可执行。该方法也属于魔术方法
# _str_() 方法定义格式:
#    def _str_(self):
#        return 打印对象是显示的信息

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值