python基础
仅仅打印输出 hello world 是不够的,对吧?你想要做的远不止这些 —— 你想要得到一些输入,操作它并从中得到一些东西。
1. 注释
注释是 #
符号右侧的任何文本,主要用作程序读者的注释。
print('hello world') # 注意,print 是一个函数。
或者:
#注意,print 是一个函数。
print('hello world')
或者
'''
我是
多行注释
'''
"""
我也是
多行注释
"""
2. 变量
2.1 什么是变量?
变量就是可以变化的量,这个量指的是事物的状态,比如说人的年龄,今天的天气啊,你的发量啊,哈哈哈。
在计算机中变量指的是 内存中的一段空间
2.2 为什么要有变量?
为了让计算机能够像人一样去记忆事物的某种状态,并且状态是可以发生变化的。
详细地说:
程序执行的本质就是一系列状态的变化,变化是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序执行时状态,以及状态的变化。
2.3 怎么使用变量?
变量一定是,先定义后使用。
变量的三大组成部分,如下图
解释器执行到变量定义的代码时会申请内存空间存放变量值,然后将变量值的内存地址绑定给变量名,以变量的定义name = "luze"为例
# 定义一个变量
name = "luze"
这样我们就定义了一个变量,定义变量的本质就是申请在内存中开辟一块空间存放变量值,那之前我们说过,你既然存在内存中,怎么取出来用呢?就是通过变量名,变量名指向的就是变量值存放的内存地址,我们可以拿着地址去访问值。
# 定义一个变量
name = "ymn"
print(name)
2.4 变量名的命名规范
-
变量名只能由 字母、数字、下划线 组成。
-
变量名不能以数字开头。
-
变量名不能是Python内置关键字,如:
‘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’ 可以通过 import keyword print(keyword.kwlist) # 打印所有的关键字
命名的两种风格
# 风格一:驼峰体
AgeOfTony = 56
NumberOfStudents = 80
# 风格二:纯小写+下划线(在python中,变量名的命名推荐使用该风格)
age_of_tony = 56
age = 18
number_of_students = 80
# 推荐
变量的命名是见名知意
变量名的不推荐命名(虽然程序不会报错,但是别人看到这样的命名一定会,呵呵的)
- 采用拼音,用汉字命名,变量名过长,这些都是不推荐的,实际开发中,一定不要采用这种。
3. is 与 ==
3.1 id
之前我们讲到过变量名绑定的是变量值的内存地址,那么不同的变量名可能绑定的内存地址是不同的,那么怎么能体现这一点呢?python解释器给我们提供了**id()**这个函数。(函数后面会介绍)通过id(变量名)
会返回一串id号码,这串id号码就对应着这个变量值的内存地址。那么我们就可以通过比较id号码,来判断不同变量名指向的内存地址是否相同。id( )返回对象当前的内存地址,内存地址不同id自然不同。
x = 'ymn'
y = 'alex'
print(id(x)) # 3102991623032
print(id(y)) # 3102991623032
3.2 is
比较的是左右两边的id是否相等
x = '100'
y = x
print(x is y) # True
3.3 ==
比较的是左右两边的值是否相等
x = '10'
y = '10'
print(x == y) # True
总结: id相等,即内存地址必然相等,即值必然相等。但是值相等,但id不一定相等,内存地址也不一定相等。
4. 常量
4.1 什么是常量?
常量就是不变的量,但是在python中是没有常量概念的,人们约定俗成用全部大写的英文单词代表常量。
NAME = "我是一个常量"
4.2 为什么要有常量?
在程序运行过程中,有些值是固定的、不应该被改变,比如圆周率 3.141592653…
4.3 怎么使用常量?
在Python中没有一个专门的语法定义常量,约定俗成是用全部大写的变量名表示常量。如:PI=3.14159
。所以单从语法层面去讲,常量的使用与变量完全一致。
5.行与缩进
Python 最具特色的就是使用缩进来表示代码块,不需要使用大括号
{}
。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。缩进不一致,会导致运行错误。
if True:
print ("True")
else:
print ("False")
Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠
\
来实现多行语句
total = item_one + \
item_two + \
item_three
在 [], {}, 或 () 中的多行语句,不需要使用反斜杠
\
total = ['item_one', 'item_two', 'item_three','item_four', 'item_five']
输入输出
1. Print()函数方法
格式化输出
>>>str = "the length of (%s) is %d" %('warsec',len('warsec'))
>>> print(str)
the length of (warsec) is 6
符 号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | s格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %f 和 %E 的简写 |
%p | 用十六进制数格式化变量的地址 |
Print不换行
在 Python 中 print 默认是换行的,想不换行你应该写成 print(i, end = '' )
>>> for i in range(1,6):
... print(i,end="")
...
12345>>>
2.输入函数Input
Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型
**注意:**在 Python3.x 中 raw_input() 和 input() 进行了整合,去除了 raw_input( ),仅保留了input( )函数,其接收任意任性输入,将所有输入默认为字符串处理,并返回字符串类型。
语法格式:变量 = input("提示信息")
接收单个值
>>>a = input("input:")
input:123 # 输入整数
>>> type(a)
<class 'str'> # 字符串
>>> a = input("input:")
input:runoob # 正确,字符串表达式
>>> type(a)
<class 'str'> # 字符串
接收多个值
#!/usr/bin/python
#输入三角形的三边长
a,b,c = (input("请输入三角形三边的长:").split())
a= int(a)
b= int(b)
c= int(c)
#计算三角形的半周长p
p=(a+b+c)/2
#计算三角形的面积s
s=(p*(p-a)*(p-b)*(p-c))**0.5
#输出三角形的面积
print("三角形面积为:",format(s,'.2f'))
数据类型
1 .数字型
1.1 int整型
1.1.1作用
用来记录用整数记录的状态, 比如年份, 年龄 等
1.1.1 定义
age = 20
year = 1999
1.2 float浮点型
1.2.1 作用
用来记录用小数记录的状态,比如某些商品的价格,存款等
1.2.2 定义
price = 98.88
money = 3999.54
1.3 数字类型的使用
1.3.1 数学运算
a = 99
b = 1
c = a + b
print(c) # 100
1.3.2 比较大小
x = 100
y = 200
print(y>x) # True
顺便提一嘴, float类型 可以和 int类型 做四则运算 结果都是 float类型
注意:
x = 99.99
y = 0.01
print(x+y) # 100.0
# x + y == 100 False
2. 字符串类型
字符串可以进行的操作:+ *
+:一个字符串和另一个字符串相加是将字符串进行拼接
*:字符串可以乘以数字,相当于是多少倍的输出
在Pyhon中一切皆对象,每一个字符串都是一个对象;
1:使用dir()可以查看对象的的使用方法
2:使用help()可以查看某个方法的帮助信息
标签:格式化,变量,python,基础,input,print,操作,变量名,id From: https://blog.csdn.net/weixin_67832625/article/details/141647624