学习python开始第一个程序hello,world
- python安装本博主已经是老鸟了,windows 环境运行。
- 这里已经安装好的python环境,WIN+R 输入CMD 在CMD窗口输入python 回车,进入到PYTHON 解释器,直接输入print 'hello,world' 这是python2版本的语法,如果是python3版本:print ('hello,world')这里“引号”可以为单引号也可以为双引号。再多说一句print ('hello,world') 也可以用在python2版本中
- liunx 系统运行python,我的liunx 系统是centos7.0默认的python环境是2.7.5 版本。
- [root@zbx ~]# python
Python 2.7.5 (default, Nov 6 2016, 00:28:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>print ("hello,world")
hello,world - 写一个文件的话这里可以用vim编辑器,vim hello.py
- 内容为 :
#!/usr/bin/python #-*- coding:utf-8 -*- print "hello,world"
代码输入完成之后保存按Esc 再按:wq
chmod +x hello.py 增加执行权限 ./hello.py ,另外的不需要增加权限的运行程序命令为 python hello.py
- 代码内容注释用法
# 号是单行注释 """ 多行注释用三引号 """
#!/usr/bin/python #-*- coding:utf-8 -*- print "hello,world" """ 今天是第一次学python 我相信我肯定能学好 给自己加油'亚麻跌' """ ~
- 代码篇
#!/usr/bin/python
#!/usr/bin/env python
以上两种是制定PYTHON 解释器的方法 #-*- coding:utf-8 -*- import getpass name = raw_input("plase into your username: ") passw = getpass.getpass("password: ") print (name) print (passw)
#getpass模块用来隐藏自己输入的密码字符。
#raw_input是等待接受 用户输入的内容赋值给变量name,用于跟用户交互
在python2.7之前版本中用户跟用户交互的使用的raw_input,在python3和python2.7版本中都可以使用input
#!/usr/bin/python #-*- coding:utf-8 -*-
import getpass name = input("plase into your username: ")
passw = getpass.getpass("password: ")
print (name) print (passw)
- 变量名的组成
变量名由:数字,字符串,下划线组成。比如name,name_test123,name_test
不能以数字开头,不能用python内部的使用的变量名,区分大小写。
命名规则
1.命名规则:只能使用字母或者下划线开头,后面跟着一个或者多个字母或者数字。不能使用python的保留字(关键字)作为变量名称。
保留字有:and, as, assert, break, class, continue, def, del, elif, else, except, exec, False, finally, for, from, global, if, import, in, is, lambda, not, None, or, pass, print, raise, return, try, True, while, with, yield 共24个。
2.变量类型:除了字符串和数值之外,python还提供了另外4中变量类型:元组,列表,集合和字典。
这4个类型的特点是都允许在同一个名称下组织多个数据实例,这些数据实例是通过[],(),{}来组织的。值得注意的是,在python中[],(),{}的意义是大大不同的。
3.元组变量:类似于java语言的数组,不同的是元组中元素的类型不一定相同的。使用()来赋值,下标从0开始的,len函数返回该元组大小。
a=("hello","world")
print(a) ---->("hello","world")
print(a[0])--->hello
print(a[len(a)-1])相当于print(a[1])--->world
元组中一个元素也可以是另一元组的引用,这相当于在一个元组中嵌套另一个元组,这相当于二维元组。引用也是在原来的元组后面加上[]和下标号来使用。
b=(a,"others")
print(b)--->(("hello","world"),"others")
print(b[0][0]--->hello
注意,若是要声明一个元素的元组,必须在这个元素后面加上",",否则会当做一个字符串。
c=("others",) //注意逗号的存在
还需要注意的是,元组是不可变的,声明之后就不可更改(重新赋值)。
4.列表变量:也类似于元组,但是列表变量是随时可变的。实例化一组元素时要使用[]来包括,引用方法同元组。
list1=["hello","world"]
print(list[1])--->world
不仅可以修改列表中任意元素,还可以向列表中添加元素,使用内置函数append。
list1.append("others")
print(len(list1))--->3
还可以使用extend添加元组或者其他列表。不同的是,不存在二维列表,添加的元组或者就列表中的每一个元素都会作为一个单独的元素添加到列表中来。
a=["123","456"]
list1.extend(a)
print(len(list1))--->5
可以使用pop函数把不需要的值弹出(即删除)。
5.字典变量:以名称为索引的分组数据。元组和列表是以下标数字作为索引的,而字典则可以使用任意字符或字符串作为索引标志。
字典变量的声明是使用{}来声明的。
可以先声明一个空字典,然后才一一实例化。
direct={}
direct["hello"]="wellcome you"
direct["world"]="this is my honer"
也可以声明和实例化一起:
direct={"hello":"wellcome youe","world":"this is my honer"}
可以使用字典函数keys()来列出所有的索引;使用values()来列出所有的值。
6.其他特殊类型:
None:无论使用了多少次,它只是一个名称,如果函数没有返回值,则默认返回None
True和Falses是数值1和0的表示,常用于比较。这两个内置变量的使用使得判断时显得清晰。
7.字符串的切片功能:在python中能够把字符串当做单个字符的列表来处理,这就是字符串的切片。通过这个功能我们可以访问字符串的任意位置。在姓名索引中以首字母建立字典时非常有用。
name1="Smith"
name_dirct={}
name_dirct[name1[0]]=name1;
print(dirct)---->("S":"Smith")
如果是元组或者列表中使用切片,就是相当于处理二维数组。
8.序列类型:元组和列表是序列类型的两个表现,字典类型不是序列类型,因为它没有从头到尾的顺序。
一般序列类型中从前到后访问是0到len-1,而python还提供了从后到前的访问-1到-len。
name="Smith"
print(name[-len(name)])--->"S"
序列类型还提供了一个序列切片功能。使用":"来指定序列的长度区域。两个区域相减就是新的序列元素个数。
name=("123","456","789","abc")
string=name[1:4]
print(len(string))-->3
print(string)--->("456","789","abc")
9.序列类型的操作:
append:追加元素,注意追加的是另一个序列类型是会在原来的基础上构成二维结构。
extend: 追加元素,和append不同的是,它是把追加的序列类型中的元素一一复制到原序列中,依然是原来的一维结构。
pop:弹出元素