Python之基础

本文围绕Python展开,介绍了输入输出,详细讲解了数据类型,包括变量命名规则、整数、浮点数、字符串、布尔值、空值等,还阐述了动态和静态语言的区别。此外,对列表、元组和字典三种常用数据结构的创建、增删改查操作进行了说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

输出

print('hello, world')

输出多个字符串,逗号变成空格输出

print('The quick brown fox', 'jumps over', 'the lazy dog')
       The quick brown fox jumps over the lazy dog

字符串和空格一起输出

a = 1
b = 2
print('a+b=',a+b)

"D:\Program Files\Python\Python36\python.exe" E:/PythonLearn/ProcessTest/basicgrammer/jichu.py
hello, world
The quick brown fox jumps over the lazy dog
a+b= 3

输入

name = input('请输入你的名字:')
print('你的名字是:'+name)

控制台

"D:\Program Files\Python\Python36\python.exe" E:/PythonLearn/ProcessTest/basicgrammer/jichu.py
请输入你的名字:basic
你的名字是:basic

数据类型

变量的命名与使用

  • 变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打
    头,例如,可将变量命名为message_1,但不能将其命名为1_message。
  • 变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message
    可行,但变量名greeting message会引发错误。
  • 不要讲关键字和函数名作为变量名。
  • 变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length
    比length_of_persons_name好。

整数,浮点数

Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。

计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等。

浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。

整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

字符串

字符串是以单引号’或双引号"括起来的任意文本,比如’abc’,"xyz"等等。

如果 本身也是一个字符串,那就可以用 “” 括起来。

如果一个字符串里面既包含单引号(’),也包含双引号("),那就可以用转义字符(/)来标识
比如

str = 'I\'m \"OK\" '

print(str)

控制台输出

"D:\Program Files\Python\Python36\python.exe" E:/PythonLearn/ProcessTest/basicgrammer/jichu.py
I'm "OK" 

同时,python中还可以用r’‘表示’'内部字符串默认不转义

如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,Python允许用’’’…’’'的格式表示多行内容

print('''line1
... line2
... line3''')
line1
line2
line3

如果写成程序并存为.py文件,就是:

print('''line1
line2
line3''')
修改字符串的大小写

str.title():将str首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。

name = "ada lovelace"
print(name.title())		#输出:Ada Lovelace

str.upper():将str转换为大写
str.lower():将str转换为小写

name = "Ada Lovelace"
print(name.upper())		#将输出ADA LOVELACE
print(name.lower())		#将输出ada lovelace
2.3.2 拼接字符串

Python使用加号( + )来合并字符串

first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name
print(full_name)	#输出	ada lovelace
2.3.3 使用制表符或换行符来添加空白

使用制表符和换行符

2.3.4 使用方法strip()来删除空白

使用rstrip()去除字符串右边的空格
在这里插入图片描述
在这里插入图片描述
使用lstrip()去除左边的空格,使用strip()去除两边的空格。
在这里插入图片描述

布尔值

布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(请注意大小写),也可以通过布尔运算计算出来:

Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03) [MSC v.1900 64 bit (AMD64)] on win32
True
True
3>2
True
3>5
False
if(0):
    print('0是True')
else:
    print('0是False')

输出

"D:\Program Files\Python\Python36\python.exe" E:/PythonLearn/ProcessTest/basicgrammer/jichu.py
0是False

空值(None)

空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

动态语言

变量本身类型不固定的语言称之为动态语言。

静态语言

静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言

列表(list)

list是一种有序的集合,可以随时添加和删除其中的元素。

列表的命名一般是一个表示复数的名称(如 letters 、 digits 或 names )

创建一个列表
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
查看list中的元素个数
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
>>>len(list1)
4
>>>len(list2)
5

用索引来访问list中的每一个位置的元素,索引从0开始(查)

>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']
>>> classmates[0]
'Michael'
>>> classmates[1]
'Bob'
>>> classmates[2]
'Tracy'

//当索引超出范围时,会报出IndexError的错误
>>> classmates[3]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

如果要取最后一个元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素:

>>> classmates[-1]
'Tracy'

以此类推,可以获取倒数第2个、倒数第3个:

>>> classmates[-2]
'Bob'
>>> classmates[-3]
'Michael'
>>> classmates[-4]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range
往list中添加数据(增)
1.将元素插入到指定位置

使用insert(index,object)将’Jack’插入到classmates的第二个位置(索引号为1)

>>> classmates.insert(1, 'Jack')
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy']
2.使用 append(object) 函数往list中追加元素到末尾

将Adam追加到classmates末尾

>>> classmates.append('Adam')
>>> classmates
['Michael', 'jack', 'Bob', 'Tracy', 'Adam']
删除list中的元素(删)
1 使用 pop() 函数删除list末尾的元素

删除classmates末尾的’Adam’

>>> classmates.pop()
'Adam'
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy']
2 使用 pop(index) 删除指定位置的元素

删除classmates索引位为1的元素’Jack’

>>> classmates.pop(1)
'Jack'
>>> classmates
['Michael', 'Bob', 'Tracy']
修改list中的元素(改)

根据索引号修改指定元素

>>> classmates[1] = 'Sarah'
>>> classmates
['Michael', 'Sarah', 'Tracy']
关于list中的元素

list里面的元素的数据类型也可以不同,比如:

 L = ['Apple', 123, True]

list中的元素也可以是另外一个list

>>> s = ['python', 'java', L, 'scheme']
>>> len(s)
4
>>> s
['python', 'java', ['Apple', 123, True], 'scheme']

此时,拿到Apple的值索引位s[2][0]

元组(tuple)

元组(tuple)也是一种 有序列表,与list十分相似,但是tuple一旦初始化就不能修改了。

定义一个tuple
>>> classmates = ('Michael', 'Bob', 'Tracy')

现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但不能赋值成另外的元素。也就是只能查了。

tuple陷阱

当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来,如果要定义一个空的tuple,可以写成():

>>> t = ()
>>> t
()

但是,要定义一个只有1个元素的tuple,如果你这么定义:

>>> t = (1)
>>> t
1

定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。

所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:

>>> t = (1,)
>>> t
(1,)

Python在显示只有1个元素的tuple时,也会加一个逗号,,以免你误解成数学计算意义上的括号。

字典(dict)

字典是一个键值对表

创建字典

>>> person_0 = {'name':'basic','age':24,'height':172.3}
>>> person_0
{'name': 'basic', 'age': 24, 'height': 172.3}

遍历字典

user_0 = {
'username': 'efermi',
'first': 'enrico',
'last': 'fermi',
}
for key, value in user_0.items():	#dict.items()返回一个键值对列表
	print("\nKey: " + key)
	print("Value: " + value)

遍历字典中所有的

favorite_languages = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
for name in favorite_languages.keys():
	print(name.title())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值