Python
python中的变量
常量和变量是相对的。在计算机语言中,其值永远不会发生变化的量叫常量,其值不能改变是指不会随着时间的变化而发生变化的量,在python中没有常量。
python语言中的变量不需要声明,变量的赋值操作即时声明和定义变量的过程。每个变量在内存中创建都包括变量的标识,名称和数据这些信息。
python语言支持对多个变量同时进行赋值。例如
a = (1,2,3)
x,y,z = a
print("x: %d, y: %d, z: %d"%(x,y,z))
#就会得到 x:1,y: 2,z: 3
python的输入和输出
想要实现python的输入功能,就需要调用input()函数实现。
input()函数语法格式如下
input(prompt)
其中“prompt”参数是可选的,意思是既可以使用也可以不使用。参数”prompt“用来提供用户输入的提示信息字符串。当用户输入程序所需要的数据时,就会以字符串的形式返回。也就是说input函数不管输入的是什么,最终返回的都是字符串。如果需要输入数值,则必须经过类型转化处理。
name = input("请输入您的名字: ")
print(name)
'''
当上面的代码执行时,效果是
请输入您的名字: 这里会让你输入姓名
请输入您的名字: 小美 当你输入你想输入的值后,按下Enter建时
就会将你输入的值赋给 name这个变量
小美 然后就会输出name变量的值
'''
想要实现python的输出功能,就需要调用函数print()来实现
函数print()语法格式如下
print(value,...,sep'',end='\n',file=None)
其中参数各代表的含义为
-
value:用户要输出的信息,后面的省略号表示可以有多个要输出的信息。
-
sep:多个输出信息中的间隔符,默认值为一个空格。
-
end:一个print()函数中所有要输出信息之后添加的符号,默认值为换行符。
-
file:元素输出位置,默认为当前sys.stdout。
print()函数也支持输出整数或计算结果。
演示如下
print('a','b','c')
print('a','b','c',sep=',')
print('a','b','c',end='++')
print(22+22)
print('QAQ',22)
'''
结果是
a b c
a,b,c
a b c++44
QAQ 22
'''
python的数据类型
基本数据类型:
Number (数字)
String(字符串)
List(列表)
Tuple (元组)
Dictionary(字典)
字符串
字符串类型是最常见的数据类型。可以使用引号(单引号或双引号)来创建字符串。
字符串也可以通过序号(序号从0开始)来取出其中的某个字符。例如:
‘abcd’[1] 取出的就是 “a”。
同理也可以进行截取部分字符,例如:
‘abcd’[2:4]取出的就是”cd“
然后在开发过程中就可以对某个已经存在的字符串进行修改,然后赋予另一个变量。例如:
var = "Hello Word!"
var2 = var[:6]+'Girl!'
print(var[:6]+'Girl!') #拼接了一个新的字符串
print(var2)
转义字符
有的时候我们并不想让转义字符生效,而只是想显示字符串原来的意思,这时候就要用到’r‘和’R‘来定义原始字符串。如果在字符串中输出反斜杠’\‘,就需要使用’\\‘实现。代码示例:
print("你们好\n你们好")
print("来吧\\小宝贝")
print("我爱\'美女\'")
print("r'\t\r'")
格式化字符串
python支持格式化字符串的输出功能,虽然这样可能会用到非常复杂的表达式,但是,在大多数的情况下,只需要将一个值插入到一个字符串格式符“%”中即可。常用的字符串格式化符号如下:
)
print("我今年已经%d岁了!"%(22))
print("我的名字是%s,今年已经%d岁了!"%('西门吹水',22)) #这里出现了需要使用多种格式字符串的情况,然后用到了元组。
字符串处理函数
在python中提供了很多个对字符串进行操作的函数。其中较为常用的有:
字符串处理函数 | 描述 |
---|---|
string.capitalize() | 将字符串的第一个字母大写 |
string.count() | 获得字符串中某一子字符串的数目 |
string.find() | 获得字符串中某一子字符串的起始位置,无则返回-1 |
string.isalnum() | 检测字符串是否仅包含09、AZ和a~z |
string.isalpha() | 检测字符串是否仅包含AZ和az |
string.isdigit() | 检测字符串是否仅包含数字 |
string.islower() | 检测字符串是否均为小写字母 |
string.isspace() | 检测字符串中所有字符是否均为空白字符 |
string.istitle() | 检测字符串中的单词是否为首字母大写 |
string.isupper() | 检测字符串是否均为大写字母 |
string.join() | 连接字符串 |
string.lower() | 将字符串全部转换为小写 |
string.split() | 分割字符串 |
string.swapcase() | 将字符串中大写字母转为小写,小写字母转换为大写 |
string.title() | 将字符串中的单词首字母大写 |
string.upper() | 将字符串中全部字符都转换为大写 |
len(string) | 获取字符串长度 |
代码示例如下:
str = "I love you !"
print(str.capitalize())
print(str.count('a'))
print(str.find('v'))
print(str.isalnum())
print(str.isalpha())
print(str.isdigit())
print(str.islower())
print(str.isspace())
print(str.istitle())
print(str.isupper())
print(str.join('abc'))
print(str.lower())
print(str.split(' '))
print(str.swapcase())
print(str.title())
print(str.upper())
print(len(str))
'''
运算结果:
I love you !
0
4
False
False
False
False
False
False
False
aI love you !bI love you !c
i love you !
['I', 'love', 'you', '!']
i LOVE YOU !
I Love You !
I LOVE YOU !
12
'''
数字类型
在python中数字类型是不允许改变的,这就意味着如果改变Number数据类型的值,将重新分配内存空间。
从python3开始,只支持int,float,bool,complex(复数)共计4种数字类型,删除了python2中的long(长整型)类型。
整形就是整数,整数包括正整数、负整数和零,不带小数点。在python中整数的取值范围是很大的。
python中的整数可以以几种不同的进制进行书写。0+ “进制标志” +数字代表不同进制的数。常用的有以下四种进制标志。
-
0o[0O]数字:表示八进制整数,例如:0o24、0O24。
-
0x[0X]数字:表示十六进制整数,例如:0x3F、0X3F。
-
0b[0B]数字:表示二进制整数,例如:0b101、0B101。
-
不带进制标志:表示十进制整数。
整数最大功能就是实现数学运算,例如:
print(5+4) #加减乘除
print(5-4)
print(5*4)
print(6*2)
print(15%4) #取余
print(2**5) #乘方
浮点型
浮点型是由整数和小数部分组成,浮点类型表示具有小数部分的数字。
整数和浮点数在计算机内部的存储方式是不一样的。python中的浮点数有如下两种表达方式:
-
十进制数形式:这种形式就是平常简单的浮点数,例如5.20、520.0、.520。浮点数必须包含一个小数点,否则就会被当作int类型处理。
-
科学记数法形式:例如5.12e2(5.12×10的平方),5.12E2(5.12×10的平方)。只有浮点类型的数值才可以用科学记数形式表示。
布尔型
布尔型是一种表示逻辑值的简单类型,它的值只有真或假这两个。布尔型的取值只有True和False两个。请注意大小写,分别表示逻辑上的真和假。其值为1和0。
布尔值可以用and、or和not进行运算。其中and是与运算符,or是或运算符。not是不的意思。
print(True and True)
print(True and False)
print(True or False)
print(False or False)
print(not False)
age = 12
if age>18:
print('age大于18')
else:
print('age小于18')
复数型
在python程序中,复数型即complex型,由实数部分和虚数部分构成,可以用a +bj或者complex(a,b)表示,复数的实部a和虚部b都是浮点型。
在python中可以用内置函数type()查询变量所属于的对象类型。
str1 = 123
str2 = 'girl'
str3 = 5.5
str4 = True
str5 = 4+3j
print(type(str1),type(str2),type(str3),type(str4),type(str5))