Python基础 day2

Python基础

 

一、Python的数据类型

1、int(整型)

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647,而.在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

 

2、long(长整型)

为什么会有这个概念呢?

因为在Python2.2起,如果放置在内存里的数特别大发生溢出,Python就会自动将整型数据转换为长整型,但是现在,在Python3里就不存在长整型这么一说了,同意都是整型。

 

3、float(浮点型)

简单理解就是带有小数的数字

 

4、complex(复数)

复数是由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y呢是复数的虚数部分,这里的x和y都是实数。

 

5、布尔值(0或1)

就是真和假。

 

6、查看数据类型(type)

复制代码
 1 >>> type(1) 2 <class 'int'> 3 >>> type(1.2) 4 <class 'float'> 5 >>> type(jixuege) 6 Traceback (most recent call last): 7   File "<stdin>", line 1, in <module> 8 NameError: name 'jixuege' is not defined9 
10 上面报错原因就是没有用双引号引起来,他就不是字符串,而是认为是一个变量。 
11 >>> type("jixuege") 
12 <class 'str'>
复制代码

 

二、for和while循环

这里呢就需要涉及到break和continue的区别了。

如何理解呢?

break: 只能跳出当前循环,当前这一套循环就结束了。

continue: 跳出当次循环,然后呢还会去继续下一次别的循环。

举个栗子:

复制代码
 1 #!/usr/bin/env python2 # -*- coding: utf-8 -*-3 #Author: Leon xie4 5 6 for n in range(4):7     print(n)8     for j in range(3):9         if  j <2:
10         #如果j小于2就跳出当次循环,继续一下次循环
11             continue
12         print(n,j)
复制代码
打印结果如下:
复制代码
0
0 2
1
1 2
2
2 2
3
3 2
复制代码

 

说明:

在第二次的if判断中,我执行条件,如果j小于2就跳出当次循环,继续一下次循环

下面我们就看看break的使用

同样的代码,咋们接着看

复制代码
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#Author: Leon xiefor n in range(4):print(n)breakfor j in range(3):if  j <2:#如果j小于2就跳出当次循环,继续一下次循环continueprint(n,j)
复制代码
打印结果如下:

0

小结:
个人来说明一下,二者的区别,continue呢用于我有很多次循环,然后呢,我不希望哪次循环执行下面的动作,就可以了使用continue ,而break呢就是我这次循环了以后我想跳出去不在循环,或者呢就是我写了一段代码,我想跳出去看看代码是否能执行,就可以用break呢。
 

三、Python的数据类型

 
1、整型int
可以直接理解为整数
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647,在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
 
2、浮点型float
可以直接理解为带小数的数字。
 
3、复数complex

复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。

4、布尔值(0或1)

表示真或者假

5、查看数据类型

使用type即可。

复制代码
>>> type("xiedi")
<class 'str'>
>>> type("2")
<class 'str'>
>>> type(2.2)
<class 'float'>
>>> type(2)
<class 'int'>
>>>
复制代码

 

这里有个地方需要注意,就是数字不需要加引号,如果加了就是字符串。

 

四、Python字符串基本操作

1、判断是不是合法的标识符isidentifier

name="ABC"
print(name.isidentifier())
打印结果
True
2、首字母大写capitalize
name= 'abc'
print(name.capitalize())
打印结果
Abc
 
3、计数count
name= 'abc'
print(name.count("a"))
打印结果
1
 
4、位于中心,用-来补充center
name= 'abc'
print(name.center(50,"-"))
打印结果
-----------------------abc------------------------
 
5、判断是否以c结尾endswith
name= 'abc'
print(name.endswith("c"))
打印结果
True
 
6、把回车换成空格expandtabs
name = "a\tbc"
print(name.expandtabs(tabsize=10))
打印结果
a         bc
 
7、查看某字符下标find
name= 'abc'
print(name.find('c'))
打印结果
2
 
8、将字符小写lower
print("XIEDI".lower())
打印结果
xiedi
 
9、将字符大写upper
print("xiedi".upper())
XIEDI

 

五、Python列表基本操作

记住一句话,叫做顾首不顾尾

首先我们来定义一个列表

name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]

接下来,我们就对这个列表来进行一系列的操作

 

1、切片

取值,取第一个和第二个

print(name[0],name[1])
打印结果
jixuege dajiba

说明:

上面的0和1指的是小标,从左到右顺序就是从0开始一直到4

 

打印一个区间

name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]print(name[:2])
打印结果
['jixuege', 'dajiba']
 
打印最后一个
name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
print(name[-1])
打印结果
youtianai
 
2、追加
比如说我想追加一个人进去
复制代码
name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
name.append("xiha")
print(name)
打印结果['jixuege', 'xitong', 'dajiba', 'youhua', 'boduoye', 'cangjinkong', 'youtianai', 'xiha']
复制代码

这个会追加到末尾

还有一种就是插入insert

复制代码
name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]name.insert(2,"youhua")
print(name)
打印结果
['jixuege', 'dajiba', 'youhua', 'boduoye', 'cangjinkong', 'youtianai']
复制代码
 

3、修改

直接修改即可

name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
name[2]="wuming"
print(name)
打印结果
['jixuege', 'dajiba', 'wuming', 'cangjinkong', 'youtianai']

 

4、删除

直接清空

name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
name.clear()
print(name)
打印结果
[]
 
删除指定元素
复制代码
name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
name.remove("jixuege")
print(name)
打印结果['dajiba', 'boduoye', 'cangjinkong', 'youtianai']
复制代码

 

删除指定下标

name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
del name[2]
print(name)
打印结果
['jixuege', 'dajiba', 'cangjinkong', 'youtianai']
 
不指定下标删除最后一个
name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
name.pop()
print(name)
打印结果
['jixuege', 'dajiba', 'boduoye', 'cangjinkong']
 
指定下标
name = ["jixuege","dajiba","boduoye","cangjinkong","youtianai"]
name.pop(1)
print(name)
打印结果
['jixuege', 'boduoye', 'cangjinkong', 'youtianai']

 

六、蛋疼的购物车程序练习

要求:

1、用户输入工资,打印出商品的列表

2、用户根据编号来进行购买商品

3、用户选择商品之后,先检测额度是否够用,直接扣款和温馨提示余额不足

4、可以随时退出,退出并打印出已购商品列表和余额。

转载于:https://www.cnblogs.com/Jo-king/p/5986749.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/394855.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gym101808 E

提问&#xff1a;我是什么品种的傻逼&#xff1f; 哇看到积水兴高采烈啊。然后就走上了一条不归路。 为什么不归呢&#xff0c;因为我这个法子就是不对的&#xff0c;我总是在想很多很多点围成的一块区域&#xff0c;然后求这一块区域的面积。 然后尝试了各种扫描方法&#xff…

【站点部署】解析二级域名并部署站点

开设原因 : 近期在学健身, 上一份工作辞掉后, 在北京找了家私人教练培训学校, 进行为期四个月的健身培训, 这个比在健身房找私教专业多了, 被健身房私人教练坑慘了, 说多了都是泪, 已经培训了将近一个半月, 学习了基础私教, 普拉提, 这在学习康复课程, 之后还有功能性 和 综合格…

恶意软件伪装“正规军”,撕开Booster Cleaner“画皮”下的真相

经常使用手机浏览器阅读小说的用户都知道&#xff0c;在浏览器页面经常会出现一些推广游戏应用、手机清理应用等应用的弹窗广告。有时出于方便&#xff0c;我们也会选择直接点开这些弹窗广告进行应用下载。但这种行为并不安全&#xff0c;部分恶意应用会先伪装成“正规军”诱导…

python初学者代码示例_python基础示例

7、写代码 &#xff08;1&#xff09;实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!_name "seven"_pwd "123"name input("username:").strip() pwd input("password:").strip()if name _…

Lucene 基础理论 (zhuan)

http://www.blogjava.net/hoojo/archive/2012/09/06/387140.html**************************************** 1. 全文检索系统与Lucene简介 1.1 什么是全文检索与全文检索系统 全文检索是指计算机索引程序通过扫描文章中的每一个词&#xff0c;对每一个词建立一个索引&#xff0…

div固定大小文字溢出自动缩小_【高并发】高并发环境下如何防止Tomcat内存溢出?看完我懂了!!

写在前面随着系统并发量越来越高&#xff0c;Tomcat所占用的内存就会越来越大&#xff0c;如果对Tomcat的内存管理不当&#xff0c;则可能会引发Tomcat内存溢出的问题&#xff0c;那么&#xff0c;如何防止Tomcat内存溢出呢&#xff1f;我们今天就来一起探讨下这个问题。防止To…

linux下的ssh端口号修改,如何在 Linux 中更改 SSH 端口

默认情况下&#xff0c; SSH 侦听端口 22 。 更改默认 SSH 端口可以降低被自动攻击的风险&#xff0c;从而为服务器增加额外的安全层。和更改默认端口相比&#xff0c;将防火墙配置为仅允许从特定主机访问端口 22 则更加简单和安全。本教程介绍如何更改 Linux 中的默认 SSH 端口…

linux gnome启动命令,如何在Gnome Shell上自动启动程序

登录Gnome Shell时自动打开应用程序是提前设置工作区的好方法。在Gnome Shell上自动启动程序的最简单方法是使用Tweaks应用程序。在本指南中&#xff0c;我们将介绍如何安装Gnome Tweaks应用程序以轻松配置自动程序启动。让我们开始吧&#xff01;通过GUI自动启动程序默认情况下…

php 动态加载html内容_ThinkPHP5.1+Swoole实现的开源内容管理框架

一款支持Swoole的开源内容管理框架&#xff0c;基于ThinkPHP5.1开发&#xff0c;同时支持PHP-FPM和Swoole双模式&#xff0c;让WEB开发更快!主要特性更改框架协议为MIT,让你更自由地飞基于ThinkPHP 5.1重构&#xff0c;但核心代码兼容5.0版本&#xff0c;保证老用户最小升级成本…

SM4密码算法(附源码)

SM4是我们自己国家的一个分组密码算法&#xff0c;是国家密码管理局于2012年发布的。网址戳→_→&#xff1a;http://www.cnnic.NET.cn/jscx/mixbz/sm4/具体的密码标准和算法官方有非常详尽的PDF文档以供查阅&#xff0c;戳→_→&#xff1a;http://218.241.108.63/wiki/images…

linux隐藏apache信息,Apache防盗链和隐藏版本信息-linux-centos运维

有需要服务器方面的需求和咨询&#xff0c;可以联系博主 QQ 7271895一、防盗链二、隐藏版本信息实验要求&#xff1a;三台虚拟机分别是&#xff1a;linux和两台windows虚拟机&#xff0c;linux虚拟机为服务器&#xff0c;Windows7-1为客户端&#xff0c;Windows7-2为盗链端。实…

led显示屏控制卡接线图解_Led显示屏出现花屏是什么原因

Led显示屏已经成为现在人们推广的一种形式了&#xff0c;很多地方都是离不开led显示屏的使用的。由于Led显示屏的五彩绚烂&#xff0c;也更加吸引人们的眼球。不过在使用过程中&#xff0c;也会遇到Led显示屏花屏的情况。那么&#xff0c;Led显示屏出现花屏是什么原因呢?下面伟…

Android OkHttp完全解析 是时候来了解OkHttp了

Android OkHttp完全解析 是时候来了解OkHttp了 标签&#xff1a; AndroidOkHttp2015-08-24 15:36 316254人阅读 评论(306) 收藏 举报分类&#xff1a;【android 进阶之路】&#xff08;67&#xff09; 版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载…

c盘users的用户名怎么改_做完这几个操作,我从C盘中清理了30G垃圾文件

信息技术土著&#xff0c;一个有营养的公众号有个存在学说&#xff0c;比说一个人的身体某部位&#xff0c;如果不痛&#xff0c;你很少感觉他是存在的&#xff0c;但是某一天&#xff0c;因为某种原因&#xff0c;它突然很痛了&#xff0c;然后你每时每刻都会感觉到它的存在了…

MongoDB在Linux下常用优化设置

MongoDB在Linux下常用优化设置以下是一些MongoDB推荐的常用优化设置。在生产环境下选取合适的参数值&#xff0c;例如预读值和默认文件描述符数目等&#xff0c;会对系统性能有很大的影响。1、关闭数据库文件的 atime禁止系统对文件的访问时间更新会有效提高文件读取的性能。这…

ipconfig没有显示ip_TCP/IP 协议修复网络问题

nternet 在 TCP/IP 协议上工作&#xff0c;如果 TCP/IP 协议堆栈在 Windows 或任何其他操作系统(例如 Linux 或 MacOS)中无法正常工作&#xff0c;则您的 Internet 连接会出现问题。解决 Internet 问题的最佳方法是重置 TCP/IP 堆栈设置。如何在 Windows 中重置 TCP/IP 堆栈&am…

mysql-linux64,Linux64下mysql安装和开辟

1.1地址&#xff1a;http://www.mysql.com/downloads/mysql/5.5.html&#xff03;downloads版本&#xff1a;5.1.68平台&#xff1a;linux generalGeneric Linux (glibc 2.3) (x86&#xff0c; 64-bit)&#xff0c; RPM Package版本&#xff1a;MySQL Server(MySQL-server-5.1.…

python截图识别文字_用百度ocr+微信截图实现文字识别

作用&#xff1a;将图片中的文字识别出来 一、调用微信截图dll控件 将微信截图插件复制到项目文件&#xff0c;使用ctypes加载&#xff08;胶水语言就是给力&#xff09; def capture(): try: dll ctypes.cdll.LoadLibrary(PrScrn.dll) except Exception: print("Dll loa…

【用jQuery来判断浏览器的类型】及【javascript获取用户ip地址】

用jQuery来判断浏览器的类型,主要是使用$.browser这个工具类,使用方法: $.browser.[浏览器关键字] //谷歌浏览器、360浏览器等其他一些浏览器&#xff0c;没有专门的判断 function appInfo() {var bro $.browser;var binfo "";if (bro.msie) {binfo "Micr…

linux mv 递归拷贝,奇技淫巧 - 给Linux中的cp和mv命令中添加进度条的高级拷贝

GNU cp和GNU mv命令用于在GNU/Linux操作系统中复制和移动文件和目录。这两个命令缺少的一个特性是它们不显示任何进度条。如果复制一个大文件或目录&#xff0c;您就不知道完成复制过程需要多长时间&#xff0c;也不知道复制的数据所占的百分比。还有您将看不到当前正在复制哪个…