python基础知识点整理(1)

目录

    • 一、变量与数据类型
      • 1、变量
        • ① 变量的命名规则
      • 2、字符串常用的库函数
    • 二、列表
      • 1、列表的基础定义
      • 2、列表常用的库函数
      • 3、for循环与列表
      • 4、列表切片
      • 5、元组
    • 三、if语句
    • 四、字典
      • 1、字典定义
      • 2、对字典的操作


一、变量与数据类型


1、变量

① 变量的命名规则

  1. 只能包含数字、字母以及下划线。且只能以字母与下划线开头,不能以数字开头。
  2. 变量名称不能包含空格,可以以下划线分隔单词。
  3. 不能以python中的关键字和函数名作为变量名
  4. 变量名应该简洁而又富有描述性

注:python中的变量不需要声明定义函数类型,只需要直接写出变量名并赋值。例:age = 23 (整型变量)、message = ‘Hellow world!’(字符串)


2、字符串常用的库函数

  1. 变量名.tiltle() :每个单词首字母都改为大写。
  2. 变量名.upper() :大写所有字母
  3. 变量名.lower():小写所有字母
  4. 变量名.rstrip():删除字符串中末尾的空白(暂时删除,并没有改变原本变量)
  5. 变量名.lstrip():删除字符串中开头的空白(暂时删除,并没有改变原本变量)
  6. 变量名.strip():删除字符出开头语结尾的空白(暂时删除,并没有改变原本变量)

二、列表


1、列表的基础定义

  1. 什么是列表?
    由一系列按特定顺序排列的元素组成集合。
  2. 列表的表示:
    用方括号([ ])来表示,并用逗号来分隔其中元素。
  3. 列表的定义与访问方式:
    例:
#定义列表
fruits = ['apple','banana','mango','pear','cherry']
#访问并输出第一个元素
print(fruits[0].title())

注: a. python的列表第一个元素的索引为0,而不是1。
b. python中可以从后方访问元素,如最后一个元素则索引指定为-1,倒数第二个元素索引表示为-2。


2、列表常用的库函数

  1. 列表名.append(添加元素):在函数末尾添加元素。
  2. 列表名.append(添加位置 , 添加元素):在列表中插入元素。
  3. del 列表名[索引]:删除列表元素。
  4. 列表名.pop(索引):删除列表末尾的元素,索引位置为空则表示删除最后一个元素。且我们通常可以用“变量名 = 列表名.pop(索引)”从而获取要删除的元素。
    例:
#定义列表
fruits = ['apple','banana','mango','pear','cherry']
fruit1 = fruits.pop(1)
print(fruits)
print(fruit1)

输出结果为:
[‘apple’,‘mango’,‘pear’,‘cherry’]
banana

  1. 列表名.remove(指定元素):可以在不清楚元素位置但知道元素内容的情况下,直接删除该元素。
  2. 列表名.sort( ):对列表中的元素按ascii从小到大永久性排序(对于中文元素,则是按照unicode排序)
    列表名.sort(recerse = True):与上述排序方式相反。
    sorted(函数名):暂时性传递列表元素,原列表顺序并没有受影响。
  3. 列表名.reverse( ):倒序列表中元素。
  4. len(列表名):查看列表长度。
  5. range():
    例:
#函数格式:range(最小值(可以取),最大值(取不到),递增值)
numbers = list(range(2,20,3))
print(numbers)

运行结果:
[2,5,8,11,14,17]


3、for循环与列表

例:

#建立列表
names = ['alice','eric','david']
#for循环遍历列表
for name in names:print("Hello everyone! My name is" + name.title() + ".\n")
print("END!")

运行结果:
Hello everyone! My name is Alice.

Hello everyone! My name is Eric

Hello everyone! My name is David.

END!

注:

  1. for循环后连续的有缩进的行都会进行循环,直到其后第一个没有缩进的行开始不进入循环。
  2. python中不必要的缩进则会报错,应该缩进的没有缩进也会报错。

4、列表切片

  创立切片则要指定需要的元素的第一个元素的索引和最后一个元素的索引加一。如果没有第一个索引则自动从第一个元素开始,没有最后一个索引则终止与列表末尾。
例1:

#定义列表
fruits = ['apple','banana','mango','pear','cherry']
#打印第2个元素到第4个元素
print(fruits[1:4])
#打印第1个元素到第2个元素
print(fruits[:2])
#打印第3个元素到最后一个元素
print(fruits[2:])
#打印最后三个元素
print(fruits[-3:])

注:应注意:列表名1 = 列表名2 与 列表名1 = 列表名2[ : ]的区别:
例2(1):

my_sports = ['volleyball','basketball','badminton']
frind_sports = my_sports[:]
frind_sports.append('tennis')
my_sports.append('swim')
print(my_sports)
print(frind_sports)

输出结果:
[‘volleyball’,‘basketball’,‘badminton’,‘swim’]
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’]

my_sports = ['volleyball','basketball','badminton']
frind_sports = my_sports
frind_sports.append('tennis')
my_sports.append('swim')
print(my_sports)
print(frind_sports)

输出结果:
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’,‘swim’]
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’,‘swim’]

可看出:当利用切片来给列表相互赋值时买两个列表是相互独立的两个列表。而利用列表名直接进行赋值,实际上得到的还是原来的那个列表,只不过两个列表名都可以表示这个列表,相当于又建立了一个列表名关联到原列表


5、元组

  元组看起来与列表相似,但使用圆括号而不是方括号。
  元组元素可以通过索引来进行访问,但不能利用索引来进行修改元素内容,如果想对元组进行修改,则需要对列表进行重新赋值。
例:

fruits = ('apple','banana','mango','pear','cherry')
#错误修改
fruits[0] = 'durian'
#正确修改
fruits = ('durian','banana','mango','pear','cherry')

  元组元素也可以像列表一样直接运用for循环进行遍历


三、if语句


例1、if常规用法

a = input("请猜测我的年龄:")
a = int(a)
#if语句作为接下来语句是否执行的条件
if a == 19 :print("猜对了!")
elif a > 19print("您猜测的过大!")
elseprint("您猜的过小!")

例2、if语句在列表中的使用

fruits = ['apple','banana','mango','pear','cherry']
fruit = input()
if fruit in fruits:print("该水果本水果店有售!")
if fruit not in fruits:print("该水果本水果店不售或售罄!")

四、字典


1、字典定义

  字典由一系列键-值对组成,每一个键都与一个值相关联。(与键相关的值可以是数字、字符串、列表以及另一个字典)
  键-值对是两个相关联的值。当指定键时,会返回与之相对应的值。键与值之间以冒号隔开。
例:

fruits = {'apple':'red','banana':10,'cherry':15}
print(fruit['apple'])

输出结果
red

2、对字典的操作

  1. 对空字典进行添加
fruits = {}
fruits['apple'] = 'red'
fruits['banana'] = 'yellow'
fruits['cherry'] = 15
print(fruits)

输出结果
{‘apple’:‘red’,‘banana’:‘yellow’,‘cherry’:15}

  1. 修改字典中的值
fruits = {'apple':'red','banana':10,'cherry':15}
fruits['apple'] = 'green'
fruits['cherry'] = fruits['cherry'] + 5
  1. 删除键-值对
fruits = {'apple':'red','banana':10,'cherry':15}
del fruits['apple']
print(fruits)

输出结果:
{‘banana’:10,‘cherry’:15}

  1. 遍历字典中所有键
fruits = {'apple':'red','banana':10,'cherry':15}
#在不需要使用字典中的值时,可以使用方法keys()
for fruit in fruits.key():print(fruit.title())

输出结果:
Apple
Banana
Cherry

  1. 遍历字典中的值
fruits = {'apple':'red','banana':10,'cherry':15}
#在不需要使用字典中的键时,可以使用方法keys()
for fruit in fruits.values():print(fruit.title())
  1. 遍历字典中的键-值对
fruits = {'apple':'red','banana':10,'cherry':15}
for key,value in fruits.items( ) :print("\n Key:" +key)print("Value:" + value)

输出结果:
Key:apple
Value:red

Key:banana
Value:10

Key:cherry
Value:15

  1. 列表中嵌套字典
byd = {'prize' : '15w','clore' : 'red'}
bmw = {'prize' : '40w','clore' : 'white'}
audi = {'prize' : '35w','clore' : 'black'}cars = [byd,bmw,audi]
for car in cars:print(car)

输出结果:
{‘prize’ : ‘15w’,‘clore’ : ‘red’}
{‘prize’ : ‘40w’,‘clore’ : ‘white’}
{‘prize’ : ‘35w’,‘clore’ : ‘black’}

  1. 字典中嵌套列表
favourite_food = {
'Eric' : ['pizza' , 'hamburger'],
'Alice' : ['noodle' , 'potato'],
'Ton' : ['steak'],
}
for name,foods in favourite_food.items():print("\n" + name + "'s favourite food are:")for food in foods :print("\t" + food.title())

输出结果:
Eric’s favourite food are:
Pizza
Hamburger

Alice’s favourite food are:
Noodle
Potato

Ton’s favourite food are:
Steak

  1. 在字典中嵌套字典
cars ={'bmw' : {'prize' : '40w','clore' : 'red',},'audi' : {'prize' : '25w','clore' : 'black',},
}
for car,attributes in cars.items():print('Car:' + car)print("\t价格:" + attributes['prize'] + '\t颜色:' + attributes['clore'])

输出结果:
Car:bmw
价格:40w 颜色:red
Car:audi
价格:25w 颜色:black

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

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

相关文章

sorl6.0+jetty+mysql搭建solr服务

1.下载solr 官网:http://lucene.apache.org/solr/ 2.目录结构如下 3.启动solr(默认使用jetty部署) 在path路径下将 bin文件夹对应的目录加入,然后输入 solr start(或者 solr start -p port,指定端口启动&am…

Maven中安装本地Jar包到仓库中或将本地jar包上传

摘要 maven install 本地jar命令格式 mvn install:install-file -DgroupId<group_name> -DartifactId<artifact_name> -Dversion<version_no> -Dfile<path_of_the_local_jar> -Dpackagingjar -DgeneratePomtrue 示例 mvn install:install-file -Dgroup…

二维码登录原理及生成与解析

一、前言 这几天在研究二维码的扫码登录。初来乍到&#xff0c;还有好多东西不懂。在网上看到有人写了一些通过QRCode或者Zxing实现二维码的生成和解码。一时兴起&#xff0c;决定自己亲手试一试。本人是通过QRCode实现的&#xff0c;下面具体的说一下。 二、二维码原理 基础知…

knockout+echarts实现图表展示

一、需要学习的知识 knockout, require, director, echarts, jquery。简单的入一下门&#xff0c;网上的资料很多&#xff0c;最直接就是进官网校习。 二、效果展示 三、require的配置 require.config.js中可以配置我们的自定义模块的加载。 require.config({baseUrl: ".&…

Maven在Eclipse中的实用小技巧

前言 我们在开发的工程中很多都是Maven项目&#xff0c;这样更加便于我们jar包的管理。而我们一般使用的IDE都是Eclipse&#xff0c;由于我们在日常的开发过程中会经常要用到一些Maven的操作&#xff0c;所以我今天主要跟大家分享一下我们在日常开发中的Maven实用小知识&#x…

React中使用Ant Table组件

一、Ant Design of React http://ant.design/docs/react/introduce 二、建立webpack工程 webpackreact demo下载 项目的启动&#xff0c;参考 三、简单配置 1.工程下载下来之后&#xff0c;在src目录下新建目录“table”&#xff0c;新建app.js&#xff0c;内容如下。 import R…

解决“Dynamic Web Module 3.0 requires Java 1.6 or newer.”错误

一、问题描述 1.错误截图如下。 2.设计的问题 在Eclipse中新建了一个Maven工程, 然后更改JDK版本为1.6, 结果每次使用Maven > Update project的时候JDK版本都恢复成1.5。 二、原因分析 Maven官方文档有如下描述&#xff1a; 编译器插件用来编译项目的源文件.从3.0版本开始, …

java自定义注解类

一、前言 今天阅读帆哥代码的时候&#xff0c;看到了之前没有见过的新东西, 比如java自定义注解类&#xff0c;如何获取注解&#xff0c;如何反射内部类&#xff0c;this$0是什么意思? 于是乎&#xff0c;学习并整理了一下。 二、代码示例 import java.lang.annotation.Elemen…

解决cookie跨域访问

一、前言 随着项目模块越来越多&#xff0c;很多模块现在都是独立部署。模块之间的交流有时可能会通过cookie来完成。比如说门户和应用&#xff0c;分别部署在不同的机器或者web容器中&#xff0c;假如用户登陆之后会在浏览器客户端写入cookie&#xff08;记录着用户上下文信息…

React使用antd Table生成层级多选组件

一、需求 用户对不同的应用需要有不同的权限&#xff0c;用户一般和角色关联在一起&#xff0c;新建角色的时候会选择该角色对应的应用&#xff0c;然后对应用分配权限。于是写了一种实现的方式。首先应用是一个二级树&#xff0c;一级表示的是应用分组&#xff0c;二级表示的是…

junit4进行单元测试

一、前言 提供服务的时候&#xff0c;为了保证服务的正确性&#xff0c;有时候需要编写测试类验证其正确性和可用性。以前的做法都是自己简单写一个控制层&#xff0c;然后在控制层里调用服务并测试&#xff0c;这样做虽然能够达到测试的目的&#xff0c;但是太不专业了。还是老…

快速搭建springmvc+spring data jpa工程

一、前言 这里简单讲述一下如何快速使用springmvc和spring data jpa搭建后台开发工程&#xff0c;并提供了一个简单的demo作为参考。 二、创建maven工程 http://www.cnblogs.com/hujunzheng/p/5450255.html 三、配置文件说明 1.application.properties jdbc.drivercom.mysql.jd…

dubbo服务提供与消费

一、前言 项目中用到了Dubbo&#xff0c;临时抱大腿&#xff0c;学习了dubbo的简单实用方法。现在就来总结一下dubbo如何提供服务&#xff0c;如何消费服务&#xff0c;并做了一个简单的demo作为参考。 二、Dubbo是什么 Dubbo是一个分布式服务框架&#xff0c;致力于提供高性能…

git亲测命令

一、Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream branch_name origin/branch_name 或者 git branch branch_name git branch --set-upstream-toorigin/branch_name branch_name 二、查看本地分支所关…

mysql 7下载安装及问题解决

mysql 7安装及问题解决 一、mysql下载 下载地址&#xff1a;https://www.mysql.com/downloads/Community (GPL) DownloadsMySQL Community Server (GPL)Windows (x86, 64-bit), ZIP ArchiveNo thanks, just start my download.二、mysql安装 解压到指定目录在mysql bin目录下打…

RestTemplate发送请求并携带header信息

1、使用restTemplate的postForObject方法 注&#xff1a;目前没有发现发送携带header信息的getForObject方法。 HttpHeaders headers new HttpHeaders(); Enumeration<String> headerNames request.getHeaderNames(); while (headerNames.hasMoreElements()) {String k…

工作中常用到的命令

linux zip 和 unzip http://blog.csdn.net/shenyunsese/article/details/17556089 linux 查看日志 http://blog.chinaunix.net/uid-15463753-id-2943532.html linux 删除 http://www.jb51.net/LINUXjishu/179430.html linux查看末尾日志&#xff08;tail -f&#xff09; http:/…

tomcat开发远程调试端口以及利用eclipse进行远程调试

一、tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里&#xff1a;   SET CATALINA_OPTS-server -Xdebug -Xnoagent -Djava.compilerNONE -Xrunjdwp:transportdt_socket,servery,suspendn,address8899   Linux系统 在catalina.sh里&#xff1a;   CATALINA_OPTS&q…

webpack+react+redux+es6开发模式

一、预备知识 node, npm, react, redux, es6, webpack 二、学习资源 ECMAScript 6入门 React和Redux的连接react-redux Redux 入门教程 redux middleware 详解 Redux研究 React 入门实例教程 webpack学习demo NPM 使用介绍 三、工程搭建 之前有写过 webpackreactes6开发模式…

fiddler发送post请求

1.指定为 post 请求&#xff0c;输入 url Content-Type: application/x-www-form-urlencoded;charsetutf-8 request body中的参数格式&#xff1a;userNameadminicxp&userPassword123qwe!# 这种方式可以用 request.getParameter的方式来获得。 2.指定为 post 请求&#xff…