我的全栈之路-Python基础之Python基本程序设计

Posted ittimeline

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的全栈之路-Python基础之Python基本程序设计相关的知识,希望对你有一定的参考价值。

我的全栈之路-Python基础之Python基本程序设计

2.1 标识符

标识符是在程序开发时给工程、包,类、变量,方法等等命名的字符序列。
标识符在命名时需要遵守相关的规则和规范:

命名规则

  • 标识符由字母、数字、下划线组成,不能以数字开头
  • 标识符不能是关键字,因为关键字是被Python赋予特殊含义,但是标识符可以包含关键字
  • Python区分大小写,例如name和Name是不同的含义
  • 标识符建议命名时见名知意,增加程序的可维护性
  • 标识符建议命名(例如变量、函数)时如果包含多个单词,单词字母小写,多个单词之间使用下划线隔开。

python提供了获取关键字的包keyword,可以通过keyword.kwlist获取关键字,然后使用printf()函数输出关键字。

import keyword
"""
python关键字获取
首先导入python提供的获取关键字的包 keyword
然后调用keyword提供的kwlist方法
最后调用print方法输出关键字
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 12:21 上午
@since python3.7.4
"""
print(keyword.kwlist)

2.2 变量

2.2.1 变量概述

程序的核心任务就是处理数据,而数据的来源通常是通过输入设备(例如鼠标键盘)、磁盘、网络的数据加载到内存中,然后由CPU从内存中获取数据和指令执行,然后将执行结果写入到内存或者磁盘。

如果想要将程序的数据临时存储到内存中,并方便的操作内存中的数据,编程语言(C/C++/Python等等)通过变量来描述这一过程,操作变量就是操作内存的数据。

变量的本质就是内存的一段区域,这段区域占据的内存大小、存储的数值范围、能进行的运算等等由这个变量的类型来决定。变量名就意味着代表特殊含义的内存区域,操作这个变量就是操作变量代表的内存区域,每个变量在内存中都有唯一一个地址。在同一时刻,变量只能存储一份值,如果重复赋值,那么新值会将旧的值覆盖掉。

2.2.2 变量的定义和使用

Python变量的定义格式为 变量名 = 变量值,例如 name = "刘光磊" ,=表示把右边的值赋值给左边的变量。
如果想要查看赋值后的结果可以使用print(name)输出变量的值,变量既然称为变量,就是可以进行多次赋值,首次赋值时称为定义变量,再次赋值时称为修改变量的值。

变量除了被赋值以外,还可以做运算,例如算术运算等等。同时也可以将一个之前定义过的变量赋值给另外一个变量。

"""
变量定义的格式 变量名 = 变量值
通过操作变量名
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 12:00 上午
@since python3.7.4
"""

# 首次赋值是定义变量
name = "刘光磊"
# 输出变量的值
print(name)  # 此时name存储的是刘光磊

#  再次赋值时是修改变量的值
name = "戴娆"
# 输出变量的值
print(name)  # 此时name的值已经被改变,存储的是戴娆

# 使用变量和其他数据进行运算
age = 26
print(age)
# 先计算 age+1,得到一个结果27,然后调用python解释器的打印输出27
print(age + 1)

left = 10
print(left)  # 10
# 变量赋值时可以将之前定义的变量名(例如这里的left)赋值给另外一个变量(right)
right = left
# 此时right表示内存区域存储的变量值也是10
print(right)  # 10

2.2.3 变量的数据类型

之前在定义变量时,并未指定变量的类型,python编译器会根据变量值的类型来自动推断出变量的类型,如果想要获取变量的类型,可以使用Python提供的type()函数获取变量的类型,type()函数的参数可以传变量值或者是变量类型。

python的数据类型可以分为简单数据类型和高级数据类型,简单数据类型有整数类型、小数类型、字符串类型、布尔类型,高级数据类型有列表、元祖、字典、set集合。

"""
python提供了type()函数获取数据的类型,参数可以传变量类型,也可以传变量值
变量声明时未指定类型,但是python解释器会根据变量的值推导出变量的类型
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 12:01 上午
@since python3.7.4
"""
# 使用type()函数获取100的类型,然后赋值给result
result = type(100)
print(result)  # 表示类型<class ‘int‘>

i = 100
result = type(i)
print(result)  # <class ‘int‘>

flt = 3.14
result = type(flt)

print(result)  # <class ‘float‘>

flag = True
result = type(flag)
print(result)  # <class ‘bool‘>
flag = False
print(type(flag))  # <class ‘bool‘>

description = "hello python"
result = type(description)
print(result)  # <class ‘str‘>

2.3 读取键盘输入数据

python提供了input函数用于读取用户在控制台使用键盘输入的数据,input读取到的数据默认都是字符串类型,当程序中使用input函数时,程序会暂停,直到用户输入数据,如果想要提示用户输入什么数据,可以在input()函数中传入相应的提示信息,使得程序实现更好的人机交互。

"""
获取键盘输入的数据
python提供了input函数用于获取键盘输入的数据
键盘输入的数据无论是什么类型,input函数获取的数据类型都是字符串
当调用input函数后,程序就会暂停,等待用户从键盘输入数据,数据输入完成后按回车
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 11:36
@since python3.7.4
"""
print("请输入你的年龄")  # 输入年龄后按回车
# 获取用户输入的年龄并赋值给age
age = input()
# 获取变量的数据类型
print("age 的类型是%s" % type(age))
# 输出用户输入的年龄数据
print("你输入的年龄是%s" % age)

height = input("请输入你的身高
")
print("你输入的身高是%s" % height)

2.4 格式化输出

在写helloworld程序时调用了python解释器自带的print()函数输出"hello world"字符串常量到终端上。
而在日常开发中除了字符串以外,还会输出整数、浮点数、布尔类型常量等等。

# 打印常量
# 打印字符串
print("hello python")
# 打印整数
print(10)
# 打印浮点数
print(3.14)
# 打印bool值
print(True)

除此以外还可以打印输出整数、浮点数、布尔型以及字符串变量的值

# 打印字符串变量
desc = "跟磊哥学Python"
print(type(desc))
print(desc)
desc = "跟磊哥学Python,决战人工智能"
print(desc)

同时还可以打印输出表达式运算的结果

# 打印数据运算的结果 //表示整除
print(10 + 20 // 3)

如果输出的字符串中包含某个类型变量的值,就需要使用变量类型对应的格式化操作符转换。

格式化操作符号 转换
%c 字符
%s 字符串
%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母0x)
%X 十六进制整数(大写字母0X)
%f 浮点数
%e 科学计数法(小写‘e‘)
%E 科学计数法(大写‘E‘)
%g %f和%e的简写
# 如果输出的字符串包含某个变量的值,就需要使用变量类型对应的格式化操作符替换。

# 整数 格式化操作符的使用
age = 26
print("我的年龄是26岁")
# 整数的格式符 %d会由  age 替换
print("我的年龄是%d岁" % age)
print("我的年龄是%d岁" % 26)
# 字符串 格式化操作符的使用
name = "tony"
# %s会由变量name的值替换
print("我的名字是%s" % name)
# %s会由常量tony替换
print("我的名字是%s" % "tony")

# 输出的字符串有多个变量时,待根据格式符替换的变量使用()包含起来,并且使用,隔开
print("我的名字是%s我的年龄是%d" % (name,  age))

height = 178.5
# print默认输出小数的时候保留6位数,如果想保留指定n位小数,在%f的中间加上.n,例如%.1f
print("我的身高是%.1f" % height)

number = 8
# %0nd按照指定的宽度(n)显示数据,不足用0补齐
print("number = %06d" % number)

如果输出的字符串包含多个变量,待根据格式符替换的多个变量使用括号()包含起来,并且变量间使用逗号(,)隔开。括号()中变量的个数、类型和顺序和字符串中的格式符保持一致。

浮点型格式化操作符%f默认打印输出会保留6位小数,如果想要保留指定位数的小数,可以在%f之间使用.n来实现,其中n就是指定的小数位数。

2.5 数据类型转换

当在使用input函数获取用户输入的数据时,由于input读取到的数据类型都是字符串,而字符串在进行算术运算方面有些限制,例如字符串不能进行减法、减法运算等等。此时我们就需要使用python提供的类型转换来实现,例如将一个字符串转换为整数时只需要使用int(字符串)函数即可实现,将一个字符串转换为小数时使用float(字符串)函数即可实现。

"""
Python提供的常用数据类型转换函数
函数名	函数功能
int(x [,base ])	将x转换为一个整数
float(x )	将x转换为一个浮点数
complex(real [,imag ])	创建一个复数,real为实部,imag为虚部
str(x )	将对象 x 转换为字符串
repr(x )	将对象 x 转换为表达式字符串
eval(str )	用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s )	将序列 s 转换为一个元组
list(s )	将序列 s 转换为一个列表
chr(x )	将一个整数转换为一个Unicode字符
ord(x )	将一个字符转换为它的ASCII整数值
hex(x )	将一个整数转换为一个十六进制字符串
oct(x )	将一个整数转换为一个八进制字符串
bin(x )	将一个整数转换为一个二进制字符串

根据输入的手机价格和数量计算应付金额
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 13:59
@since python3.7.4
"""
price = input("请输入购买手机的单价
")
count = input("请输入购买手机的数量
")

print("购买手机的单价是%s
" % price)
print("购买手机的单价是%s
" % count)

# 此处运行会出错 input读取的数据都是字符串 此处需要使用类型转换才能进行乘法运算,因为字符串和字符串之间不能使用乘法运算
# amout = price * count  # TypeError: can‘t multiply sequence by non-int of type ‘str‘

flt_price = float(price)
print("f_price 类型是 %s" % type(flt_price))

int_count = int(count)
print("int_count 类型是 %s" % type(int_count))

amout = flt_price * int_count
print("购买手机的应付金额是%.2f" % amout)

除了常用的float和int外,python还提供了其他常用的数据类型转换

函数名 函数功能
int(x [,base ]) 将x转换为一个整数
float(x ) 将x转换为一个浮点数
complex(real [,imag ]) 创建一个复数,real为实部,imag为虚部
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个Unicode字符
ord(x ) 将一个字符转换为它的ASCII整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
bin(x ) 将一个整数转换为一个二进制字符串

2.6 算术运算符

算术运算符主要是完成数据的算术运算,例如加(+)、减(-)乘(*)除(/)、整除(//)、取模(%)、取幂(**)运算。

Python中的除法运算结果默认是浮点型,例如 20/3=6.666666666666667,而如果想要获取整除的结果(即计算结果舍弃小数部分)可以使用整除运算符(//)实现

取模即求余数,等价于 被除数/除以除数=商...余数,求最后的余数。
如果一个数取模n等于0,那么这个数一定是n的倍数。例如4%2=0,4就是2的倍数。

如果想要求一个数的n次方,可以使用取幂(**)运算实现,例如2 **3 =8

"""
python常用算术运算符
(+)
减(-)
乘(*)
除(/)
整除(//)、
取模(%)、
取幂(**)
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 13:04
@since python3.7.4
"""

# 常量运算
print("20 + 10 = %d" % (20 + 10))
print("20 - 10 = %d" % (20 - 10))
print("20 * 10 = %d" % (20 * 10))
# 两个整数相除 结果是小数
print("20 / 10 = %d" % (20 + 10))

# 整数与浮点数相除结果是小数
print("20 / 3.0 = %f" % (20 / 3.0))  # 6.666667

# 如果想要整除,使用//来实现 整除运算会舍去小数部分
print("20 // 3 = %d" % (20 // 3))  # 6

# 取模运算 等价于被除数/除数=商...余数,求最后的余数
# %% 用于转义,这里会输出一个%
print("5 %% 2 = %d " % (5 % 2))  # 5 % 2 = 5/2 =2...1
# 如果一个数字取模n等于0,那么这个数一定是n的倍数
print("4 %% 2 = %d " % (4 % 2))

# 取幂运算  2的3次方就是8
print("2 ** 3 = %d" % 2 ** 3)

# 不同数据类型的算术运算

# 字符串与整数、小数不能进行算术运算的加减运算,但是可以和整数进行乘法运算
# print("desc"+3) can only concatenate str (not "int") to str
# print("desc" - 3)  # unsupported operand type(s) for -: ‘str‘ and ‘int‘
print("desc *3  = %s " % ("desc" * 3))
# 但是字符串可以和字符串相加
print("python学习的内容包含" + "python基础" + "  web" + " Django" + "人工智能"+"爬虫"+"自动化运维")

# 布尔类型的值可以与数值直接进行运算 当布尔类型的值为True,当作1,False当作0
print("True + 1  = %d" % (True + 1))
print("False + 1 = %d" % (False + 1))

在多种数据类型进行运算时需要注意,字符串和整数、小数不能做加法、减法运算,但是可以和整数做乘法运算,字符串和字符串之间可以使用加法运算,表示字符串连接。布尔类型的值可以与数值直接进行运算 当布尔类型的值为True,当作1,False当作0

2.7 赋值运算符

Python中的赋值运算符使用=表示,赋值运算符是将=右边的值赋值给左边的变量。同时赋值运算符可以和算术运算符组合使用,称为复合运算符。

"""
python赋值运算符
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 13:19
@since python3.7.4
"""

# 赋值运算符
name = "tony"
print(name)

# 赋值运算符和算术运算符组合使用
salary = 50000.0
# salary += 5000.0 等价于 salary = salary +5000.0
salary += 5000.0
print("salary = %.2f" % salary)

salary -= 5000.0
print("salary = %.2f" % salary)

salary *= 5.0
print("salary = %.2f" % salary)

salary /= 5000.0
print("salary = %.2f" % salary)

salary //= 24.0
print("salary = %.2f" % salary)

2.8关系运算符

关系运算符又叫做条件运算符或者比较运算符,主要用于数据的关系运算,例如大于(>)、大于等于(>=),小于(<),小于等于(<=),等于(==)。关系运算符运算的结果是布尔类型的值,即要么是True,要么是False。

"""
关系运算
python常用的关于运算符有 大于(>)、大于等于(>=),小于(<),小于等于(<=),等于(==),关系运算符运算的结果是布尔类型
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 17:23
@since python3.7.4
"""

left = 10
middle = 10
right = 20
print(" left =%d 	 middle = %d 	 right = %d " % (left, middle, right))

print("left > right ", (left > right))
print("left >= right ", (left >= right))
print("left < right ", (left < right))
print("left <= right ", (left <= right))
print("left == right ", (left == right))
print("
我是分割线
")
print("left > middle ", (left > middle))
print("left >= middle ", (left >= middle))
print("left < middle ", (left < middle))
print("left <= middle ", (left <= middle))
print("left == middle ", (left == middle))

2.9 Bug和Debug

人的一生都不是一帆风顺的,编写程序也是一样。
在企业日常程序开发中,往往会遇到许多错误,这些错误可能是业务需求理解错误,也可能是程序编写不当造成的错误,例如之前使用字符串和字符串做加减法运算,当然在初学者学习一门语言时还会犯一些基本的语法错误。我们统一把程序中的错误统称为Bug。

而且通常情况下项目开发完之后由测试进行完整性功能测试、集成测试、压力测试等等,尽量在项目上线前找出程序中的Bug,然后让开发人员修复,解决Bug的过程就称为Debug。

解决Bug的能力是一个程序员的基本修养,在Pycharm中运行程序时提供了Run和Debug两种模式,如果想要发现程序中的Bug,首先在可能出现错误的地方设置断点,然后启动Debug模式,一步一步跟踪程序的运行过程,排查问题。
程序执行到断点对应的行数时会暂停。
技术图片
还可以在Pycharm提供的debug窗口中查看变量值
技术图片
如果在调试程序时想要逐行执行代码,可以使用F8快捷键,Alt+F9可以跳转到下一个断点。
如果在调试程序时,程序调用了某个方法,可以使用快捷键F7进入方法。

2.10 条件判断

日常生活中,做许多事情都是有条件的,例如想要结婚,丈母娘可能得要你有车有房才肯把姑娘嫁给你。

在python中,如果想要实现条件判断,可以使用if语句实现,其语法结构为

if 条件表达式:
    语句体

其中条件表达式的运算结果是True,就会执行语句体的内容,语句体可以包含多条可执行语句,需要使用Tab空四个后编写语句体。

"""
条件判断

if 关系表达式:
    语句体

 执行流程:首先判断关系表达式的结果是否为True,如果为True,则执行语句体,语句体中可以包含多种执行语句

@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 17:47
@since python3.7.4
"""

string_age = input("请输入你的年龄
")
int_age = int(string_age)
if int_age >= 18:
    print("你已经成年了")
    print("该负担起成年人的责任了")

# if语句之外的执行语句
print("outside of if")

if语句只能做一种条件的判断,那如何实现两种分支结构呢?if/else实现即可,其语法结构为

if 条件表达式:
    语句体
else:
    语句体

if/else的执行流程是如果条件表达式的计算结果为True,则执行if的语句体,条件表达式的计算结果为False,执行else的语句体。

"""
双分支if/else

if 条件表达式:
    语句体
else 条件表达式:
    语句体
    
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 18:39
@since python3.7.4
"""
string_age = input("请输入你的年龄
")
int_age = int(string_age)

if int_age >= 18:
    print("恭喜你成年了")
else:
    print("你未成年")

print("outside of if/else")

除了单分支、双分支外,if语句还能实现多分支条件判断,其语法结构为

if 条件表达式:
    语句体
elif 条件表达式:
    语句体
else:
    语句体

if/elif/else执行流程

首先判断if的条件表达式是否为True,如果为True的话,执行if对应的语句体,然后结束if/elif/else语句。

否则就从上往下依次执行elif,elif的数量是由业务来决定的,可以有多个elif,一旦elif的条件表达式成立,那么会执行对应elif的语句体,然后结束整个if/elif/else语句。

如果if和elif的条件表达式都是为false,那么最后会执行else的语句体,然后结束整个if/elif/else语句。else语句根据结合业务逻辑来判断是否需要添加。

根据用户输入的分数判断是优秀、良好、中等、及格还是不及格

"""
多分支选择结构
if/elif/else

if 条件表达式:
    语句体
elif 条件表达式:
    语句体
else:
    语句体
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 18:51
@since python3.7.4
"""
string_score = input("请输入你的分数
")
int_score = int(string_score)

if int_score >= 90:
    print("优秀")
elif int_score >= 80:
    print("良好")
elif int_score >= 70:
    print("中等")
elif int_score >= 60:
    print("及格")
else:
    print("不及格")

print("outside of if/elif/else")

根据用户输入的整数判断星期

"""
根据用户输入的数字判断星期几
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 19:25
@since python3.7.4
"""
string_number = input("请输入1-7之间的整数
")
int_number = int(string_number)

if int_number == 1:
    print("星期一")
elif int_number == 2:
    print("星期二")
elif int_number == 3:
    print("星期三")
elif int_number == 4:
    print("星期四")

elif int_number == 5:
    print("星期五")
elif int_number == 6:
    print("星期六")
elif int_number == 7:
    print("星期天")
else:
    print("你输入的数字非法,请检查")

print("outside of if/if")

if语句适合单分支的业务场景,if/else语句适合双分支的业务场景,if/elif/else语句适合多分支的业务场景。它们都是只要满足条件表达式,就会结束语句。

在复杂的业务场景中,还会用到嵌套的if结构,嵌套的if语法结构为

if 条件表达式:
    if 条件表达式:
        语句体
    

嵌套if的执行流程是首先判断外层if的条件表达式运算结果是否为True,如果为True,则会开始执行嵌套if的条件表达式运算,如果为True,则会执行嵌套if的语句体。

使用嵌套if来判断如果性别为boy 并且年龄大于等于22,输出"你到了法定的结婚年龄"

"""
嵌套 if

if 条件的表达式:
    if 条件表达式:
        语句体
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 19:05
@since python3.7.4
"""
gender = input("请输入你的性别 boy or girl
")

if gender == "boy":
    string_age = input("请输入你的年龄
")
    int_age = int(string_age)
    if int_age >= 22:
        print("你到了法定结婚年龄")
    else:
        print("你没有到法定的结婚年龄")
else:
    print("你没有到法定的结婚年龄")
print("outside of if/if")

嵌套if和if/elif也可以组合使用,其语法结构为

if 条件的表达式:
    if 条件表达式:
        语句体
    else:
        语句体
elif 条件表达式:
    if 条件表达式:
        语句体
    else:
        语句体

嵌套if和if/elif的执行顺序
首先执行外层if的条件表达式,如果表达式结果为True,则执行嵌套if的表达式,如果为True,则执行嵌套if的语句体,否则就执行嵌套else的语句体。

如果外层if的条件表达式为False,则执行elif的表达式,如果elif的表达式为True,则执行嵌套的if表达式,如果为True,则执行嵌套if的语句体,否则执行嵌套else的语句体。

"""
嵌套 if和if/elif使用

if 条件的表达式:
    if 条件表达式:
        语句体
    else:
        语句体
elif 条件表达式:
    if 条件表达式:
        语句体
    else:
        语句体
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 19:05
@since python3.7.4
"""
gender = input("请输入你的性别 boy or girl
")

if gender == "boy":
    string_age = input("请输入你的年龄
")
    int_age = int(string_age)
    if int_age >= 22:
        print("你到了法定结婚年龄")
    else:
        print("你没有到法定的结婚年龄")
elif gender == "girl":
    string_age = input("请输入你的年龄
")
    int_age = int(string_age)
    if int_age >= 20:
        print("你已经到了法定结婚年龄")
    else:
        print("你还没有到法定结婚年龄")
else:
    print("你没有到法定的结婚年龄")
print("outside of if/if")

2.11 逻辑运算符

逻辑运算符有逻辑与(and)、逻辑或(or)、逻辑非(not)三个,逻辑运算的结果都是布尔类型。
逻辑与:and 左右两边表达式的结果都为True,逻辑与的结果为True,否则为False
逻辑或:or 左右两边表达式的结果都为False,逻辑或的结果为False,否则为True
逻辑非:表达式的结果为True,not 表达式的结果为False,即取反。

使用逻辑与运算根据用户输入的数据判断是否为高富帅

"""
逻辑运算符

@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 20:07
@since python3.7.4
"""
salary = float(input("请输入你的薪水
"))
height = int(input("请输入你的身高
"))
score = int(input("请给你的外貌打分
"))
print("你的薪水是%.2f,你的年龄是%d,你的外貌打分是%d" % (salary, height, score))

if salary >= 20000.0 and height >= 180 and score >= 80:
    print("你是高富帅")
else:
    print("你不是高富帅")

逻辑或运算

"""
逻辑或运算
or 两边的表达式只要有一个为True,逻辑或的表达式结果就为True
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 20:44
@since python3.7.4
"""
asset = int(input("请输入当前的资产
"))
salary = int(input("请输入你的薪水
"))

if asset >= 5000000 or salary >= 50000:
    print("你能在二线城市过上美好的生活")
else:
    print("你不能在二线城市过上美好的生活")

逻辑非运算

"""
逻辑非
@author liuguanglei ittimelinedotnet@gmail.com
@website ittimeline.net
@version 2019/9/4 20:52
@since python3.7.4
"""
flag = True
print("flag 逻辑非运算的结果是", not flag)















以上是关于我的全栈之路-Python基础之Python基本程序设计的主要内容,如果未能解决你的问题,请参考以下文章

我的全栈之路-Java基础之macOS+Visual Studio Code开发Java程序

我的全栈之路-C语言基础之集成开发环境搭建

我的全栈之路-Java基础之Java概述与开发环境搭建

7Python全栈之路系列之协程

我的全栈之路-Go语言基础之Go语言开发环境搭建

我的全栈之路-C语言基础之Visual Studio 2019使用技巧