1,安装文本编辑器geany
yum install geany
1.2.打印hello world
message = "Hello Python world!"
print(message)
message = "Hello Python Crash Course World!"
print(message)
2. 字符串
2.1使用字符串修改大小写
title() 以首字母大写的方式显示每个单词,即将每个单词的首字母改为大写
upper() 将字符串大写
lower() 将字符串小写
[root@kubernetes /python]# cat hello_world.py
name = "ada lovelace"
print(name.title())
print(name.upper())
print(name.lower())
[root@kubernetes /python]# python hello_world.py
Ada Lovelace
ADA LOVELACE
ada lovelace
>>> name.center(50,"-")
'-----------------------nis------------------------'
2.2 合并拼接字符串
很多情况下需要两个字符串一起使用
first_name = "wan"
last_name = "chaopeng"
full_name = first_name + " " + last_name
print(full_name)
[root@kubernetes /python]# python name.py
wan chaopeng
使用(+)号拼接字符串,称为拼接
message = "wan"
last_name = "chaopeng"
full_name = message + " " + last_name
print("Hello, " + full_name.title() +"!")
结果
[root@kubernetes /python]# python name.py
Hello, Wan Chaopeng!
可通过拼接来创建消息,再把整条消息存放在变量中
[root@kubernetes /python]# cat name.py
first_name = "wan"
last_name = "chaopeng"
full_name = first_name + " " + last_name
message = "Hello, " + full_name.title() +"!"
print (message)
结果
[root@kubernetes /python]# python name.py
Hello, Wan Chaopeng!
2.3 使用制表符或空白符来添加空白
在编程中,空白泛指任何非打印字符,如空格,制表符和换行符,可使用空白来阻止输出
(\t)制表符
>>> print ("\tPython")
Python
(\n)换行符
>>> print ("\nPython")
Python
同一个字符串中同时包含制表符和换行符。字符串"\n\t"让python换到下一行,并在下一行开头添加一个制表符,
>>> print ("Languages:\n\tPython\n\tC\n\tJavaScript")
Languages:
Python
C
JavaScript
2.4 删除空白
在程序中,额外的空白令人迷惑,'python'和‘python ’看起来一样,但是对程序来说就是两个字符,python能发现额外的空白并认为是有意义的
空白非常重要,以为经常需要比较两个字符串是否相同,python能轻易删除数据的多余空白,
可使用rstr()来确保字符串末尾没有空白
>>> favorite_language = 'python '
>>> favorite_language
'python '
>>> favorite_language.rstrip()
'python'
>>> favorite_language
'python '
存储在变量favorite_language中的字符串末尾包含多余的空白,在终端会话中向python询问这个变量值,可看到末尾的空格,对变量favorite_language调用方法restrip()后,这个多余的空格被删除了,然而这种删除只是暂时的,接下来再询问favorite_language的值时,这个字符串和输入时一样,依然包含多余空白
要永久删除字符串中的空白,必须将删除操作返回到变量中
>>> favorite_language = "python "
>>> favorite_language
'python '
>>> favorite_language = favorite_language.rstrip()
>>> favorite_language
'python'
为删除这个字符串中的空白,你需要将其末尾的空白剔除,再将结果返回到变量中,在程序中,经常需要修改变量的值,将新值存回到原来的变量中,这就是变量的值可能随编程的运行货用户输入数据而发生变化的原因
可以删除字符串开头的空白,同时剔除字符串两端的空白,分别使用lstrip()和strip();
>>> favorite_language = ' python '
>>> favorite_language.rstrip()
' python'
>>> favorite_language.lstrip()
'python '
>>> favorite_language.strip()
'python'
2.5 使用字符串时,避免语法错误
语法错误 是一种是不是会遇到的错误。程序中包含非法的python的代码时,就会导致语法错误,例如,在用单引号括起的字符串中,如果包含撇号,就会导致错误,因为会导致python将第一个单引号和撇号之间的内容视为一个字符串,进而将余下的文本视为python代码,从而引发错误
正确使用单引号和双引号
message = "One of Python's strengths is its diveres community."
print (message)
撇号位于引号之间,因此python能正确理解这个字符串
[root@kubernetes /python]# python apostophe.py
One of Python's strengths is its diveres community.
当使用单引号时,python无法正确确定结束位置
message = 'One of Python's strengths is its diveres community.'
print (message)
[root@kubernetes /python]# python apostophe.py
File "apostophe.py", line 1
message = 'One of Python's strengths is its diveres community.'
^
SyntaxError: invalid syntax
错误发生在第二个单引号后面,语法错误表明,在解释器看来,其中有些内容不是有效的python代码。
注意 编写程序时,编辑器的语法突出功能可帮助你快速炸出某些语法错误,看到python 代码以普通句子的颜色显示,或者普通句子以python代码的颜色显示时,就可能意味着文件中存在引号不匹配的情况
2.6 python2中的print语法
在puthon2中,print语句的语法稍有不同
>>> print "Hello Python 2.7 world!"
Hello Python 2.7 world!
在python2中,无需将要打印的内容放到括号内。从技术上说,python3中的print是一个函数,因此括号必不可少,有些python2 print语句也包含括号,但其行为与python3中稍有不同,python2代码中,有些print语句包含括号,有些不包含
2.7 变量的使用规则
程序时从上到下依次执行的,故变量必须先定义,后调用
2.8 数字类型
2.8.1 int(整数)
>>> age_chao = 26
>>> age_chaopeng = 50000000000
>>> type(age_chao),type(age_chaopeng)
(<class 'int'>, <class 'int'>)
2.8.2 float(浮点型) #小数
>>> age_nis = 3.1234
>>> type(age_nis)
<class 'float'>
>>> type(-3.12)
<class 'float'>
2.8.3 字符串
加了引号的字符都被认为是字符串
单双引号没有区别,三引号是换行用
>>> msg = """my name is nis
... i am 26 year old
... i am from
... """
>>> msg
'my name is nis \ni am 26 year old\ni am from \n'
>>> print (msg)
my name is nis
i am 26 year old
i am from
>>> type(msg)
<class 'str'>
2.8.4 布尔类型
有两个值,一个是True(真),一个是False(假)主要用作逻辑判断
2.8.5 列表
如果用字符串存比较方便,但单独取时候不方便
元素添加
元素添加有2种方式,插入和追加,插入是指可以把一个新的元素插入到列表的任意位置
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige']
>>> names.insert(6,"chao")
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige', 'chao']
追加 #添加到列表的尾部
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige', 'chao']
>>> names.append("chaopeng")
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige', 'chao', 'chaopeng']
删除元素 #有两种凡是,一个是下标删除,一个是元素值删除
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige', 'chao', 'chaopeng']
>>> del names[6]
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige', 'chaopeng']
>>> names.remove("chaopeng")
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige']
>>>del names[-1]
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis']
>>> name
['wanchaopeng', 'yangyongkang', '4', '5']
>>> name.pop() #pop删除最后一个
'5'
>>> name
['wanchaopeng', 'yangyongkang', '4']
修改列表
>>> name
['nis', 'lixiaodong', '3', '4', 'wanchaopeng']
>>> name[-2]
'4'
>>> name[-2] = "lichaoyang"
>>> name
['nis', 'lixiaodong', '3', 'lichaoyang', 'wanchaopeng']
查看元素是否在列表里
>>> names
['wanchaopeng', 'liguicheng', 'xuhe', 'zhangfuhang', 'nis', 'shuaige']
>>> "liguicheng" in names
True
>>> name.index("lixiaodong") #查看元素下标并返回
1
命令嵌套删除
>>> del name[name.index("lixiaodong")]
>>> name
['nis', '3', 'lichaoyang', 'wanchaopeng']
2.9运算符
2.9.1 算术运算
>>> 9%2 #不可整除返回1
1
>>> 10%2 #可整除返回0
0
2.9.2比较运算符
2.9.3 赋值运算
>>> a=1
>>> a += b
>>> b=2
>>> a +=b
>>> b
2
>>> a
3
2.9.4l逻辑运算
>>> a > 2 or b < 3 and c < 10
True
>>> a < b
True
>>> not a < b
False
2.9.5成员运算
2.10 读取用户指令
2.10.1 input
input 方法接收到的所有数据 都以字符串的格式处理
命令行输入
>>> name = input("输入你的名字:")
输入你的名字:nis
>>> name
'nis'
读取用户指令
name = input("name:")
age = input ("age:")
hometown = input ("hometown:")
hobbie = input("hobbie:")
print(name)
print(age)
print(hometown)
print(hobbie)
数字类型和字符串互换
n1 = input("num 1:")
n2 = input("num 2:")
#input读的值都是字符串,即时输入的是一个数字
#把字符串转成数字 '10' int '10'
# 数字转int, str(10)
print(type(n1),type(n2))
n3 = int(n1) * int(n2)
print(str(n3))
print(type(n3))
2.11格式化打印
%s 是代表字符串
%d 整数
%f 浮点数
例子:
name = input("name:")
age = int(input ("age:"))
hometown = float(input ("height:"))
hobbie = input("hobbie:")
msg = """
--------------Personal Info---------------
Name : %s
Age : %d
Height : %f
Hobbie : %s
----------------End-----------------------
"""%(name,age,hometown,hobbie)
print(msg)
2.12 多分支
if 条件:
满足条件执行代码
elif 条件:
满足条件执行代码,前提是上一层的if条件不满足
elif 条件:
满足条件执行代码,前提是上一层的if条件不满足
elif 条件:
满足条件执行代码,前提是上一层的if条件不满足
else:
上面条件都不满足就走这段
示例:
判断学生分数打印评价
achievement = int(input("please input you achievement:"))
if achievement > 100:
print("please input 0-100")
elif achievement >= 90:
print("A")
elif achievement >= 80:
print("B")
elif achievement >= 60:
print("C")
elif achievement >= 40:
print("D")
elif achievement <= 0:
print("E")
else:
print("please input 0-100")