python【1】-基础知识

1.简介

python是一种解释性的、面向对象的、带有动态语义的高级程序设计语言。

廖雪峰网站:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000

下载python:https://www.python.org/downloads/

交互式python解释器:IDLE

python是通过缩进来组织代码段的,而不像c#中的大括号。一般推荐使用四个空格作为缩进。

2.表达式

除法:

默认情况下,一个整数除以另一个整数,结果仍然为整数:1/2 =0

如果其中一个数是浮点数,那么结果就是浮点数。

1.0/2 =>0.5

1/2.0=>0.5

1/2. =>0.5

双斜线:使用双斜线即使参数是浮点数,结果也会是整除。

1.0//2=》0.0

幂运算:

2**3=>8

-2**3=>-8

获取用户输入:input(str)方法。

>>> x=input(‘x=‘)
x=5
>>> y=input(‘y=‘)
y=6
>>> print x*y
30

3.函数

幂函数:pow(2,3)=>8

绝对值:abs(-10)=>10

四舍五入:round(0.4)=>0.0      round(0.6)=>1.0

4.模块

可以使用import命令导入特殊的模块来增强功能。

例如:

import math

math.floor(1.9)

=>1.0

cmath和复数:

>>> import cmath
>>> cmath.sqrt(-1)
1j

python本身是支持复数计算的:

>>> (1+2j)+(3+4j)
(4+6j)
>>> (1+2j)-(3+4j)
(-2-2j)
>>> (1+2j)*(3+4j)
(-5+10j)

5.保存和执行

python保存为.py为后缀的文件

6.注释

用#井号表示注释,井号右侧的内容不会被解释。

7.字符串

字符串可以使用单引号或者双引号,如果中间字符串内容也包括引号,那么可以使用转义字符。

>>> "let‘s say \"hello world\""
‘let\‘s say "hello world"‘

拼接字符串使用加号:

>>> x=‘a‘
>>> y=‘b‘
>>> x+y
‘ab‘

字符串表示:str和repr

  • str:把值转换为合理的字符串形式,便于用户理解;
  • repr:把值转换为合理的python表达式的形式。

>>> x="hello world";
>>> print str(x)
hello world
>>> print repr(x)
‘hello world‘
>>> y=10000L
>>> print str(y)
10000
>>> print repr(y)
10000L

input 与raw_input

  • input 会假设用户输入的是合法的python表达式,在下面的例子中只有输入字符串时才会执行成功。
  • raw_input会把输入作为原始数据,然后将其放入到字符串中。

一般情况下,建议使用raw_input.

#使用Input

>>> name=input(‘your name?‘)
your name?chenjing
Traceback (most recent call last):
  File "<pyshell#19>", line 1, in <module>
    name=input(‘your name?‘)
  File "<string>", line 1, in <module>
NameError: name ‘chenjing‘ is not defined
>>> name=input(‘your name?‘)
your name?‘chenjing‘
>>> print ‘hello‘+name
hellochenjing

#使用raw_input

>>> name=raw_input(‘your name?‘)
your name?chenjing
>>> print ‘hello ‘+name
hello chenjing

注意raw_input是以字符串形式返回,如果想要整型需要使用int()进行类型转换。例如:

birth=int(raw_input(‘your birth‘))
if(birth<2000):
  print ‘before 00‘
else:
  print ‘after 00‘

长字符串

如果比较长的字符串需要跨行,那么可以使用三个引号,而且其中的引号也不必再使用转义字符了。

>>> str=‘‘‘hello world
hello ‘cathy‘
hello chenjing‘‘‘
>>> print str
hello world
hello ‘cathy‘
hello chenjing

原始字符串

原始字符串以r开头,原始字符串不会把反斜线作为特殊字符处理,在原始字符串输入的每个字符都会直接保持一致输出,不过原始字符串不能以反斜线结尾。

c:\program files
>>> print r‘c:\newfile‘
c:\newfile

字符串编码

ASCII编码是1个字节,而Unicode编码通常是2个字节。

UTF-8编码:可变长编码。把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节

在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。

Python支持ASCII编码,通过ord()和chr()函数,可以把字母和对应的数字相互转换。

print ord(‘A‘) >>>65
print chr(65) >>>A

Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u‘...‘表示

u‘测试‘

想转换为utf-8需要encode(‘utf-8‘)方法

u‘测试‘.encode(‘utf-8‘)

字符串格式化

还可以指定是否补位0,以及小数位数

如果字符串中包含%,则使用两个百分号代替%%

8.时间和日期

Python内置的datetime模块提供了datetime,date,time等常用时间类型。

  • date()和time()方法可以分别提取日期和时间;
  • strftime()方法用于将时间格式化为字符串;
  • strptime()方法用于将字符串转换为日期格式;
  • 两个时间相减可以获得delta类型的时间差。

# -*- coding: cp936 -*-

from datetime import datetime,date,time

dt=datetime(2016,5,23,14,40,0)

print(dt.day)#23

print(dt.hour)#14

print(dt.date())#2016-05-23

print(dt.time())#14:40:00

#格式化字符串

print(dt.strftime("%Y-%m-%d %H:%M"))#2016-05-23 14:40

#字符串转换为时间

dt=datetime.strptime(‘201605231440‘,‘%Y%m%d%H%M‘)

print(dt) #2016-05-23 14:40:00

#时间差

dt1=datetime(2016,5,23,14,40)

dt2=datetime(2016,5,1)

delta=dt1-dt2

print(type(delta))#<type ‘datetime.timedelta‘>

print(delta)#22 days, 14:40:00

print(dt+delta)#2016-06-15 05:20:00

时间: 2024-10-10 00:22:55

python【1】-基础知识的相关文章

Python入门基础知识实例,值得收藏!

7月的编程语言指数榜已经发布,Python 在今年5月首次超越 Java 拿下榜首位置后,仍保持上涨趋势,正逐渐与 Java 拉开差距.(图为与去年 7 月数据对比) 上周为大家简单介绍了如何安装Python和配置环境?相信大家都将Python安装成功了吧~今天小白就为大家分享一些Python的基础知识,希望大家都能快速入门Python~ 1.在Python 语言中,对象是通过引用传递的. 在赋值时,不管这个对象是新创建的,还是一个已经存在的,都是将该对象的引用(并不是值)赋值给变量. 如:x=

VII python(1)基础知识

VII Python(1)基础知识 1989年诞生(同LinuxOS),google推崇,06年后才开始在中国流行,08年运维开始使用python www.python.org(主流OS默认配的python为2.6或2.7,最好在Ubuntu12.10上使用python,对于开发很方便,否则会浪费很多时间在装某一软件包) https://www.python.org/ftp/python/ Python(简单.容易上手.语法非常简明,任何功能都可实现:胶水语言,粘合剂,能与任何语言结合起来(如j

Python 面向对象基础知识

面向对象基础知识 1.什么是面向对象编程? - 以前使用函数 - 类 + 对象 2.什么是类什么是对象,又有什么关系? class 类: def 函数1(): pass def 函数2(): pass # obj是对象,实例化的过程 obj = 类() obj.函数1() ========== 面向对象不好 ============ ========== 函数编程好 ============== - 有时候,函数编程能实现?比较麻烦. - 面向对象非常的简单就能实现. 3.什么时候适用面向对象?

Python爬虫基础知识及前期准备

学习爬虫有一小段时间了,于是决定把自己学爬虫时所学的,写过的代码以及看过的文档记录下来,权当小结.第一次写这些,如果有错误,请多指教. 首先我们需要了解一下什么是爬虫. 根据百度百科上给出的定义," 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本."简单来说,爬虫类似手动下载网页信息,比如小说.歌曲.说到这,或许会有疑问,既然这样,干嘛还去敲代码,直接人工处理不好吗?话是这么说,但如果下载的

10分钟学会Python函数基础知识

看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行.Python中的函数在其他语言中也叫做过程或子例程,那么这些被包装起来的语句通过一个函数名称来调用. 有了函数,我们可以在很大程度上减少复制及粘贴代码的次数了(相信很多人在刚开始时都有这样的体验).我们可以把相同的代码可以提炼出来做成一个函数,在需要的地方只需要调用即可.那么,这样就提高了代码的

10分钟学会 Python 函数基础知识

一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行.Python中的函数在其他语言中也叫做过程或子例程,那么这些被包装起来的语句通过一个函数名称来调用. 有了函数,我们可以在很大程度上减少复制及粘贴代码的次数了(相信很多人在刚开始时都有这样的体验).我们可以把相同的代码可以提炼出来做成一个函数,在需要的地方只需要调用即可.那么,这样就提高了代码的复用率了,整体代码看起来比较简练,没有那么臃肿了. 函数在Python中是最基本的程序结构,用来最大化地

python学习-基础知识-1

1.计算机历史 计算机使用高低电压的两种状态来描述信息.计算机可以理解的只有二进制数据即010100011....,1个比特位可以表示的状态只有2种,n个比特位可以表示的状态有2的n次方种. 所以如果想要描述天气状态:天晴.下雨.刮风.下雪.霜冻,则需要使用3个比特位. 2.编程语言历史 计算机只能理解二进制数据,二进制数据中蕴含了很多指令.操作.数据,计算机通过cpu直接运行二进制代码执行不同的功能,二进制代码被称为机器语言. 但是机器语言(二进制代码)对于人类而言可读性太差.编写太困难,所以

教你快速学会 Python 函数基础知识

一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行.Python中的函数在其他语言中也叫做过程或子例程,那么这些被包装起来的语句通过一个函数名称来调用. 有了函数,我们可以在很大程度上减少复制及粘贴代码的次数了(相信很多人在刚开始时都有这样的体验).我们可以把相同的代码可以提炼出来做成一个函数,在需要的地方只需要调用即可.那么,这样就提高了代码的复用率了,整体代码看起来比较简练,没有那么臃肿了. 函数在Python中是最基本的程序结构,用来最大化地

python — 函数基础知识(一)

目录 1 面向过程编程与函数式编程 2 函数的基本结构 3 函数的参数 1 面向过程编程与函数式编程 截至目前我们所接触.所写的编程为:面向过程式编程[可读性差/可重用性差] # 面向过程编程 user_input = input('请输入角色:') if user_input == '管理员': import smtplib from email.mime.text import MIMEText from email.utils import formataddr msg = MIMETex

python小白基础知识1

1,python历史    宏观上:python2 与 python3 区别:        python2 源码不标准,混乱,重复代码太多,        python3 统一 标准,去除重复代码. 2,python的环境    编译型:一次性将所有程序编译成二进制文件.        缺点:开发效率低,不能跨平台.        优点:运行速度快.        :C,C++等等.        解释型:当程序执行时,一行一行的解释.        优点:开发效率高,可以跨平台.