一、变量
现在要求你用程序把每个消费分类统计和总消费依次计算并打印出来,你怎么做呢?
1.1 程序实现:
你发现没有?你在最后在算总消费的时候,直接用的是之前已经算好的中间结果,为什么这么做?都知道这样是为了避免重新再算一遍所有的数据。那在程序中呢?
看到了没?这么写是有问题的,问题在哪呢?你最后算总消费的时候,是把之前算出来的分类结果填进去的,但是我们把程序写在脚本里面运行时,你肯定不会预先知道吃饭,交通,买衣服3个分类的结果的,这个结果是动态算出来的,那你如何把这3个动态结果做为总消费运算的数据源呢?
答案就是:直接把每个分类结果先起一个名称存下来,然后计算总消费的时候,只需要把之前存下来的几个名字调用一下就可以了
eat,cloth,traffic,精神,total这几个名字的作用,就是把程序运算的中间结果临时存到内存里,以备后面的代码继续调用,这几个名字的学名就叫着"变量”
变量定义规范:
声明变量:变量名(标识符)=变量值
name = "mike”
变量只能是字母、数字或下划线的任意组合
变量名的第一个字符不能是数字
以下关键字不能声明为变量名:
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
变量命名习惯:
驼峰体:
AgeOfOldboy = 56
NumberOfStudents = 80
下划线:
age_of_oldboy = 56
number_of_students = 80
官方推荐:
下划线的方式
定义变量比较low的方法:
二、常理
常理即指不变的量,如π=3.141592653......,或在程序运行过程中不会改变的量
在Python中没有一个专门的语法代表常理,程序员约定俗成用变量名全都大写代表常理
AGE_OF_OLDBOY = 55
在c语言中有专门的常理定义语法,const in count = 60;一旦定义为常理,更改即会报错
三、读取用户输入
name = input("what is you name?")
print("Hello" + name)
可以让用户输入多个信息,如下:
name = input("what is you name?")
age = input("How old are you?")
hometown = input("where is your hometown?")
print("hello ",name,"you are ",age,"years old, you came from",hometown)
四、注释
代码注释用#
多行注释用''''''
代码注释原则:
不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可
注释可以用中文或英文,但绝对不要用拼音哦五、数据类型
int(整型)
python中当你的数值小于int范围的时候,就是int变量,当大于int范围的时候,就是long类型了。在python中当你的变量大于int范围的时候,python会自动帮你把数据类型转为long类型的。
32位系统 int的范围为 -2**31 到 2**31-1
64位系统 int的范围为 -2**63 到 2**63-1
long(长整型)跟C语言不同,Python的长整型没有指定位宽,即:python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。注意:自从python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也会导致严重后果了。
注意在python3里不再有long类型了,全都是int
除了int和long之外,其实还有float浮点型,复数型
字符型:
在Python中,加入引号的字符都被认为是字符串
那单引号、双引号、多引号有什么区别?
单双引号没有任何区别,只有下面这种情况需要考虑单双引号的配合
msg= "My name is mike,I'm 20 years old!”
那多引号的作用呢?
作用就是:多行字符串的时候用多引号
msg = '''我叫Mike,今年20岁,
来自于湖南,我喜欢打篮球、乒乓球、
跑马拉松。'''
print(msg)
字符串拼接:
数字可以进行加减乘除等运算,字符串呢?
注意:字符串的拼接只能是双方都是字符串,不能跟数字或其它类型拼接
布尔类型很简单,就两个值,一个True(真),一个False(假),主要用于逻辑判断!
格式化输出:
1 name = input("Name:")2 age = input("Age:")3 job = input(str("Job:"))4 hometown = input(str("Hometown:"))5
6 info = """
7 ---------------info of %s-------------8 Name: %s9 Age: %s10 Job: %s11 Hometown: %s12 """ %(name,name,age,job,hometown)13
14 print("info:",info)
六、运算符
计算机考研进行的运算有很多种,可不只加减乘除这么简单,运算种类可分为算数运算符,比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算
七、流程控制
单分支:
1 #1、输入姓名、性别、判断如果是女生,打印我是快乐女生!
2 sex = '女生'
3 age = 28
4 UserName = input("请输入你的姓名:")5 Sex = str(input("请输入你的性别:"))6 Age = int(input("请输入你的年龄:"))7
8 if sex == Sex and age >Age :9 print("我是快乐女生!")
单分支if判断
双分支:
1 if条件:2 满足条件执行代码3
4 else:5 if条件不满足就走这个6
7
8 练习:9 #1、输入姓名、性别、判断如果是女生,打印我是快乐女生,否则,打印我是快乐男生!
10 sex = '女生'
11 UserName = input("请输入你的姓名:")12 Sex = str(input("请输入你的性别:"))13
14 if sex ==Sex:15 print("我是快乐女生")16 else:17 print("我是快乐男生!")18
19
20 #2、输入姓名,性别,年龄,判断如果是女生且年龄小于28岁,打印我是快乐女生,喜欢唱歌,否则,打印我是快乐男生,我要去跑马拉松!
21
22 #3、输入姓名,性别,年龄,判断如果是女生且年龄小于28岁,打印我是快乐女生,喜欢唱歌,否则,打印我是快乐男生,我要去跑马拉松!否则,打印跑马拉松需要训练
多分支if判断
多分支:
1 if条件:2 满足条件执行代码3 elif条件:4 上面的条件不满足就走这个5 elif条件:6 上面的条件不满足就走这个7 elif条件:8 上面的条件不满足就走这个9 else:10 上面所有的条件不满足就走这个11
12 练习:13 #写一个猜年龄的游戏
14 age_of_oldboy = 28
15 guess = int(input("输入年龄:"))16 if guess >age_of_oldboy:17 print("猜的太大了,往小里试试。。。")18 elif guess
""""""""""""<""""
<
""
<
<
""
""
""
<<
""
""
<
<
""
""
<
""
""
<
""
""
<
""
""
<
""
""
""
""
<
""
""
""
<""""""
""
""""""
""""
""""
<""""
""
""
""
""
""""
""""
<""""
""
""
""
""
""
""
""""""