&关于python入门(一)遗留问题:python的应用领域
- 科学计算 : 因为方便的大数表示及运算,所以适用于科学计算和高质量绘图
- 文本处理 :python支持的正则表达式,还有其具有的SGML、XML分析模块使其适用于文本处理
- 数据库编程 : python可以实现便捷的数据库通信并具有完整的SQL环境
- 网络编程 :能方便地开发分布式应用程序
- 金融分析 : python又数据分析模块,是金融分析,量化交易领域使用最多的语言
- 多媒体应用:进行二维、三维图像处理
此外还有 web开发、自动化运维、网络爬虫、游戏开发、人工智能等
&数据类型
&一、字符串格式化输出
这里续前一篇的字符串内容,忘记了字符串的建议看看上一篇。 如何在输出字符串的同时插入变量数据呢?比如我们从用户那里读取了一个名字xx和年龄xx,然后想输出“hello,xx,你现在xx岁”。
age = 18
name = 'yan er you'
print('hello ' + name + ' ,you are' , age , 'years old')
print('hello {0} ,you are {1} years old'.format(name , age))
print('hello {n} ,you are {a} years old'.format(a=age , n=name))
知道了如何输出,那么如何进行格式化输出呢?这就要用到控制符。
控制符 | 含义 |
---|
s | 字符串 | d | 十进制整数 | f,F | 十进制小数 | g,G | 整数或小数,编译器自动选择合适的类型 | e,E | 科学计数法,e小写,E大写 | o | 八进制整数 | x,X | 十六进制整数,x小写,X大写 |
一些具体的例子便于理解
number = 15
string = 'this is a string'
float1 = 2.0
float2 = 1.212126
print('{0:s}'.format(string))
print('{0:d}'.format(number))
print('{0:5d}'.format(number))
print('{0:f}'.format(float2))
print('{0:20f}'.format(float2))
print('{0:20.5f}'.format(float2))
print('{0:g}'.format(float1))
print('{0:e}'.format(float2))
print('{0:E}'.format(float2))
print('{0:o}'.format(number))
print('{0:x}'.format(number))
print('{0:X}'.format(number))
输出结果 ??
&二、复杂的数据类型
&序列定义及通用操作
序列不是一种数据结构,而是一类数据结构的统称。序列指的是可迭代的,有序的,可重复的数据结构。这里就包括一些复杂的结构。常见的具体有
- 字符串(已经学过)
- 列表(未学过)
- 元组(未学过)
- 范围(未学过)
在介绍通用序列操作的时候,先把所有复杂的结构都想象成类似于数组(注意:python是没有数组这个类型的!!!),具体的区别后面会讲。
&一、索引
所有序列都可以通过索引访问元素。
str = 'python'
print(str[2])
list = ('p','y','t','h','o','n')
print(list[2])
tuple = ('p','y','t','h','o','n')
print(tuple[2])
print(tuple[-1])
a = range(10)
print(a[2])
&二、切片
切片指取出所有元素的某一部分。假设我们有一个字符串str,切片的基础方法为substr = str[a , b , c]。a为起始位置,b为结束位置,c为步长。基于这一基础,会有各种奇怪的变化。
str = '123456789'
print(str[2:8:3])
print(str[2:5])
print(str[5:2])
print(str[:5])
print(str[:3])
print(str[:])
print(str[2::3])
print(str[-20:4])
print(str[2:-5])
print(str[10:2:-1])
print(str[2:10:-1])
输出结果 注意 :
- 起始位置小于结束位置也不报错,但输出为空
- 步长不支持负数
- 步长为正数时,起始位置应小于结束位位置。步长为负数时,起始位置应大于结束位置。(具体例子看上面的最后两个)
&三、相加
同一类型的序列可以相加得到一个新的序列。要求是同一类型,不同类型是不可以的。
a = [1,2,3]
b = [4,5,6]
ab = a+b
print(ab)
c = (1,2,3)
d = (4,5,6)
cd = c+d
print(cd)
e = '123'
f = '456'
ef = e+f
print(ef)
&四、乘法
序列的乘法相当于重复。
a = [1,2,3]
b = 0*a
print(b)
c = 3*a
print(c)
&五、成员资格
所谓成员资格,就是一个元素在不在序列中。用 in 和 not in判断
a = [1,2,3]
print(1 in a)
print(4 in a)
print(1 not in a)
print(4 not in a)
b = 'hello'
print('he' in b)
print('p' in b)
print('ll' not in b)
print('pp' not in b)
&六、内置函数
主要是len() max() min() sum()
- len():返回元素个数/字符串长度
- max():返回最大值
- min():返回最小值
- sum():返回和,仅当元素都为数字的时候
a = [1.1 , 2.2 , 3.3]
print(len(a))
print(sum(a))
print(max(a))
print(min(a))
str = '123456'
print(len(str))
print(max(str))
print(min(str))
&预告
详细的列表,元组,字典,集合知识。 欢迎批评指正
|