初识Python.day2
一. python运算符
算数运算符
比较运算符
赋值运算符
逻辑运算符
成员运算符
二. Python基础数据类型
1. python字符串总结
# 首字母变大写
# a1 = "jiuya"
# print(a1.capitalize()) # # 内容居中,
# a1 = "jiuya"
# ret = a1.center(20,'*')
# print(ret) # 计算字符串中的子序列个数
# a1 = "my name is mike"
# # ret = a1.count("m")
# # 制定范围子序列个数
# ret = a1.count("m",0,6)
# print(ret) # 判断是否以什么结尾,支持子序列是否以什么结尾.获取大于等于0,小于2的位置
# a1 = "hello"
# ret = a1.endswith('o')
# ret2 = a1.endswith('e',0,2)
# print(ret2) # # 判断是否以什么开头,
# a1 = "alex"
# ret = a1.startswith('a')
# print(ret) # 制表符,\t代表一个tab键
# find查找,找到返回找到的位置,找不到返回-1
# s = "alex hello"
# print(s.find("b")) # 字符串的格式化,只能从开始,按照顺序更新
# s = "hello {0},age {1}"
# print(s.format('jiu',23)) # 寻找子序列的位置,如果没有找到则报错
# index # # 判断是否都是字母
# a1 = "jiu"
# print(a1.isalpha())
#
# # 判断是否都是数字
# a1 = "123"
# print(a1.isalnum())
#
# # 判断是否都是小写
# a1 = "jiu"
# print(a1.islower())
#
# # 判断是否都是大写
# a1 = "JIU"
# print(a1.isupper())
#
# # 判断是否是标题,首字母大写
# a1 = "Jiu"
# print(a1.istitle())
#
# # 连接,join.循环每个元素,通过特殊符号连接
# li = ["jiu","ya","chun"]
# s = "*".join(li)
# print(s)
#
# # 去除空格
# s = " alex "
# # 左边去空格:new = s.lstrip()
# # 右边去空格:new = s.rstrip()
# # 两边去空格:new = s.strip()
#
# # 分割,指定分隔符分割,添加到一个元祖中
# # 默认从左往右,rpartition从右往左找
# s = "alex SB alex"
# ret = s.partition('SB')
# print(ret)
#
# # 替换,从左往右替换几次
# s = "alex SB alex"
# ret = s.replace("al","BB",1)
# print(ret)
#
# # 分割,以默认分割,分完不带分割符.以找到的第几处为分隔符
# s = "alexalex"
# ret = s.split("e",1)
#
# # 变成标题
# s = "the school"
# ret = s.title()
# print(ret) # # 索引
# s = "alex"
# print(s[0])
#
# # 长度
# s = "abcd"
# print(len(s)) # 切片,遵循 大于等于,小于的规则
# s = "alex"
# print(s[0:1])
# print(s[-3:-1]) # # while 实现循环打印字符串中的每个元素
# start = 0
# s = "alex"
# while start < len(s):
# temp = s[start]
# start += 1
# print(temp) # # for循环实现字符串打印,碰到e不打印
# s = "alex"
# for I in s:
# if I == "e":
# continue
# print(I)
2. 列表
##### 列表:
# 索引,正索引从0开始,负索引从-1开始
# name_list = ["jiu","niu","liu"]
# print(name_list[0]) # # 切片
# print(name_list[0:2]) # # len 长度
# print(len(name_list)) # # for 循环
# for i in name_list :
# print(i) # # 获取某个值的索引
# print(name_list.index("liu")) # # 追加
# name_list.append("ling")
# print(name_list) # # 统计元素次数
# print(name_list.count('jiu'))
#
# # 扩展,批量添加
# num_list = ["11","22","33"]
# name_list.extend(num_list)
# print(name_list) # # 指定位置插入元素,位置 + 元素
# name_list.insert(2,"SB")
# print(name_list) # # 移除最后一个元素,并赋值给变量
# a1 = name_list.pop()
# print(a1) # # 移除指定元素,左往右第一个
# name_list.remove('jiu')
# print(name_list) # # 反转
# name_list.reverse()
# print(name_list) # 指定位置删除
# name_list = ["jiu","niu","liu"]
# print(name_list)
# del name_list[0]
# del name_list[1:3]
# print(name_list)
53 #
53 # 修改列表指定元素
54 # list[index] = value
55 #
56 # list + list
57 # 连接列表,产生新列表,原列表不变
58 #
59 # list[] * n
60 # list1 = ["你"]
61 # list1 * 3
62 # ["你","你","你"]
63 # 排序
64 # sort(key=None,reverse=False)
65 # 对列表进行排序,就地修改,默认升序,key为一个函数,指定key如何排序
66 # 补充:
列表删除
remove(value) 从左往右匹配查找第一个匹配的值并删除 !!!遗忘掉!!!
pop(index) 不指定索引则删除最后一个 默认用此方法
3.元祖
##### 元祖
# 元祖和列表几乎是一样的,元祖不能修改。若以后创建一个集合,
# 不想让人修改可以用元祖,想让人修改,可以用集合 # 切片
# 索引
# len
# for循环
# 个数count
4. 字典
###字典,字典的每个元素都是一个键值对
user_info = {
"name":"alex",
"age":23,
"gender":"M"
}
# 索引
# print(user_info["name"]) # # 循环,默认输出的是keys值
# for I in user_info:
# print(I)
# print(user_info.keys()) # 输出键
# print(user_info.values()) # 输出值
# print(user_info.items()) # 输出键值 # 清除所有内容
# user_info.clear()
# print(user_info)
#
# # get 根据key获取值,如果key不存在,可以指定默认值,和下面删除 pop()类似功能
# val = user_info.get('name')
# print(val)
# # 索引取值时,如果不存在则会报错。推荐用get。指定默认值处理方式
# val = user_info.get('age1',40)
# print(val) # # 检查字典中指定key是否存在
# ret = 'name' in user_info.keys()
# print(ret) # # update 批量更新键值对
# print(user_info)
# test = {
# "a1":"123",
# "a2":"456"
# }
# user_info.update(test)
# print(user_info) # # 删除指定索引键值
# del user_info["name"]
# print(user_info )
44 # 删除指定键,返回值是一个元祖
45 # a = dic.pop('age')
46 #
47 # 可删除不存在键,自定义设置返回值
47 # print(dic.pop('high','没有此键')) 48 # 分别赋值思想,则可以分别打印字典的键,值
49 # for a,b in dic.items():
print(a,b)
5. 补充
# # enumerate 默认会在列表前面加一行索引数字,默认从0开始计数,列表,字典等都可用
# li = ["电脑","鼠标","键盘"]
# for key,value in enumerate(li,1):
# print(key,value)
#
# inp = input("请输入你要的商品:")
# num = int(inp)
# print(li[num - 1])
# li = ["电脑","鼠标","键盘"]
# inp = li.index("鼠标")
# print(inp) # range 需要用循环打印出内容,也可以指定跨度
# for I in range(1,10):
# print(I)
# for I in range(10,1,-2):
# print(I)
# 用range 循环列表实现enumerate的功能
# li = ["jiu","liu","niu"]
# lens = len(li)
# # print(lens)
# for I in range(0,lens):
# print(I,li[I])
三. 练习题
1.元素分类
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
li = [11,22,33,44,55,66,77,88,99]
all = {
"k1":[],
"k2":[]
}
for I in li:
if I > 66:
all["k1"].append(I)
elif I < 66:
all["k2"].append(I)
print(all)
感觉此处运用到的一个知识点为:字典是另一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。
2.查找
# for I in li:
# if I.startswith('a') or I.startswith('A') and I.endswith('c'):
# print(I)
# for I in tu:
# if I.startswith('a') or I.startswith('A') and I.endswith('c'):
# print(I)
# for I in dic.values():
# if I.startswith('a') or I.startswith('A') and I.endswith('c'):
# print(I)
3.商品选购
商品 li = ["手机", "电脑", '鼠标垫', '游艇']
4.购物车
功能要求:
- 要求用户输入总资产,例如:2000
- 显示商品列表,让用户根据序号选择商品,加入购物车
- 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
- 附加:可充值、某商品移除购物车
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
5.用户交互,显示省市县三级联动的选择
dic = {
"河北": {
"石家庄": ["鹿泉", "藁城", "元氏"],
"邯郸": ["永年", "涉县", "磁县"],
}
"河南": {
...
}
"山西": {
...
} }
初识Python.day2的更多相关文章
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- Python开发【第一篇】:初识Python
初识python 一.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解 ...
- Python开发【第二篇】:初识Python
Python开发[第二篇]:初识Python Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...
- 初识python面向对象
一.初识python面向对象: class Person: #使用class关键字定义一个类 age=0 #类变量(静态变量) def eat(self,food): #定义一个方法 self.age ...
- 篇2 安卓app自动化测试-初识python调用appium
篇2 安卓app自动化测试-初识python调用appium --lamecho辣么丑 1.1概要 大家好!我是lamecho(辣么丑),上一篇也是<安卓app自动化测 ...
- 2017-06-22初识python
初识python #!/usr/bin/env python (python解释器的文件路径)# -*- coding:utf-8 -*- (使用的编码内型)# python 2.7 <需要加第 ...
- day01 初识Python
今日主要内容 1.初识python 2.简单了解下python的数据类型 nubmer=int(input("请输入数字大小:")) if nubmer>66: print( ...
- @1-2初识Python爬虫
初识Python爬虫 Python爬虫(入门+进阶) DC学院 环境搭建: Python2与Python3的差异:python2与python3整体差异不大,大多是一些语法上的区别,考虑到py ...
- 初识python(二)
初识python(二) 1.变量 变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用. 1.1 声明变量: #!/usr/bin/env python # -*- coding: utf- ...
随机推荐
- Ubuntu18系统qt生成程序无法双击运行问题
1.Ubuntu18 安装qt编译生成的程序文件类型为application/x-sharedlib,无法双击直接运行.文件类型应该为x-executable. 2.解决方法 在.pro文件中添加下面 ...
- python操作三大主流数据库(5)python操作mysql⑤使用Jinja2模板提取优化页面展示
python操作mysql⑤使用Jinja2模板提取优化页面展示 在templates目录下的index.html.cat.html等页面有一些共同的元素,代码比较冗余可以使用模板提取公共代码,在各网 ...
- zabbix3.0.4使用percona-monitoring-plugins插件来监控mysql5.6的详细实现过程
zabbix3.0.4使用percona-monitoring-plugins插件来监控mysql5.6的详细实现过程 因为Zabbix自带的MySQL监控没有提供可以直接使用的Key,所以一般不采用 ...
- 修改SIP协议中的User-Agent名称
修改目的:如果user-agent 带上了 GIT 版本信息,容易被人抓住版本漏洞针对性的攻击. 示例如下: SIP/2.0 100 Trying Via: SIP/2.0/UDP 192.168.5 ...
- UVA 11796
题意: 有两个狗, 按照 多边形跑,不知道两条狗的速度,但是狗是同时出发,同时到达终点的 输出两条狗的 最大相距距离 - 最小相距距离: 思路 : 用物理的相对运动来计算, 每次只计算 两条狗的直线 ...
- Goland could not launch process: decoding dwarf section info at offset 0x0: too short 解决方案
1 前言 Goland版本:2018.1.5 Go:1.11.2 此版本调试不了bug,而且有时会显示could not launch process: decoding dwarf section ...
- Ajax 执行顺序
jQuery中各个事件执行顺序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success 5.ajaxSuccess(全局事件) 6.e ...
- 37)django-单例模式
一:单例模式 单例模式,是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类. 通过单例模式可以保证系统中一个类只有一个实例.即一个类只有一个对象实例. 常用例子:数据库连接串,只保 ...
- 如何取出DataTable中某几个字段(列名)组合新表
在偶不知道第二种方法之前.偶费了好大劲才把这个问题解决.下面把这两个方法都帖出来,请大家批评指正.或有更好的办法也帖出来,一起交流 第一种方法: string sql = &qu ...
- Synchronizing timer
http://blog.csdn.net/zjq001x/article/details/53107159 集合点: 简单来理解一下,虽然我们的“性能测试”理解为“多用户并发测试”,但真正的并发是不存 ...