数据分析系列 之python中字典内容介绍

数据分析系列 之python中字典内容介绍

1 介绍
字典是另一种可变容器模型,且可存储任意类型对象;
字典的每个键值对用冒号分割,每个键值对之间用逗号分割,用花括号 { }表示,字典数据的存储是无序的,可以通过访问key来得到value;
key一般是唯一的,value不需要唯一;
value可以取任何数据类型,但key必须是不可变的,如字符串,数字或元组,这里列表不可以做key;
类似于java语言中的map类型。

2 创建字典和访问字典里的值

dict = {‘Name’: ‘ABC’, ‘Age’: 20, ‘Class’: ‘DEF’}
print (dict[‘Name’])
输出:ABC
print (dict[‘Age’])
输出:20

3 修改字典
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

dict = {‘Name’: ‘ABC’, ‘Age’: 20, ‘Class’: ‘DEF’}
dict[‘Age’] = 25 #更新
dict[‘Index’] = “HIJ” #添加
print (dict[‘Age’])
输出:25
print (dict[‘Index’])
输出:HIJ

4 删除字典元素
能删单一的元素也能清空字典,清空只需一项操作。显示删除一个字典用del命令,如下实例:

dict = {‘Name’: ‘ABC’, ‘Age’: 20, ‘Class’: ‘DEF’}
del dict[‘Name’] #删除键是’Name’的条目
dict.clear() #清空字典所有条目
del dict #删除字典

5 字典内置函数&方法
常用函数:
cmp(dict1, dict2) 比较两个字典元素。
len(dict) 计算字典元素个数,即键的总数。
str(dict) 输出字典可打印的字符串表示。如:

dict = {‘Name’: ‘ABC’, ‘Age’: 20, ‘Class’: ‘DEF’, ‘Index’: ‘HIJ’}
str(dict)
输出:”{‘Name’: ‘ABC’, ‘Age’: 25, ‘Class’: ‘DEF’, ‘Index’: ‘HIJ’}”

type(dict) 返回输入的变量类型,如果变量是字典就返回字典类型。

dict = {‘Name’: ‘ABC’, ‘Age’: 20, ‘Class’: ‘DEF’, ‘Index’: ‘HIJ’}
type(dict)
输出:<class ‘dict’>

常用方法:
dict.clear() 删除字典内所有元素
dict.copy() 返回一个字典的浅复制
dict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值
dict.has_key(key) 如果键在字典dict里返回true,否则返回false
dict.items() 以列表返回可遍历的(键, 值) 元组数组
dict.keys() 以列表返回一个字典所有的键
dict.values() 以列表返回字典中的所有值
pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值
popitem() 返回并删除字典中的*后一对键和值
其它补充:
key in dictname 查看某个键是否在字典中,存在返回True,不存在返回False

dict = {‘Name’: ‘ABC’, ‘Age’: 20, ‘Class’: ‘DEF’, ‘Index’: ‘HIJ’}
‘Name’ in dict
输出:True
#这里Name的引号一定要加上
Name in dict
输出:NameError: name ‘Name’ is not defined

服务器千兆网卡和万兆网卡有什么区别

服务器网卡是一种专门用于网络中的服务器上的网卡,是服务器或者工作站连接交换机的关键设备,服务器网卡会根据自带的控制芯片来帮助服务器的CPU处理数据,具有强大的功能。服务器根据需求配置千兆网卡或者万兆网卡,那么服务器千兆网卡和万兆网卡有什么区别呢?怎么区别这两种网卡呢?

千兆网卡的传输速率是1000Mbps(千兆),而万兆网卡的传输速率是10Gbps(万兆),万兆网卡和千兆网卡的*大区别就是在于它网口的传输速率是10Gbps(万兆)的,它是千兆网卡传输速率的十倍。

目前市场上主流的万兆网卡主要有Intel 82599ES芯片、Intel 82599EN芯片、Intel X540芯片、Intel XL710BM1芯片、Intel XL710BM2芯片的网卡,而千兆网卡主要是有Intel I350芯片、Intel 82571芯片、Intel 82576芯片等网卡。

目前主流的服务器网卡主要有1000Mbps千兆网卡、10Gbps万兆网卡、40G网卡以及100G网卡四种,局域网如果对数据传输的速度要求很高时,我们还必须选择合适带宽的网卡。因此,大家在选用时一定要注意使用环境,比如服务器端网卡由于技术先进,价钱会贵很多,为了减少住CPU占用率,服务器英选择带有自动处理功能的处理器,还应该让服务器网卡实现高级容错、带宽汇聚等功能,这样服务器就可以通过增插几块网卡提高系统的可靠性。

服务器万兆网卡推荐:

飞迈瑞克FM-JL82599ES-F2是一款服务器专用万兆网卡,它具有2个10G的 LC光纤接口,可支持20Gbps的传输带宽,同时支持PCI-E X8 标准插槽,保证了网卡高效、稳定的工作。另外网卡还支持VLAN、QOS策略、流量控制等功能,适合中大型局域网的应用。

服务器千兆网卡推荐:

飞迈瑞克FM-NHI350AM2-F2是一款服务器专用千兆网卡,它具有2个1000M的 LC光纤接口,可支持2000Mbs的传输带宽,同时支持PCI-E X4 标准插槽,保证了网卡高效、稳定的工作。另外网卡还支持VLAN、QOS策略、流量控制等功能,适合中大型局域网的应用。

选择SaaS应用之间,需要考虑哪些问题

SaaS(软件即是服务)是*近软件界讨论的*热烈话题之一。它可能为您省钱并实现更快的软件部署,但它并不总是一项不用劳神的技术。下面便是您在选择SaaS应用之前所必须考虑的12个问题。

1、承载关键任务?

不要把SaaS用在任何您的公司做生意不能缺少的应用上,除非您确信SaaS服务供应商可以比您更好地去支持它。咨询师AmyWohl说:“当您的整个公司在所有时间都依靠某种应用来成功经营,并且您感到除非您亲自控制它否则无法得到所需要的可靠性或性能时,就不应当将SaaS用于这种应用。”

她说,例如股票交易公司应当把交易软件保留在公司内部。一家大型公司可能拥有100种以上运营关键业务必不可少的应用。但事实上,许多客户显然信任SaaS厂商支持关键任务应用的能力。有资料显示,49%的企业计划部署关键任务的SaaS应用。

2、按使用付费吗?

您需要提防SaaS的价格陷阱。我们都知道软件厂商醉心于提前支付的许可证付费。SaaS的主要卖点是按月付费,迫使厂商不断改进服务,使客户满意。但是,咨询机构THINKstrategies的负责人JeffreyKaplan说,多数SaaS厂商实际上把这种模型颠倒过来,强迫客户提前支付长达一年的费用。

技术博客的作者KenBoasso写道:“传统软件客户讨厌在享受到应用的好处之前交出自己的钱。当SaaS厂商像传统的ISV那样要求提前支付年费,甚至开出价值不菲的‘时间价值’折扣时,客户需要知道SaaS与传统软件有什么不同,是否存在什么不利之处。”

3、数据真的高枕无忧?

在部署SaaS服务时,请确保服务商具有在发生灾难时或厂商退出市场时备份数据的可靠方式。如果涉及到敏感业务数据,您需要厂商拥有备份和恢复的应急计划,以及包含对丢失或泄露数据进行严厉惩罚条款的服务协议。

Wohl指出,客户*好找到由第三方保管应用以保证应用备份的方式。SaugatuckTechnology公司的总裁兼CEOWilliamMcNee说:“客户实际上必须了解支持交付SaaS解决方案的SaaS基础设施。”

4、SaaS实际上改进了安全性?

SaaS让企业能够在不暴露内部网络的情况下与合作伙伴展开合作。Wohl说:“很多公司不希望合作伙伴的人员在他们的防火墙之内四处游荡。”Kaplan说,另一个附加的好处是SaaS可以为企业提供各种政府法规要求的场外数据备份能力。

Kaplan说:“我们必须在场外备份我们的数据,以遵从相关法规的要求。那些提供场外托管服务的SaaS产品很好地解决了这个问题。”

5、SaaS应用在SOA上运行得更好?

SOA及其对Web界面和互操作性的重点强调,将为您提供一种利用SaaS所独有优势的IT基础设施。有专家指出,SaaS能够利用很多下一代技术。其中就包括SOA,在涉及到与企业应用集成的问题时,SOA架构将给用户带来巨大的好处。而那些沿着SOA方向发展的企业会发现,基于SaaS的应用集成将比传统的应用集成要容易得多。

6、单点登录能力?

寻找提供授权用户使用多种计算资源的单点登录能力的厂商咨询师DavidLinthicum指出:“对于还包含第三方添加件(例如背景检查SaaS应用和报告SaaS应用)的更复杂的SaaS系统而言,单点登录能力尤为重要。”

7、SaaS应用集成受限?

Linthicum说,SaaS厂商一直想方设法找到将他们的应用与其他厂商开发的应用集成起来的好办法。他说:“随着更多的企业将自己的应用迁移到SaaS平台,对SaaS到SaaS集成的需要越来越大。不幸的是,当客户要求这种集成时,许多SaaS供应商并不能给出答案。除了雇佣一群开发人员,并寄希望得到*好的结果,用户别无它法。”他还指出,这种作法常常带来一种“缺少灵活性、昂贵并且蠢笨的应用架构。”

8、用户能够得到多少东西?

一个对于一小部分用户实施效果很好的SaaS应用可能并不适于推广到整个企业。Wohl说:“您必须了解‘我能够合理地预期从使用这种应用中得到什么?它是某种只能局限应用在一个固定区域的东西吗?’”

如果超出一个部门使用某种SaaS应用,企业需要为其设定边界。McKinseyQuarterly在一篇有关SaaS的报告中指出:“将需要显式机制来决定当两个部门希望使用SaaS软件,但只有一个部门需要对软件进行修改时,由谁来决定定制软件的水平,以及谁为此服务买单。”

9、SaaS用户谨防过度炒作?

SaaS目前是一项非常流行的应用,因此几乎每一家厂商都希望从这个市场分得一杯羹。可惜的是,许多厂商只是简单地把已有应用放在Web上,没有做出任何易于使用的改进。

Kaplan说:“一些软件厂商玷污了SaaS一词。他们实际上做的是提供同样的老应用,应用存在的限制没有一点改变。SaaS应用是为运行在Web上而开发的,因此它们应该具备易于访问的特性。它们应该具备直观的操作界面。*重要的是,它们应该具有让许多用户利用这种应用开展实时协作的能力。”

10、谁对SaaS服务负责?

在签署SaaS服务协议前,请务必了解应用是通过Web“自我支持的”,还是厂商为客户提供活生生的客户服务代表。Kaplan说:“一些更简单、直观的应用,可能会提供相对较少的技术支持服务。与之相对应,客户所获得的服务响应时间就会相对滞后。”

11、可以摆脱内部支持吗?

SaaS费用的合理性常常在于厂商承诺提供比客户在使用传统软件时能够享受到的更好的服务。但是,如果要享受到改进服务的全部好处,IT部门必须与服务水平协议相适应,对业务用户和他们自己的客户做出内部承诺。有专家指出,SaaS能够利用很多下一代技术。其中就包括SOA,在涉及到与企业应用集成的问题时,SOA架构将给用户带来巨大的好处。而那些沿着SOA方向发展的企业会发现,基于SaaS的应用集成将比传统的应用集成要容易得多。

McKinsey说:“例如,如果SaaS厂商保证发票处理速度的服务水平,IT部门必须确保采购部门支持这种功能的基础设施系统的可用性。”

12、规模有多重要?

SaaS常常被宣传为适用于需要控制成本和缺少大量IT人员的中小企业的优秀解决方案。可是许多支持者说任何规模的公司都可以从SaaS应用中获益。Wohl说:“当您把软件部署在互联网上时,谁使用它取决于软件在做什么、它有运行效果多好以及它的费用。企业的规模实际上并没有进入这个公式。”

但是,购买SaaS服务的中小企业实际上面临着与大型企业完全不同的决策过程,他们往往更青睐于应用套件,而不是单个工具的购买决策。McNee表示:“以On-demandERP/CRM服务供应商NetSuite为代表的许多SaaS服务供应商都坚信,中小企业客户面向套件的方式是很有道理的。中小企业客户没有很多的IT人员,他们没有很多的时间和资金来集成所有这些应用。”

有跨境的业务,服务器怎么部署?

服务器和数据在国内,海外用户访问很慢,考虑在海外部署服务器,但是数据怎么处理呢,直接连接到国内的 mysql 服务器会不会也很慢?

第 1 条附言 · 12 天前
我有个想法,可能不太成熟。
就算光纤直连,理论上中国到美国,光绕地球跑个来回还要 100ms 左右,这个是物理规律。
100ms 对于 mysql 每次访问的延迟是不可接受的,不知道很多跨海的公司是怎么解决的。
472 次点击 ∙ 1 人收藏 加入收藏 Tweet 忽略主题 感谢
服务器 MySQL 部署 海外8 条回复 • 2021-04-15 15:33:14 +08:00
cccp2020 Reply 1
cccp2020 13 天前
阿里云有个全球加速服务,可以试试这个呢

/t/748215 看看能领券不
redtea Reply 2
redtea 13 天前
据说要先解决法律上的问题
beichenhpy Reply 3
beichenhpy 13 天前
都放在 aws 上呗
q428202849 Reply 4
q428202849 13 天前
用香港双向 CN2 gia 三网直连线路的服务器吧
香港和国内距离近 优化过后的线路基本和国内差不多 海外用户访问也不会卡
如果不计成本就用 iplc 国际专线吧
mygreens Reply 5
mygreens 12 天前
@q428202849 感谢 我看看
q428202849 Reply 6
q428202849 12 天前
@mygreens 如果需要服务器 可以联系我哈 自营机房~~.
blening Reply 7
blening 7 天前
可以找我做 iplc
nakes Reply 8
nakes 4 天前
国外也部署一份然后数据库做数据同步?海内海外 dns 解析不同服务器 IP ?

iOS 11降系统到iOS 10,苹果刷机图文教程

准备工作
1,官方渠道关闭后,只能通过刷机的方式降系统,把需要备份的数据备份一下(一般只有照片,通讯录,备忘录)
2,iTunes 软件一个
3,iOS 系统一个,去网上下载一个
开始啦
1,先按住手机的 【电源键】3秒,然后马上按住 【Home键】,两个键一起按,待屏幕亮了以后,松开电源键。直到 【iTunes】有弹窗提示,便可松开!

这里可能有两种说法,一个是普通恢复模式,一个是DFU模式,其实本人亲测,都一样!

%title插图%num
2,点击好,然后出现以下页面

%title插图%num

注意:
Mac 电脑:这是时候选择是要按住【option】后,点击【恢复iPhone】按钮。一定要按住后,再点击,不然他会更新到*新的iOS系统
window电脑,把【option】换成【shift】键就可以了

3,然后出现iOS系统选择页面

%title插图%num

点击确定或者打开

%title插图%num

4,*后点击恢复,然后需要做的就是等待了!

%title插图%num

期间可能有失败的情况,不用担心。【强制关机。从头再来】

苹果手机10秒解除锁屏_苹果密码忘了不想刷机怎么办_苹果手机10秒解除锁屏

很多用苹果小伙伴在手机的使用过程中都会遇到一个问题——忘记锁屏密码。但是当你自己手机中的重要内容没有备份的时候又不能选择刷机,应该怎么做呢?小编这里将会有你想要的答案哦!

1.利用“查找iPhone”抹掉设备密码

不过这个前提是开启了查找iPhone这个功能,才可以使用iCloud来抹掉和恢复设备。

首先需要另外一部苹果设备,然后再打开查找我的iPhone这个APP,或者是电脑打开iCloud官网,再输入Apple ID账号和密码,在下方的列表中看到你的手机,点击你的手机,选择下方的操作,你就可以看到下面有播放声音、丢失模式和抹掉iPhone这三个选项。

播放铃声:丢失暂时找不到了可以点击这个,会响铃

丢失模式:打开这个功能,对方打开就会显示手机已丢失,请与我联系

抹掉iPhone:手机会变成新手机

这种方法可以清除锁屏密码,开机之后再输入苹果ID账号密码,*后通过iCloud、itunes、安卓手机备份恢复就可以了,不过没有备份的机友们数据就会清空了。

2. 利用恢复模式抹掉设备密码

这个方法适合没有设置“查找iPhone”功能的机友们,首先将忘记密码的iPhone与iTunes通过电脑连接,然后将iPhone强制重启并进入“恢复模式”。

iPhone6s以及更早的机型同时按住关机键+Home键,不要放手,直到出现数据线连接iTunes的图标界面再放手。

iPhone 7系列,同时按住音量-键和电源键,直到看到恢复屏幕模式。

iPhone 8、iPhone 8 plus和iPhone X及*新机型,按音量+键松开手,再按音量-键松手,然后长按开关机键,直到看到恢复屏幕模式。

iTunes上看到“恢复”或“更新”选择时,选择“恢复”,手机重置后,可以使用iCloud、iTunes恢复备份或设置为新的iPhone。

*重要的事情还是尽量定期备份iPhone的数据资料,否则即便你的iPhone设备可以恢复解锁,但数据资料是基本无法恢复的,同时Apple ID一定要保存好,如果这一重要信息丢失,那么你的iPhone可能也就彻底无可救药了。

linux 下查看机器配置命令

cat /proc/ cpuinfo

或者vim /proc/ cpuinfo

查看系统信息

cat /proc/ cpuinfo – CPU (i.e. vendor, Mhz, flags like mmx)

cat /proc/interrupts – 中断

cat /proc/ioports – 设备IO端口

cat /proc/meminfo – 内存信息(i.e. mem used, free, swap size)

cat /proc/partitions – 所有设备的所有分区

cat /proc/pci – PCI设备的信息

cat /proc/swaps – 所有Swap分区的信息

cat /proc/version – Linux的版本号 相当于 uname -r

uname -a – 看系统内核等信息

查看linux系统版本方法:

cat /etc/redhat-release

cat /etc/issue

cat /proc/version

查看磁盘空间大小:

df -m

cat /etc/issue 查看操作系统版本

cat /etc/inittab 查看启动项

cat /proc/cpuinfo 查看cpu信息

uname -a 系统版本

df -h 查硬盘

cat /etc/passwd 查看所有用户的列表

cat /etc/group 查看用户组

du -sh 查看当前文件夹大小

这里linux下使用dmidecode查看硬件信息

dmidecode is a tool for dumping a computer””s DMI (some say SMBIOS) table contents in a human-readable format. This table contains a description of the system””s hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision. Thanks to this table, you can retrieve this information without having to probe for the actual hardware. While this is a good point in terms of report speed and safeness, this also makes the presented information possibly unreliable.

dmidecode可以全面的显示bios、cpu、内存等硬件信息。

查看主板的序列号

dmidecode | grep “Serial Number”

显示物理内存块数

dmidecode |grep -A16 “Memory Device$”

显示CPU信息

dmidecode |grep -A42 “Processor”|more

另外:

grep -An (A和n之间也可以有空格) 输出包含指定字符串的行及该行后续的n行

/usr/sbin/dmidecode | grep “Serial Number”可以读出计算机的标示号,当然这只对正规品牌的机器有效,如DELL、HP之类,取出的值和机器上贴的值是对应的,而类似清华同方之流的兼容机,基本上读不出任何有意义的数据。

Linux如何查看机器的硬件配置信息

主要是看两个文件: /proc/meminfo   和 /proc/cpuinfo

cpu主要关注如下字段:%title插图%num

1. cpu核心数计算:

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数
# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

# 查看物理CPU个数
cat /proc/cpuinfo| grep “physical id”| sort| uniq| wc -l
[root@web ~]# cat /proc/cpuinfo| grep “physical id”| sort| uniq| wc -l
2

# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep “cpu cores”| uniq
[root@web ~]# cat /proc/cpuinfo| grep “cpu cores”| uniq #uniq:去除重复行

cpu cores : 8
[root@web ~]#

# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep “processor”| wc -l
[root@web ~]# cat /proc/cpuinfo| grep “processor”| wc -l
32
[root@web ~]#

2. cpu型号查看:model name

# 查看CPU信息(型号)
cat /proc/cpuinfo | grep “name” | cut -f2 -d: | uniq -c
[root@web ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c #uniq:去除重复行 -c参数:在输出行前面加上每行在输入文件中出现的次数
32 Intel(R) Xeon(R) CPU E5-2680 0 @ 2.70GHz
3、查看硬盘型号
# more /proc/scsi/scsi |grep -i model
# cat /proc/scsi/scsi |grep -i model
4. 显示有几块物理网卡

# lspci | grep Eth | wc -l
5、显示主板序列号
# dmidecode | grep ‘Serial Number’

Linux服务器查看配置(CPU、内存、硬盘)

Linux服务器查看配置(CPU、内存、硬盘)
1 逻辑CPU个数 |cat /proc/cpu/cpuinfo 管道符 grep “processor”
行数太多查看方法 |cat /proc/cpuinfo 管道符 grep “processor” 管道符 wc -l
2 查看服务器内存大小 | cat /proc/meminfo 管道符 grep MemTotal
3 查看服务器硬盘大小|df -hl
备注:管道符为:|
cat /proc/cpuinfo | grep “processor”
cat /proc/cpuinfo |grep “processor” |wc -l
cat /proc/meminfo |grep MemTotal
df -hl

WEB服务器,容器及tomcat之间的关系

1、什么是WEB服务器

Web服务器是指能够为发出请求的浏览器提供文档的程序。服务器是一种被动程序,只有浏览器发出请求的时候才会响应。应用层使用的是HTTP协议。

2.容器

容器管理组件的生命周期,组件包括servlet,jsp等

%title插图%num

3.tomcat到底是什么

Tomcat是Java Servlet,JavaServer Pages,Java Expression Language和Java WebSocket(Java EE)技术的开源实现。

因为可以通过HTTP提供HTML页面等静态内容的请求访问,所以是一个WEB服务器;

因为实现了Servlet规范,所以也是一个Servlet容器,可以运行Servlet程序;

因为可以通过Servlet容器,调用Servlet处理动态请求,所以也是一个应用服务器;

所以,可以说Tomcat是Java(EE) WEB应用服务器。

%title插图%num