# Python 初级操作

# 一、数字

编程语言的数字都差不多,包括整形、长整型、浮点型、复数

常用运算函数大多数在 math 模块中

import math
print(math.ceil(4.1)) #返回数字上的向上取整   ->5
print(math.floor(4.9)) #返回数字上的向下取整  ->4
print(math.fabs(-10.3)) #返回数字的绝对值     ->10.3
print(math.sqrt(9)) #返回数字的开放           ->3.0
print(math.exp(1)) #返回 e 的 x 次幂             ->2.718281828459045

# 二、字符串

PythonPython 中的字符串可以用单引号、双引号和三引号(三个单引号或三个双引号)扩起来,使用反斜杠\\ 转义特殊字符

正常字符串输出如下:

print('Hello World!')   ->Hello World!
print("Hello World!")   ->Hello World!

带有特殊字符的输出如下,这部分和LaTeXLaTeX 的表示方法很像

print("The \t is a tab") ->The      is a tab
print('I\'m going to the movies') ->I'm going to the movies

三引号的使用方法

print('''I'm going to the movies''') ->I'm going to the movies
html = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERORR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
<BODY></HTML>
'''
print(html)  ->
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERORR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
<BODY></HTML>

字符串的连接分为两种

# 1、使用 + 运算符

str1="Hello "
str2="World!"
print(str1+str2)
->Hello World

# 2、使用 join 运算符

new_str = '-'.join('Hello')
print(new_str)
->H-e-l-l-o

# 三、列表(List)

声明一个列表

#声明一个列表
names=['jack','tom','tonney','superman','jay']
#通过下标或索引获取元素
print(names[0])  ->jack
print(names[1])  ->tom

访问最后一个元素

#获取最后一个元素
print(names[-1])  ->jay
print(names[len(names)-1])  ->jay

访问第一个元素

#获取第一个元素
print(names[0]) ->jack
print(names[-5]) ->jack

查询列表中有没有值为'superman' 的元素

# 查询列表中有没有值为'superman' 的元素
flag = 0
for name in names:
	if name == "superman":
		print("Yes")
		flag = 1
		break
if flag == 0:
	print("No")
# 更简便的方法
if 'superman' in names:
	print("Yes")
else:
	print("No")

添加元素、删除元素与统计元素

#声明空列表
girls = []
#append (), 末尾增加
girls.append('Alice')
print(girls) -> ['Alice']
#extend (): 合并列表
models = ['Cindy','Mary']
girls.extend(models)
#girls = girls + models
print(girls) -> ['Alice','Cindy','Mary']
#insert (), 在指定位置增加
girls.insert(1,'Jane')
print(girls) -> ['Alice','Jane','Cindy','Mary']
#del,删除列表元素
del girls[3]
print(girls) -> ['Alice','Jane','Cindy']
#遍历方法
for i in range(0,len(girls)))
	print(i)
-> Alice Jane Cindy
for girl in girls:
	print(girl)
-> Alice Jane Cindy
#截取方法
print(girls[1:]) -> ['Jane','Cindy']
#count (), 统计某个元素的出现次数
print(girls.count('Jane')) -> 1
#index (), 获得某个元素第一个匹配项的索引位置
print(girls.index('Cindy')) -> 2
#pop (), 移除列表的一个元素 (默认是最后一个元素), 并返回该元素的值
print(girls.pop(index=-1)) -> Cindy
#remove (), 移除某一个值的第一个匹配项
#reverse (), 翻转列表中的元素
#sort (cmp=None,key=None,reverse=None) 对原列表排序,cmp 确定从大到小还是从小到大,key 确定排序关键字,reverse 确定是否翻转

# 四、元组

特性:与列表类似,但元组内容不可修改

与列表转换方法:

tuple1 = ('hello','world')
list1 = list(tuple1)
print(list1) -> ['hello','world']

定义元组(只有一个元素时,最后面要加逗号)

tuple1 = ()
print(type(tuple1)) -> <class 'tuple'>
tuple2 = ('hello')
print(type(tuple2)) -> <class 'str'>
tuple3 = ('hello',)
print(type(tuple3)) -> <class 'tuple'>

访问元组

tup1 = ('I','am','a','dog',233)
print(tup1[0])  -> I

遍历元组和遍历列表的方法是一样的

无任何符号的对象而且用逗号隔开默认为元组

# 五、字典

定义空字典

dict1 = {}

定义一个字典时并初始化

dict2 = {'name':'Alice','weight':45,'age':25}
print(dict2['name'])  ->Alice

定义一个字典后添加元素

dict3 = {}
dict3['name'] = 'Cindy'
dict3['weight'] = 43
print(dict3) ->  {'name':'Cindy','weight':43}

修改字典元素

dict3['weight'] = 44
print(dict3) -> {'name':'Cindy','weight':44}

字典元素删除

del dict3['name'] # 删除键是 'name' 的条目
dict3.clear()     # 清空字典所有条目
del dict3         # 删除字典

字典内置函数

cmp(dict1,dict2) # 比较两个字典元素
len(dict1)       # 计算字典元素个数,即 key 的个数
str(dict1)       # 输出字典可打印的字符串

字典内置方法

dict.copy()  # 返回字典的一个复制品
dict.fromkeys(seq[,val])  # 创建一个新字典,以序列 seq 中的元素做字典的 key,val 为所有 key 的对应初始值
dict.get(key,default=None)  # 返回指定 key 的值,如果值不在字典中返回 default
#dict.item () 返回可遍历的 (key,value)
dict5 = {'Alice':165,'Cindy':166,'Jane':164}
print(dict5.items())
->dict_items([('Alice',165),('Cindy',166),('Jane',164)])
for key,value in dict5.items():
	if value > 165:
		print(key)
-> Cindy
#dict.keys () 返回可遍历的 keys
names =  dict5.keys()
print(names)   ->dict_keys(['Alice','Cindy','Jane'])
#dict.value () 返回可遍历的 vales
values = dict5.keys()
print(values)  ->dict_values[165,166,164]
#dict.has_key (key)  返回字典里是否存在 key 值,是则返回 true,否则返回 false